網絡迴路造成廣播風暴如何找出源頭?

網絡迴路令廣播訊框被交換機無限轉發,數分鐘內可令整個網絡癱瘓。本文說明迴路的成因與徵狀、如何按交換機的指示燈與連接埠統計逐段縮窄範圍找出源頭、常見誤判的成因,以及 STP 與 Loop Protection 為何無法完全取代人工查線。

WhatsApp 說明情況 即日或翌日上門 · 09:00-23:59

迴路如何令網絡瞬間癱瘓

以太網交換機收到未知目的位址的訊框時,會把訊框複製並向除來源連接埠外的所有連接埠轉發。當網絡出現迴路(Loop),即交換機之間存在兩條或以上的有效路徑,同一訊框便會在迴路上不斷被複製轉發,且每個複製品又會被其他路徑再一次複製,廣播與未知單播訊框的數量以指數方式膨脹。短時間內交換機的轉發引擎、背板頻寬與記憶體全部被填滿,正常流量無法處理,整個網絡陷入癱瘓,此現象即「廣播風暴」(Broadcast Storm)。

廣播訊框(Broadcast Frame)的目標位址是 ff:ff:ff:ff:ff:ff,理論上每次連線建立(DHCP 請求、ARP 查詢)都自然產生,本身屬正常機制;其殺傷力全部來自迴路讓它們無限自我複製。因此問題的根源不在廣播本身,而在迴路。層二(L2)以太網的訊框結構與轉發規則,可參考 IEEE 802.3 標準及本站〈廣播與衝突網域〉一文。

出現迴路時的典型徵狀

迴路造成的風暴徵狀非常典型,與硬件故障或病毒攻擊不同,幾乎可以一眼辨認:

徵狀特點
交換機所有指示燈同時快速閃爍即使只有少量設備接駁,全部連接埠指示燈仍高速閃動,代表全埠轉發量極高
整層或整幢網絡同步變慢至停頓風暴沿連接鏈擴散,可跨越配線間影響整幢大廈
CPU 使用率長時間 100%可網管交換機的管理介面回應遲緩或完全無回應
拔線即恢復、插回即復發逐一拔出疑似連接埠後網絡回復,插回後數秒內再癱瘓,可確認該埠屬迴路一部分

實務上最可靠的驗證方式,是逐一拔除交換機的對外 Uplink 或用戶連接埠,觀察指示燈是否停止閃爍。若拔除某一條線後風暴停止,該條線路便是迴路的關鍵一環。網絡工程師處理這類問題時會先保留現場、記錄每個連接埠的狀態再逐段測試,避免拔錯線導致無法還原。

需要協助?迴路排查需要現場逐步測試連接埠與審視接線記錄,由工程人員處理可在最短時間內恢復網絡。WhatsApp

用連接埠統計鎖定源頭

  1. 先斷開與上層交換機的 Uplink——若整個網絡癱瘓,優先處理最外層的擴散鏈路,令風暴影響範圍止於局部,再逐段排查。
  2. 登入可網管交換機查看連接埠統計——在管理介面或透過 CLI 檢視各埠的接收與傳送訊框計數器。迴路鏈上,相關埠的廣播訊框計數會在短時間內急升,是最直接的線索。
  3. 留意「交叉電纜接錯線」——把同一交換機的兩個埠以網線直接接駁(例如當作備線預留、或把牆身面板兩端插在同一台機),是最常見的迴路成因。拔除這類線後問題即時消失。
  4. 檢查交換機之間的冗餘連接——兩台交換機之間同時接了兩條線、或經牆身面板間接形成第二路徑,都會構成迴路。
  5. 從最可疑的線逐條拔除測試——每拔一條觀察 10 至 15 秒,確認風暴是否停止;找出源頭後,以正確的網絡設計取代臨時接線。

完成後應記錄各連接埠的最終接線,把「哪些埠接哪部設備」整理成文件。缺乏文件記錄的網絡,迴路往往在未來的擴充或搬線時再次出現。網絡文件的重要性可參考本站〈網絡配置備份與自動化〉一文。

迴路的常見實際成因

迴路絕大多數不是刻意建立的,而是日常操作無意造成:

雙線接駁同一交換機

同一交換機的兩個埠被一條網線互接,或牆身面板的兩端同時插回同機,是最常見的單機迴路。

交換機之間的冗餘鏈路

兩台交換機之間接兩條線以備其一損壞,卻沒有啟用鏈路聚合(Link Aggregation),形成第二路徑。

臨時設備的「額外」網線

桌面交換機、Wi-Fi 網橋、POS 終端或裝修期間的臨時線,同時連接到兩處,於無意中把兩邊的網絡橋接起來。

VLAN 與 Trunk 規劃錯誤

把同一 VLAN 同時存在於多條鏈路上而欠缺冗餘控制,令風暴於特定 VLAN 內擴散。相關排查可參考本站〈Native VLAN 不匹配排查〉一文。

以香港的情況而言,商廈與工廈租戶換手頻繁,舊租戶的網線、電訊商的固網數據線與新網絡並存,是迴路的高發環境。裝修期間臨時拉線、辦公室搬位後「方便起見」多留一條線,日後接駁時形成迴路,是實務上最常遇到的成因。

STP 與 Loop Protection 的角色

生成樹協定(Spanning Tree Protocol,STP)由 IEEE 802.1D 定義,其作用是在層二網絡中自動偵測冗餘路徑,並以阻塞(Blocking)狀態停用其中一條,確保任何時刻都只有一條有效路徑,從機制上防止迴路。其後發展的 Rapid STP(802.1w)把收斂時間大幅縮短。另一項常用的防護是 Loop Protection(迴路保護),當交換機在指定埠上偵測到重複的協定資料單元(PDU),便自動關閉該埠。

但兩者都無法取代人工查線,原因如下:第一,STP 預設狀態未必在所有交換機上啟用,而多數中小型非網管交換機根本不具備 STP;第二,STP 只處理交換機之間的鏈路,同一台交換機兩個埠被網線直接互接的「單機迴路」,很多型號無法完全攔截;第三,風暴一旦成形,交換機 CPU 被拖垮,STP 協定訊息自身也無法及時處理。因此即使網絡配備 STP,風暴仍可能發生。

工程實務上的建議是:在可網管交換機啟用 STP 與 Loop Protection,同時把實體接線管理妥當——迴路的最終防線是清晰的線路記錄與審慎的接線紀律,而非單靠協定。交換機的選購考慮可參考本站〈網絡交換機是什麼?〉一文。

常見問題

交換機指示燈全部狂閃,是否一定是迴路造成?
最常見的原因確實是迴路,但亦可能是連接埠統計異常高的用戶設備(例如中毒的電腦大量發送廣播、或流量型攻擊)。最有效的分辨方法是逐一拔除連接埠測試:拔除後風暴停止的線路即屬關鍵一環;全部拔除後仍然狂閃,才需懷疑交換機硬件本身。
拔線即恢復、插回即復發,代表什麼?
這幾乎可以確認該連接埠屬於迴路的一部分:網絡上的設備(例如桌上型交換機或牆身面板)把訊框送回原交換機,形成第二路徑。應順著該條線路檢查另一端接了甚麼設備,找出實際的迴路點。
網絡配置了 STP,為什麼仍然出現風暴?
STP 只處理交換機之間的冗餘鏈路,同一交換機兩個埠被網線直接互接的單機迴路未必能攔截;此外非網管交換機沒有 STP,風暴可從這類設備擴散。且風暴一旦成形,交換機 CPU 被拖垮,STP 訊息也無法處理,因此不能完全依賴協定。
可以不停機找出迴路嗎?
可以。逐一拔線是停機時間最短的方法;更精準的做法是登入可網管交換機查看各埠的廣播訊框計數器,統計異常的埠即線索所在。找到源頭後可暫時關閉該埠代替拔線,再安排後續接線修正。
商廈/工廈為何特別容易出現迴路?
香港商廈與工廈租戶換手頻繁,舊租戶網線、電訊商數據線與新網絡並存,裝修臨時線與搬位後多留的網線容易被無意中接成第二路徑。缺乏接線記錄的環境,迴路往往在擴充或搬線時重複出現。
如何防止迴路再次出現?
建立完整的接線文件,記錄每個連接埠與設備的對應;交換機之間的冗餘鏈路改用鏈路聚合而非並聯兩條獨立線;在可網管交換機啟用 STP 與 Loop Protection;搬位或裝修後審查一次接線圖。
DHCP 或 ARP 正常運作本身是否會製造風暴?
不會。DHCP 與 ARP 使用廣播是正常機制,只有在迴路令廣播訊框被無限複製時才會失控。風暴的根源是迴路本身,而非廣播訊框的種類。

網絡突然全線癱瘓?

我們可為商場、工廈、辦公室及住宅網絡現場排查迴路源頭,檢查接線與連接埠統計、修正冗餘鏈路、啟用 STP 與 Loop Protection,並整理接線文件防止復發,歡迎聯絡工程師查詢。

WhatsApp 說明情況

權威參考來源

相關技術主題

若閣下正計劃相關工程或需要選購設備,歡迎瀏覽網絡工程服務了解方案詳情,或透過網上快速報價與我們的工程師聯絡。

產品規格以原廠最新文件為準;有需要請聯絡我們工程師。