问题的起因
访问内网服务器偶尔会出现连接不上,同样的问题隔三岔五还会出现在不同的服务器上烦不胜烦,黑牙一咬开始
查找原因
// ping
A -> B 单方面连接失败(所有服务无法访问),B ping A 后连接恢复正常,ping的过程中出现地址链被转发修正的情况
很奇怪为什么会链路转发,继续找
//查询网关路由链路(网关是否配置正常,子掩码是否配置一致)
route -n
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.0.1 0.0.0.0 UG 100 0 0 enp10s0
192.168.0.0 0.0.0.0 255.255.0.0 U 100 0 0 enp10s0
都正常
//查询地址映射(B查询链表,对比A的IP与mac在B链表中是否一一对应)
linux
arp -n
长时间大量对比,发现了192.168.26.XXX 这个老六,它把其他服务器的mac修改成自己的mac,导致访问链路不正常,每一次ping都是一次链路的修正,所以ping以下就能访问也解释的通了
由于技术有限物理排查困难重重找到这台老六很难,所以采取了一个不是办法的办法定时链路修正
通过定时器在内网广播自己的mac,让其他服务器更新地址映射
sudo arping -c 1 -s 192.168.6.2 -I enp10s0 192.168.255.255