假如A计算机需要发送消息给B,那么A已经知道了B的IP地址。
A首先需要通过自己和B的IP地址和子网掩码进行计算对吧,判断是否在一个同一个子网中。

  1. 如果在同一个子网中,那么需要知道对方的 MAC 地址才能通信。这时有一个网络层协议 ARP ,它进行广播询问 B 的 MAC 地址是多少。B 收到消息后,会将自己的 MAC 地址发送给 A。有了 MAC 地址之后 A 发送消息直接通过 MAC 地址找到 B,不需要通过网关。
  2. 不在一个网段时,A 不需要知道 B 的 MAC 地址,但是需要知道网关的 MAC 地址,网关的 MAC 地址也是通过 ARP 协议获取的。知道网关的 MAC 地址之后,就会发送数据给网关。网关进行转发数据给 B。