交换上的FLAPPING事件 (zhuan)

【交换上的FLAPPING事件 (zhuan)】冲天香阵透长安,满城尽带黄金甲。这篇文章主要讲述交换上的FLAPPING事件 (zhuan)相关的知识,希望能为你提供帮助。
今天在学校的一个三层交换上看到持续的日志信息:
Host 00:E0:FC:09:BC:F9is flapping between fa0/x and fa0/y. 思科对此官方的解释是:Error Message SW_MATM-4-MACFLAP_NOTIF: Host [enet] in [chars] [dec] is flapping between port [chars] and port [chars] 某主机的MAC地址在某两端口之间摆动。 Explanation This message means that the switch found the traffic from the specified host flapping between the specified ports. [enet] is the host MAC address, [chars] [dec] is the switch ID, and the first and second [chars] are the ports between which the host traffic is flapping. Recommended Action Check the network switches for misconfigurations that might cause a data-forwarding loop.思科推荐行动是检查交换机的配置以防有数据传输环路。在一个唯一环路冗余只做在接入层(备用线路)上,且全部运行STP的网络环境中,我认为没有环路的可能性。
也没有服务器的网卡在两端口间做过bonding(这种情况的表现是flapping只在两个特定的端口之间。解决方案是交换机上做channal-group。)
如此分析,这大路边的可能故障也就是环路被排除掉了。 那么再来重新分析一下LOG信息。 刚才我们关注的是flapping between,下面关注一下MAC地址和端口所能提供的线索。 这些flapping的端口,每次都不尽相同,但是有个特点就是,全都是华为的端口,神码的端口压根没参与过。 猜想,这会不会跟华为的某种协议有关呢?   查了一下那个总在flapping的MAC地址  Host 00:E0:FC:09:BC:F9, http://bbs.chinaunix.net/thread-1140740-1-1.html LZ还打了客服,华为-3COM技术支持(800-810-0504-3)。 回答是:那是华为发送STP、loopback-detection、NDP、STDP、gratuitous-arp-learning用的组播所用的虚拟地址。 也就是说,网络中所有华为的设备都在用那个MAC在发信息。   http://www.2cto.com/net/201109/105182.html“S3600系列交 换机开启STP功 能后,对端设备可能出现报告MAC地址移动的现象。其原因为S3600系列交换机的BPDU报文采用固定MAC地址为源MAC。该情况对正常业务没有影响。为了防止 该日志信息对正常日志信息的影响,可以通过类似日志信息过滤的功能对此种日志信息过滤。 S系列交换机生成 树协议报文的源MAC地址是00E0-FC09-BCF9或者 000F-E207-F2E0。”以上红黑联盟的博主还说: 因为多厂商间对协议的理解方式不同,各厂商按照各自的方式改动了实现的方式,所以应尽量避免二层互联,对接的时候一定要提前测试好保持谨慎。   51CTO也有类似的解释http://ruilinux.blog.51cto.com/4265949/870195H3C定义的LACP报文(DMAC=0180C2000002、H3C设备SMAC=000f-e207-f2e0、)也是BPDU报文的一种。由于V3平台交换机每端口没有设置各自的MAC地址,因此BPDU源MAC都是使用上述固定的特殊MAC作为源MAC地址的。但S3600/5600系列交换机最新版本支持在系统视图下使用port-mac命令进行定义。 对于固定源MAC地址,H3C交换机是不学习BPDU报文的源MAC的,但有些友商设备对于BPDU的源MAC是进行学习的,因此在友商设备上有时会记录MAC地址漂移的告警。 博主建议:对于V3平台交换机如S3600/5600系列交换机可以升级到最新版本通过port-mac命令更改BPDU报文的源MAC地址。但是需要注意的是,如果网络中没有环路,那么该现象正常不影响业务使用,因此也不推荐使用port-mac命令进行更改。  原因已经很明确了。大牛曾试验过关掉loopback-detection就不会出现类似LOG了。   不过说来,这华为事事还真多,我又发现了还有类似的固定MAC地址: http://bbs.c114.net/thread-479741-1-1.html 01-80-C2-00-00-00是STP、loopback detection的目的mac   http://www.cnitblog.com/windforce/archive/2013/04/17/87310.htmlloopback-detection环回监测使用及原理以H3C交换机为例 1、开启全局监测   > loopback-detection enable 2、开启相应端口监测 > int gig 1/0/1       loopback-detection enable 3、如为trunk端口,1和2步只能对trunk端口的默认vlan进行监测,需要对所有vlan开启监测     loopback-detection per-vlan en 4、如为trunk端口,发现环路仅上报错误,需要设置端口受控,access端口不需要。       loopback-detection control enloopback-detection监控从端口发出的报文是否又通过该端口回到设备,用于判断端口下挂网络是否存在环路。 对access端口,会删除mac列表,block端口,对trunk端口会上报,不会禁用端口。   这个困扰了两天的问题,终于可以得出一个结论了。
综上所述,接入层华为设备的上行口LOOPBACK-DETECTION关闭就好,其他照旧。

交换上的FLAPPING事件 (zhuan)

文章图片
通过这次的事情呢,在老师的指导下,在各种论坛里,我也有些感悟吧 1.园区网里的二层设备尽可能统一厂牌,否则要根据show log来确定关闭某些端口的某些服务。 2.对于网络中的任何改动,一切以保证网络畅通为首要目的。流量较为正常,拥塞和延时都不严重的时候,千万不要轻举妄动。 3.STP还是不要关的。

    推荐阅读