S9300的arp表项没有更新导致下挂虚拟机迁移时业务中断

发布时间:  2016-10-03 浏览次数:  134 下载次数:  0
问题描述

如图:某学校使用S9300下挂虚拟机,其中GE1/0/1下挂主用虚拟机,GE2/0/1下挂备用虚拟机,主备虚拟机的ip地址一样,平时主用虚拟机在工作,当主用虚拟机出现故障时会切换到备用虚拟机,但客户测试时发现切换到备用虚拟机后业务不通


处理过程

1、迁移到备用虚拟机后业务不通,首先怀疑是否备用虚拟机有问题,但客户反馈之前单独测试虚拟机时是没问题的;

2、经过多次测试发现切换到备用虚拟机后中断10多分钟后业务又能通信;

-----由于经过多次测试都是中断10多分钟有业务恢复正常,因此初步怀疑跟ARP表项有关;

3、测试时查看S9306上的arp表项,发现业务迁移到备用虚拟机后arp的出接口还是GE1/0/1口而不是GE2/0/1口;

<S9306> display arp dynamic

IP ADDRESS      MAC ADDRESS     EXPIRE(M) TYPE        INTERFACE   VPN-INSTANCE  

                                          VLAN/CEVLAN                           

------------------------------------------------------------------------------

192.168.11.1    00e0-0987-789c            I -         Vlanif11

192.168.11.10  ac85-3da6-a420  2         D-0         GE1/0/1

                                            11/-

4、为何虚拟机迁移后arp表项不更新?这是因为交换机mac地址表项和arp表项学习是两个相对独立的过程,mac地址学习可以基于接口收到的任何数据包,而arp表项的学习必须要借助arp数据包的交互,当虚拟机迁移后,备用虚拟机并未发送免费arp来刷新交换机arp表项,而交换机在arp表项存在的情况下默认发送的arp探测报文为单播arp请求包,迁移后的虚拟机并未收到相应探测报文,而原虚拟机也不会做任何回复,最终只能等待交换机arp表项自行老化后,由交换机触发新一轮的arp学习来实现业务迁移。那如何解决这个问题呢?可以在交换机上开启mac地址触发arp更新的功能来解决;

[S9306]mac-address update arp

5、开启mac地址触发arp更新后多次测试正常,测试时只丢一个报文。


根因

交换机arp表项没有跟着虚拟机迁移而更新导致业务中断

解决方案

开启mac地址触发arp更新功能解决

END