现在应该很清楚,要将数据发送到同一 LAN 上的其他主机,源主机必须同时知道目的主机的物理地址和逻辑地址。 一旦知道这两个地址,它就可以创建帧并将其发送到网络介质。 源主机可以通过多种方式获知目的 IP 地址。 例如,它可以通过使用域名系统 (DNS) 来获知 IP 地址,或者它可能知道目的 IP 地址,因为该地址是手动输入到应用程序中的,比如当用户指定目的 FTP 服务器的 IP 地址时。 但是主机如何确定另一设备的以太网 MAC 地址?

大多数网络应用程序根据目的设备的逻辑 IP 地址来识别通信主机的位置。 需要使用数据链路 MAC 地址将以太网帧中封装的 IP 数据包通过网络传输到目的地。

发送主机使用地址解析协议 (ARP) 来发现同一本地网络中任何主机的 MAC 地址。 发送主机将 ARP 请求消息发送到整个 LAN 中。 ARP 请求是一个广播消息。 ARP 请求包含目的设备的 IP 地址。 LAN 中的每台设备都会检查 ARP 请求,以确定该请求是否包含自己的 IP 地址。 只有含有 ARP 请求中的 IP 地址的设备才会以一个 ARP 应答作出响应。 ARP 应答包括与 ARP 请求中的 IP 地址相关的 MAC 地址。