Linux VIP(虚拟IP)配置后,无法ping通的问题处理

来源:互联网 发布:c语言输入保留两位小数 编辑:程序博客网 时间:2024/05/23 01:33


    事起于公司装了MQ服务器,想做成手工切换的双机模式,具体要求是虚拟IP,共享存储和MQ应用服务通过手工执行脚本方式启停,在虚拟IP、存储、MQ应用都正常的起来后,出现了同网段的IP可以ping 得通虚拟IP,但跨网段ping 的时候就是ping不通。
    在和网络的同事排查时发现从交换机上看到的虚拟IP的MAC地址更新的时间为每4小时一次,由于交换机上的配置可以修改为更小的时间间隔来解决,但是要做到切换后应用恢复虚拟IP通讯的实时性,我们还是需要从主机端发起MAC地址更新的数据包。
    在网络上查找了虚拟IP配置相关问题后发现,基本定位于arp缓存更新周期的问题。
    问题的原因找到了,解决的方法就是通过工具,主动发起arp地址更新,在LINUX上我们可以使用的命令有arping
    我的系统版本如下:redhat 5.4 ,以下命令供参考。
[root@MQHOST ~]# uname -a
Linux MQHOST 2.6.18-164.el5 #1 SMP Tue Aug 18 15:51:48 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux
[root@MQHOST ~]# cat /etc/redhat-release 
Red Hat Enterprise Linux Server release 5.4 (Tikanga)
[root@MQHOST ~]# /sbin/arping 
Usage: arping [-fqbDUAV] [-c count] [-w timeout] [-I device] [-s source] destination
  -f : quit on first reply
  -q : be quiet
  -b : keep broadcasting, don't go unicast
  -D : duplicate address detection mode
  -U : Unsolicited ARP mode, update your neighbours
  -A : ARP answer mode, update your neighbours
  -V : print version and exit
  -c count : how many packets to send
  -w timeout : how long to wait for a reply
  -I device : which ethernet device to use (eth0)
  -s source : source ip address
  destination : ask for what ip address
[root@MQHOST ~]# 

主动广播新IPMAC地址的命令:
    /sbin/arping  -c 5 -U -I eth0 192.168.4.100
-c 表示要发多少个广播包。
-U 非请求模式,更新同网段设备上的arp缓存。
-I 通过哪个接口发送数据包,这个会使用到这个网卡的mac的地址。

    说明:arp更新问题,这个问题在商业的HA软件中好像是不存在的,他们的实现方式好像是通过虚拟MAC地址与虚拟IP地址绑定的方式实现的(这个是从驻场工程师处了解到的,非官方的解释,权威性有待确认)。
    事起于公司装了MQ服务器,想做成手工切换的双机模式,具体要求是虚拟IP,共享存储和MQ应用服务通过手工执行脚本方式启停,在虚拟IP、存储、MQ应用都正常的起来后,出现了同网段的IP可以ping 得通虚拟IP,但跨网段ping 的时候就是ping不通。
    在和网络的同事排查时发现从交换机上看到的虚拟IP的MAC地址更新的时间为每4小时一次,由于交换机上的配置可以修改为更小的时间间隔来解决,但是要做到切换后应用恢复虚拟IP通讯的实时性,我们还是需要从主机端发起MAC地址更新的数据包。
    在网络上查找了虚拟IP配置相关问题后发现,基本定位于arp缓存更新周期的问题。
    问题的原因找到了,解决的方法就是通过工具,主动发起arp地址更新,在LINUX上我们可以使用的命令有arping
    我的系统版本如下:redhat 5.4 ,以下命令供参考。
[root@MQHOST ~]# uname -a
Linux MQHOST 2.6.18-164.el5 #1 SMP Tue Aug 18 15:51:48 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux
[root@MQHOST ~]# cat /etc/redhat-release 
Red Hat Enterprise Linux Server release 5.4 (Tikanga)
[root@MQHOST ~]# /sbin/arping 
Usage: arping [-fqbDUAV] [-c count] [-w timeout] [-I device] [-s source] destination
  -f : quit on first reply
  -q : be quiet
  -b : keep broadcasting, don't go unicast
  -D : duplicate address detection mode
  -U : Unsolicited ARP mode, update your neighbours
  -A : ARP answer mode, update your neighbours
  -V : print version and exit
  -c count : how many packets to send
  -w timeout : how long to wait for a reply
  -I device : which ethernet device to use (eth0)
  -s source : source ip address
  destination : ask for what ip address
[root@MQHOST ~]# 

主动广播新IPMAC地址的命令:
    /sbin/arping  -c 5 -U -I eth0 192.168.4.100
-c 表示要发多少个广播包。
-U 非请求模式,更新同网段设备上的arp缓存。
-I 通过哪个接口发送数据包,这个会使用到这个网卡的mac的地址。

    说明:arp更新问题,这个问题在商业的HA软件中好像是不存在的,他们的实现方式好像是通过虚拟MAC地址与虚拟IP地址绑定的方式实现的(这个是从驻场工程师处了解到的,非官方的解释,权威性有待确认)。
1 0
原创粉丝点击