ARP缓存表过期问题

两台 相同IP地址 的主机A、B和一台IP不同的嵌入式主机C通过局域网络进行通信,A和B不同时连接到交换机/路由器。发现其中任意一台主机先和嵌入式计算机C通讯,然后断开这台主机的物理连接,连上另一台主机到网络,这时候另一台主机和嵌入式主机C之间就会出现嵌入式主机C无法发送数据到后连主机的情况,但是该主机可以发送数据给嵌入式主机C。

这是由于ARP缓存表的问题。由于两台主机A和B的IP相同,但是两台主机的网卡的MAC地址是不一样的,所以主机A发送数据给主机C的时候,嵌入式主机C内部的ARP缓存表中的映射是将主机A的MAC地址和A/B主机的IP地址映射在一起的,这时候再将主机A替换成主机B的话,如果主机B中已经有主机C的ARP映射条目(主机B之前也和嵌入式主机C单独通讯过,所以主机B有嵌入式主机C的ARP缓存。如果主机B没有嵌入式主机C的ARP映射条目,会发送ARP帧进行地址解析,这个过程中嵌入式主机C也会更新ARP地址映射,所以不会出现无法通讯的情况),主机B可以向嵌入式主机C发送数据,但是嵌入式主机C已经有了A/B主机IP地址的ARP映射条目,对应的是主机A的MAC地址,且在一定时间内就不会在发送ARP帧进行地址解析,这时候嵌入式主机C向主机B发送数据就会出现MAC地址不对应,网络数据在数据链路层可能就会被网卡过滤掉。

解决办法就是重启嵌入式主机C的网卡,这样清除ARP缓存表之后就可以重新建立ARP缓存表,恢复正常通信了。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
ARP(Address Resolution Protocol)缓存是一个用于存储IP地址和MAC地址之间对应关系的格,用于网络通信中的地址解析。下面是ARP缓存形成的过程: 1. 主机发送ARP请求:当主机要发送数据包到目标主机时,首先会检查本地的ARP缓存,查找目标主机的MAC地址。如果在ARP缓存中找不到对应的MAC地址,则主机会发送一个ARP请求广播,请求目标主机的MAC地址。 2. ARP广播:主机发送ARP请求广播,其中包含了目标主机的IP地址。广播意味着该请求将被发送到网络上的所有主机。 3. 目标主机响应:接收到ARP请求的目标主机会检查自己的IP地址是否与请求中的目标IP地址匹配。如果匹配,则目标主机会将自己的MAC地址作为ARP响应发送回去。 4. ARP缓存更新:发送ARP请求的主机接收到目标主机的ARP响应后,将目标主机的IP地址和MAC地址添加到自己的ARP缓存中。这样,在未来与目标主机通信时,就可以直接从缓存中获取目标主机的MAC地址,而无需发送新的ARP请求。 需要注意的是,ARP缓存中的条目有一定的生存时间(存活时间),一般为几分钟。如果在缓存中的条目过期后再次与目标主机通信,主机将重新发送ARP请求来获取最新的MAC地址。 总结起来,ARP缓存的形成过程包括发送ARP请求、目标主机响应和更新ARP缓存。通过这个过程,主机可以建立起IP地址和MAC地址之间的对应关系,以实现网络通信。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值