在我的服务器中,我有两个NIC(例如eth0和eth1)。我在centOS 6.3中为两个NIC配置单独的IP,如下所示: 的的ifcfg-eth0的
TYPE=Ethernet BOOTPROTO=none IPADDR=10.1.1.1 PREFIX=27 GATEWAY=10.1.1.10 DNS1=10.1.1.11 DEFROUTE=yes IPV4_FAILURE_FATAL=yes IPV6INIT=no NAME="Auto eth0" UUID=4aa88f11-51ed-46de-9c54-1dd2bbbf286a ONBOOT=yes HWADDR=1c:df:0f:1d:73:23 LAST_CONNECT=1359432400 NETMASK=X.X.X.X DEVICE=eth0 USERCTL=no
的ifcfg-eth1的
TYPE=Ethernet
BOOTPROTO=none
IPADDR=10.1.1.2
PREFIX=28
GATEWAY=10.1.1.10
DNS1=10.1.1.11
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME="Auto eth1"
UUID=4aa88f11-51ed-46de-9c54-1dd2bbbf286a
ONBOOT=yes
HWADDR=1c:df:0f:1d:73:23
LAST_CONNECT=1359432400
NETMASK=X.X.X.X
DEVICE=eth1
USERCTL=no
在这里,我无法一次ping两个IP。只有一个正在运作。 甚至,“ifconfig”显示预期的输出。
答案 0 :(得分:4)
自从CentOS / RHEL6开始(更新的内核)以来,rp_filter设置发生了变化。如需完整解释,请点击以下链接:
http://z-issue.com/wp/linux-rhel-6-centos-6-two-nics-in-the-same-subnet-but-secondary-doesnt-ping/
简而言之,有两种选择:
1)编辑文件“/etc/sysctl.conf”
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.all.rp_filter = 2
编辑后,它应如下所示:
net.ipv4.conf.default.rp_filter = 2
net.ipv4.conf.all.rp_filter = 2
键入
重新加载配置sysctl -p
现在你应该能够ping两个IP
2)第二个选项是使用绑定,但可能需要您的交换机侧配置。我在这里使用802.3ad负载均衡模式接口eth1和eth2
编写示例配置的/ etc / SYSCONFIG /网络的脚本/的ifcfg-bond0
DEVICE=bond0
USERCTL=no
ONBOOT=yes
BOOTPROTO=none
IPADDR=192.168.10.52
NETMASK=255.255.255.0
NETWORK=192.168.10.0
GATEWAY=192.168.10.1
BONDING_OPTS="miimon=100 mode=4"
的/ etc / SYSCONFIG /网络的脚本/的ifcfg-bond0:0
DEVICE=bond0:0
USERCTL=no
ONBOOT=yes
IPADDR=192.168.10.53
NETMASK=255.255.255.0
NETWORK=192.168.10.0
GATEWAY=192.168.10.1
BONDING_OPTS="miimon=100 mode=4"
的/ etc / SYSCONFIG /网络的脚本/的ifcfg-eth1的
DEVICE=eth1
ONBOOT=yes
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
USERCTL=no
的/ etc / SYSCONFIG /网络的脚本/的ifcfg-ETH2
DEVICE=eth2
ONBOOT=yes
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
USERCTL=no
答案 1 :(得分:0)
您已将它们设置在不同的子网上。因此,您必须设置路由以在不同网络之间路由。
检查您的netstat -nr
,看看您的路由表是什么样的。