CentOS下多网卡绑定多IP段时导致只有一个会通的问题解决
虚拟机配置多个网络地址,结果同时只能有一个ip是通的,
原因:Linux默认开启了反向路由检查导致的,比如说外面访问eth0的网卡,而网关在eth1上,又或者从eth0出的流量,而网关在eth1上,此时会检查到网关不在同一个网卡上导致出不去,进不来的问题。
解决方法:
关闭反向路由检查,配置如下,写入到/etc/rc.local开机启动执行
#经测试,下面几个文件没有写权限,执行后不生效
bash
echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter
echo 0 > /proc/sys/net/ipv4/conf/eth0/rp_filter
echo 0 > /proc/sys/net/ipv4/conf/eth1/rp_filter
或者写入到/etc/sysctl.conf
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.eth0.rp_filter = 0
net.ipv4.conf.eth1.rp_filter = 0
注意:eth0、eth1是网卡名称,有些Linux操作系统网卡名称是 enp2s0f0、enp2s0f1、enp2s0f2、enp2s0f3等等
#使配置立即生效
bash
sysctl -p