如果遇到这种情况,一般说明你的本地服务器的arp表缓存太大,而服务器内核设定的回收条数太小,一直被回收造成的。
可以用一下命令扩大arp表可以缓存的记录条数:
echo 512 > /proc/sys/net/ipv4/neigh/default/gc_thresh1 echo 2048 > /proc/sys/net/ipv4/neigh/default/gc_thresh2 echo 4096 > /proc/sys/net/ipv4/neigh/default/gc_thresh3
这三个值缺省是128,512,1024,我用arp -an |wc -l 看到自己服务器的arp缓存表竟然有300多条记录,修改完成后马上就好了,最后记得把
这三条写入/etc/rc.local 文件中,每次重启都写入下,不然机器重启就又被还原至缺省值了。
部分参考自:http://junlinux.blog.51cto.com/2521744/1284066