linux服务器多块网卡配置地址以后,使用Traceroute -I X.X.X.X,只能回显第一跳网关以及最终目的地址。
具体原因:
linux内核默认开启反向路由查找,中间网络设备地址因在该linux下无路由,导致RPF反向路由查找失败,将回包丢弃,造成回显*
解决方案:
关闭linux内核的反向路由查找功能(安全性降低)
在/etc/sysctl.conf添加如下配置:
net.ipv4.conf.default.rp_filter =0 //值可变,只关闭单独接口的反向路由查找无需配置该参数
net.ipv4.conf.all.rp_filter =0 //值必须为0
net.ipv4.conf.lo.rp_filter =0 //值可变,只关闭单独接口的反向路由查找无需配置该参数
net.ipv4.conf.ens224.rp_filter =0 //关闭ens224网卡反向路由查找
net.ipv4.conf.ens192.rp_filter =1 //开启ens192网卡反向路由查找
设置完成后重启服务器或者使用/sbin/sysctl -p立即生效