網路通信
要理解什麼是廣播風暴,就必須先理解網路通信技術。 網路上的一個節點,它傳送一個數據幀或包,被傳輸到由廣播域定義的本地網段上的每個節點就是廣播。
網路廣播分為第2層廣播和第3層廣播。第2層廣播也稱硬體廣播,用於在區域網路內向所有的結點傳送數據,通常不會穿過區域網路的邊界(路由器),除非它變成一個單播。廣播將是一個二進制的全1或者十六進制全F的地址。而第3層廣播用於在這個網路內向所
有的結點傳送數據。第3層廣播也支持平面的老式廣播。廣播信息是指以某個廣播域所有主機為目的的信息。這些被稱為網路廣
播,它們所有的主機位均為ON。硬體組播(multicasting)是一種多點投遞的形式,它使用硬體技術,通過使用大量組播地址來通信。當某一組機器需要通信時,選擇一個組播地址,並配置好相應的網路接口硬體,識別組播地址,從而收到該組播地址上分組的拷貝。
廣播(broadcasting)是多點投遞的最普遍的形式,它向每一個目的站投遞一個分組的拷貝。它可以通過多個單次分組的投遞完成,也可以通過單獨的連線傳遞分組的拷貝,直到每個接收方均收到一個拷貝為止。在多數網路中,用戶是通過把分組分送給一個特殊保留的地址即廣播地址(broadcast address)來進行廣播投遞,它的主要缺點是會耗費大量的主機資源和網路資源。
單播(unicasting)是指只有一個目的地的數據報傳遞。從投遞目的地的數量而言,單播和廣播均可看作是組播的一個子集。單播可以看作僅包括一台機器群組的組播;廣播可以看作包含了所有機器群組的組播。但從數據報的投遞方式而言,單播、廣播和組播還是有較大的區別。
硬體基礎
要想正確理解廣播風暴的具體含義,必須了解一下工作在網路中的網路設備的工作原理。工作在網路中的網路設備,基本上都是交換機了。
基本常識
交換機的定義:交換機是一種基於MAC(網卡的地址硬體)識別,能完成封裝轉發數據包功能的網路設備。交換機可以“學習”MAC地址,並把其存放在內部地址表中,通過在數據幀的始發者和目標接收者之間建立臨時的交換路徑,使數據幀直接由源地址到達目的地址。集線器,又稱Hub。但是這並不意味著,我們不需要了解Hub的基本知識。
集線器的定義:集線器(HUB)屬於數據通信系統中的基礎設備,它和雙絞線等傳輸介質一樣,是一種不需任何軟體支持或只需很少管理軟體管理的硬體設備。它被廣泛套用到各種場合。集線器工作在區域網路(LAN)環境,像網卡一樣,套用於OSI參考模型第一層,因此又被稱為物理層設備。集線器內部採用了電器互聯,當維護LAN的環境是邏輯匯流排或環型結構時,完全可以用集線器建立一個物理上的星型或樹型網路結構。在這方面,集線器所起的作用相當於多連線埠的中繼器。其實,集線器實際上就是中繼器的一種,其區別僅在於集線器能夠提供更多的連線埠服務,所以集線器又叫多口中繼器。
區別
經常會存在這樣一個技術誤區,網路中使用的是交換機,數據全部是點對點轉發的,為什麼還會產生廣播風暴呢?在充分了解了交換機與集線器的功能區別後,人們就會明白,使用交換機作為網路設備的網路,為什麼會出現廣播風暴。
用集線器組成的網路稱為共享式網路,而用交換機組成的網路稱為交換式網路。共享式乙太網存在的主要問題是所有用戶共享頻寬,每個用戶的實際可用頻寬隨網路用戶數的增加而遞減。這是因為當資訊繁忙時,多個用戶可能同時“爭用”一個信道,而一個信道在某一時刻只允許一個用戶
占用,所以大量的用戶經常處於監測等待狀態,致使信號傳輸時產生抖動、停滯或失真,嚴重影響了網路的性能。 在交換式乙太網中,交換機提供給每個用戶專用的資訊通道,除非兩個源連線埠企圖同時將資訊發往同一個目的連線埠,否則多個源連線埠與目的連線埠之間可同時進行通信而不會發生衝突。通過實驗測得,在多伺服器組成的LAN中,處於半雙工通信模式下的交換式乙太網的實際最大傳輸速度是共享式網路的1.7倍,而工作在全雙工狀態下的交換式乙太網的實際最大傳輸速度可達到共享式網路的3.8倍。交換機只是在工作方式上與集線器不同,其他的如連線方式、速度選擇等與集線器基本相同,交換機同樣從速度上分為10M、100M和1000M幾種,所提供的連線埠數多為8口、16口和24口幾種。交換機在區域網路中主要用於連線工作站、Hub、伺服器或用於分散式主幹網。
ARP攻擊
基本定義:
ARP(Address Resolution Protocol,地址解析協定)是一個位於TCP/IP協定棧中的底層協定,對應於數據鏈路層,負責將某個IP位址解析成對應的MAC地址。
基本功能:
ARP協定的基本功能就是通過目標設備的IP位址,查詢目標設備的MAC地址,以保證通信的進行。
攻擊原理:
ARP攻擊就是通過偽造IP位址和MAC地址實現ARP欺騙,能夠在網路中產生大量的ARP通信量使網路阻塞,攻擊者只要持續不斷的發出偽造的ARP回響包就能更改目標主機ARP快取中的IP-MAC條目,造成網路中斷或中間人攻擊。
ARP攻擊主要是存在於區域網路網路中,區域網路中若有一台計算機感染ARP木馬,則感染該ARP木馬的系統將會試圖通過“ARP欺騙”手段截獲所在網路內其它計算機的通信信息,並因此造成網內其它計算機的通信故障。
某機器A要向主機B傳送報文,會查詢本地的ARP快取表,找到B的IP位址對應的MAC地址後,就會進行數據傳輸。如果未找到,則A廣播一個ARP請求報文(攜帶主機A的IP位址Ia——物理地址Pa),請求IP位址為Ib的主機B回答物理地址Pb。網上所有主機包括B都收到ARP請求,但只有主機B識別自己的IP位址,於是向A主機發回一個ARP回響報文。其中就包含有B的MAC地址,A接收到B的應答後,就會更新本地的ARP快取。接著使用這個MAC地址傳送數據(由網卡附加MAC地址)。因此,本地高速快取的這個ARP表是本地網路流通的基礎,而且這個快取是動態的。
對策
激活防止ARP病毒攻擊。在路由器中打開該選項,或者為計算機安裝防範ARP攻擊的軟體,如360安全衛士的區域網路ARP攻擊攔截的保護功能等;對區域網路內每一台計算機綁定網關的IP和其mac地址;給每一台計算機安裝最新補丁,最好通過在區域網路內架設補丁伺服器(WSUS)來確保每一台計算機都能 打上最新的補丁程式,如關鍵更新、安全更新和Service Pack;給系統管理員帳戶
設定足夠複雜的強密碼;經常更新防毒軟體的病毒庫和網路軟體防火牆的規則庫;關閉一些不需要的服務;不隨意點擊聊天工具里出現的超連結、郵件的附屬檔案和來歷不明的程式。
網路視頻
部分視頻網路傳輸設備為了便於網路視頻點播,常常採用UDP的方式,以廣播數據包的形式對外進行傳送,如果在專用網路中也使用這種方式,很容易引發廣播風暴,導致網路阻塞,因此必須通過相關設定來杜絕這類故障。
對策:將視頻網路傳輸設備所連線的交換機連線埠進行一些設定,對設備本身的網路傳輸模式以及傳送協定類型進行更改,消除網路廣播風暴。
惡劣環境
如不合適的溫度、濕度、震動和電磁干擾等,尤其是電磁干擾比較嚴重的環境下,同樣也有可能會使網路變得不穩定,造成數據傳輸錯誤,引發廣播風暴。
對策:要嚴格執行接地要求,特別是涉及遠程線路的網路轉接設備,否則達不到規定的連線速度,導致在聯網過程中產生莫名其妙的故障;另外在建網之初必須考慮儘量避免計算機或者網路介質直接暴露強磁場中,如電磁爐、高壓電纜、電源插頭處等等;定期對計算機進行清潔工作。
形成原因
幀的傳輸方式,即單播幀(Unicast Frame)、多播幀(Multicast Frame)和廣播幀(Broadcast Frame)。
1、單播幀
單播幀也稱“點對點”通信。此時幀的接收和傳遞只在兩個節點之間進行,幀的目的MAC地址就是對方的MAC地址,網路設備(指交換機和路由器)根據幀中的目的MAC地址,將幀轉發出去。
2、多播幀
多播幀可以理解為一個人向多個人(但不是在場的所有人)說話,這樣能夠提高通話的效率。多播占網路中的比重並不多,主要套用於網路設備內部通信、網上視頻會議、網上視頻點播等。
3、廣播幀
廣播幀可以理解為一個人對在場的所有人說話,這樣做的好處是通話效率高,信息一下子就可以傳遞到全體。在廣播幀中,幀頭中的目的MAC地址是“FF.FF.FF.FF.FF.FF”,代表網路上所有主機網卡的MAC地址。
廣播幀在網路中是必不可少的,如客戶機通過DHCP自動獲得IP位址的過程就是通過廣播幀來實現的。而且,由於設備之間也需要相互通信,因此在網路中即使沒有用戶人為地傳送廣播幀,網路上也會出現一定數量的廣播幀。
同單播和多播相比,廣播幾乎占用了子網區域網路絡的所有頻寬。網路中不能長時間出現大量的廣播幀,否則就會出現所謂的“廣播風暴”(每秒的廣播幀數在1000以上)。拿開會打一個比方,在會場上只能有一個人發言,如果所有人都同時發言的話,會場上就會亂成一鍋粥。廣播風暴就是網路長時間被大量的廣播數據包所占用,使正常的點對點通信無法正常進行,其外在表現為網路速度奇慢無比。出現廣播風暴的原因有很多,一塊故障網卡就可能長時間地在網路上傳送廣播包而導致廣播風暴。
使用路由器或三層交換機能夠實現在不同子網間隔離廣播風暴的作用。當路由器或三層交換機收到廣播幀時並不處理它,使它無法再傳遞到其他子網中,從而達到隔離廣播風暴的目的。因此在由幾百台甚至上千台電腦構成的大中型區域網路中,為了隔離廣播風暴,都要進行子網劃分。
使用vlan完全可以隔離廣播風暴。
經驗總結
作為網路管理員,在面對網路廣播風暴發生時,要冷靜分析廣播風暴產生的原因,可使用二分法、排除法、替換法和網線插拔法等多種方法綜合運用,一步一步地進行故障排除,快速定位引發廣播風暴的故障點,查出引發廣播風暴的原因,及時採取相應措施來消滅廣播風暴。 總的來看,要解決廣播風暴的問題,可以從以下幾個方面入手:
一、在區域網路中安裝WSUS補丁伺服器,保證區域網路所有計算機都能及時打上最新的補丁。
二、最好在區域網路內安裝網路版的防毒伺服器,如無條件,起碼也得保證單機版的防毒軟體的病毒庫是經常更新的。
三、檢查每一台計算機的網卡、網線和交換機的每一個連線埠,檢查是否有
故障。 四、當廣播風暴發生時,觀察交換機的指示燈不啻為很好的方法,可直接觀察網路連通性及網路流量。
要避免廣播風暴,可以採用恰當劃分VLAN、縮小廣播域、隔離廣播風暴,還可在千兆乙太網口上啟用廣播風暴控制,最大限度地避免網路再次陷入癱瘓。當連線埠接受到大量的廣播、單播或組播的包時,就會發生廣播風暴。轉發這些包會導致網路速度變慢或逾時,在交換機上藉助對連線埠的廣播風暴控制可以有效避免硬體損壞或鏈路故障導致的廣播風暴的網路癱瘓。
從實際經驗來看,90%以上的網路廣播風暴是病毒所致,因此,在區域網路中配備防病毒系統,購置IDS入侵檢測系統、網路流量檢測工具等,以加強網路病毒的防治,加強對網路線路運行狀態的監控,及時發現和處理網路上的異常流量和病毒攻擊等問題,並制定計算機安全管理制度,確保網路線路的正常運行。