一、成因
廣播風暴指過多的廣播包消耗了大量的網絡帶寬,導致正常的數據包無法正常在網絡中傳送,通常指一個廣播包引起了多個的響應,而每個響應又引起了多個得響應,就像滾雪球一樣,把網絡的所有帶寬都消耗殆盡。
該現象通常是由於網絡環路、故障網卡、病毒等引起的。
二、預防(以CISCO catalyst switch為例)
1、首先使用網管分析你網絡的baseline,這樣可以明確你的網絡當中正常情況下的廣播包比例是多少。
2、目前絕大多數交換機都支持廣播風暴抑制特性,配置了這個特性以後,你可以控制每個端口的廣播包維持在特定的比例之下,這樣可以保留帶寬給必須的應用。
配置:(以CISCO catalyst switch為例)
Int XX
storm-control broadcast level 20.00
switch#sh storm
Interface Filter State Level Current
--------- ------------- ------- -------
Fa1/0/1 Forwarding 20.00% 0.00%
3、針對缺省STP配置無法排除的網絡環路問題,利用STP的BPDUguard特性來預防廣播風暴。此種環路情況示意圖如下:
switch------hub(portA---portB)
Switch啟用了STP,而hub則被人有意無意的用一根網線聯起來,導致引起了環路。SWITCH的端口不會收到其他交換機或本交換機其他端口的BPDU,不會觸發該端口的STP決策過程,也就不可能blocking該端口,這樣就會引起廣播風暴。我們可以利用CISCO STP的BPDUguard特性來預防這一點。
int xxx
spanning-tree bpduguard enable
***值得注意的是bpduguard可以在全局下配置,也可以在每端口的基礎上配置。如果在全局下配置,則只對配置了portfast的端口起作用,如果在端口下配置,則不用配置portfast。
三、排障(以CISCO catalyst switch為例)
如果網絡中已經產生了網絡風暴(現象通常為網絡丟包、響應遲緩、時斷時通等),則可以利用如下的方法來排障。
1、首先確認是否是網絡風暴或其他異常流量引起的網絡異常,在核心交換機上
Switch>sh proc cpu e 0.00
CPU utilization for five seconds: 19%/0%; one minute: 19%; five minutes: 19%
PID Runtime(ms) Invoked uSecs 5Sec 1Min 5Min TTY Process
15 20170516 76615501 263 0.31% 0.13% 0.12% 0 ARP Input
26 7383266801839439482 401 5.03% 4.70% 5.08% 0 Cat4k Mgmt HiPri
27 8870781921122570949 790 5.67% 7.50% 6.81% 0 Cat4k Mgmt LoPri
43 730060152 341404109 2138 6.15% 5.29% 5.28% 0 Spanning Tree
50 59141788 401057972 147 0.47% 0.37% 0.39% 0 IP Input
56 2832760 3795155 746 0.07% 0.03% 0.01% 0 Adj Manager
58 4525900 28130423 160 0.31% 0.25% 0.18% 0 CEF process
96 20789148 344043382 60 0.23% 0.09% 0.08% 0 Standby (HSRP)
如果交換機的CPU利用率較高,且大部分的資源都被“IP Input”進程占用,則基本可以確定網絡中有大流量的數據。
2、查找異常流量是從交換機的那一個端口來的:
switch #sh int i protocol rate broadcasts
FastEthernet1/0/1 is up, line protocol is up (connected)
Queueing strategy: fifo
5 minute input rate 0 bits/sec, 0 packets/sec
5 minute output rate 2000 bits/sec, 3 packets/sec
Received 241676 broadcasts (0 multicast)
如果找到一個端口的input rate非常高,且接收到的廣播包也非常多,則基本可以找到來源,如果該端口下聯的也是可管理的交換機,則再次執行此過程,直到找到一個連接PC或者HUB的端口。
3、shutdown該端口
int xx
shutdown
4、查找產生異常流量的根源
如果是HUB環路,則拆掉環;如果是病毒,則做殺毒處理;如果是網卡異常,則更換網卡。此部分不詳述。
5、確認交換機的CEF功能是否啟用,如果沒有,則需要啟用,可以加速流量的轉發
switch>sh ip cef
配置CEF:
全局模式下輸入
ip cef