这个问题之前遇到过一次,结果今天遇到又搞忘之前怎么处理的了,所以记录下来,方便自己看。CentOS6系列算比较老的系统,现在普遍用7系,用8的也不少了,不过还是有少数用户还在6系坚持,本文主要针对站群服务器,一两个或者几个IP的机器也遇不到这种问题。
故障现象
就以一台1个/29+8个/27站群服务器为例,很多商家都有类似机器,比如80VPS、ZJI等。当我们批量绑定好IP之后,发现附加IP不稳定,有些无法ping通及使用,登录到主机系统中ping这些IP提示:
Do you want to ping broadcast? Then -b. If not, check your local firewall rules.
检查IP绑定
先检查附加ip绑定,确认IP绑定是正常的,以网卡eth0,添加附加ip1.2.3.0/27段为例,centos6下绑定一般添加和编辑/etc/sysconfig/network-scripts/ifcfg-eth0-range0文件:
DEVICE=eth0 BOOTPROTO=static IPADDR_START=1.2.3.2 IPADDR_END=1.2.3.30 CLONENUM_START=0 NETMASK=255.255.255.224 ONBOOT=yes
#注:centos6在批量绑定ip上与centos7有很大的不同,此绑定方式仅适用于centos6系列。
查看后发现IP绑定并无异常,但是这一个段的部分IP却无法正常使用,通过ifconfig命令查看IP信息,发现了端倪,这些IP的子网掩码均被检测为255.255.255.248,这时候我们就要检查主ip绑定情况,查看/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 TYPE=Ethernet UUID=f4c750d5-86f5-4a21-903a-435e25685bea ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=none HWADDR=D4:AE:52:BB:A4:C9 IPADDR=5.4.3.2 PREFIX=29 GATEWAY=5.4.3.1 DNS=8.8.8.8 DEFROUTE=yes IPV4_FAILURE_FATAL=yes IPV6INIT=no NAME="System eth0"
以上信息,是我们在centos6系统安装过程中配置好IP自动生成的,安装完成后也是正常访问的,但是却影响了附加IP的生效。
修改方案
这里我们知道附加IP绑定虽然正确,但是检测到的掩码不对,这是由于网卡配置文件中主IP配置写入了PREFIX=29所致,我们可以将这一段改为NETMASK=255.255.255.248(如下图)
之后重启网络:service network restart,这里需要留意的是centos6重启网卡如果IP比较多的话,一个个的IP启动,需要较长时间请耐心等,另外,还是建议大家尽快换成centos7及以上版本吧!