网络 - 数据链路层

139 阅读2分钟

ARP协议

同一网段数据传输:

ARP(根据目标 ip 地址找到目标 mac 地址, 广播的形式) -> 交换机 (有记忆功能) 过程

  1. 根据目标ip地址从缓存中找 有没有目标mac地址 没有进行arp广播
  2. 发送 arp 广播 (自己的 ip 和 mac 地址, 目标的 ip 地址, 通过交换机进行广播, 发送到所有机器) 找到目标 ip 的目标 mac 地址, 在同一个网段上广播, 发送到同 一网段的所有机器, 不是对应 ip 地址对 arp 包进行丢弃
  3. 目标机器收到 arp 包, 然后把源 ip 地址和 mac 地址进行缓存, 然后回复 arp 包 (带有源 ip 地址 mac 地址, 目标 ip mac 地址), 利用交换机发送到到源机器
  4. 原机器收到 arp 广播 把目标 ip mac 地址存到缓存中, 然后进行 icmp 报文传 递

不同网段数据传输 (要设置网关 (ip 地址 mac 地址)): 路由器

路由器:利用路由器的网关,把不同网段隔开, 一个网段(192.168.3(网段).10, 192.168.3(网段).10) 对应一个网关 (192.168.3(网段).1)

  1. 发送arp广播(带有自己的ipmac地址, 目标IP地址, 路由器网关ip地址) 找到网关的 mac 地址 (同一网段广播流程, 一来一回)
  2. 然后向网关地址发送icmp(带有自己的ipmac地址, 目标IP地址网关 mac地址)包, 然后路由器选择目标ip地址对应的网关,然后网关在目标网段进行 arp 广播 (源 ip 地址:网关地址, 目标地址就是目标地址), 找到目标机器的mac地址
  3. 找到对应的 mac 地址, 然后网关进行 icmp 包传递, 最后把目标 mac 地址返传给源机器