主頁 / 什麼是端口鏡像?
什麼是端口鏡像?
端口鏡像(Port Mirroring),在思科等設備上常稱為SPAN(Switched Port Analyzer),是交換機把指定端口或VLAN上的流量複製一份,同步送到另一個監察端口的功能。工程師或監察設備可透過這個監察端口取得流量副本,用作抓包分析、故障排除或安全監察,而不會影響原本流量的正常傳送路徑。本頁講解端口鏡像的運作原理、常見用途,以及與IP電話錄音系統部署的關係。
端口鏡像的運作原理
交換機在正常情況下只會把封包轉發到目的地相關的端口,其他端口是看不到這些流量的,這正是交換機相對於集線器的優點所在——減少不必要的廣播與碰撞。但這個特性同時帶來一個問題:當工程師需要分析某條連線的實際流量內容時,單純把電腦接駁在旁邊的空置端口是完全看不到任何相關封包的。端口鏡像正是為解決這個問題而設計的功能。
設定端口鏡像時,工程師需要在交換機上建立一個「監察工作階段」(monitor session),指定來源 (可以是單一端口,也可以是整段VLAN)與目的地 (監察端口)。交換機此後會把符合條件的流量複製一份,經內部匯流排送到監察端口,原有流量的正常轉發路徑完全不受影響。目的地監察端口所連接的電腦或分析設備,只要把網卡切換至混雜模式(promiscuous mode),便可以接收並非目的地為自己的封包,從而完整截取被鏡像的流量作分析。以思科設備為例,設定指令大致為先以一條指令指定來源端口,再以另一條指令指定目的端口,設定相當簡單。
需要留意的是,端口鏡像本質上是被動監聽,並不會在原有通訊路徑上加入任何設備,因此不會成為單點故障,亦不會為原有連線增加延遲。但監察端口本身的頻寬有限,若同時把多個高流量來源鏡像到同一個目的端口,有機會超出目的端口的處理能力,導致部分封包在鏡像過程中被丟棄,監察端所看到的流量未必是百分百完整的原始流量,這一點在規劃鏡像方案時必須考慮。
三種常見的鏡像模式
模式 運作方式 特點
本地端口鏡像 Local Port Mirroring 來源與目的端口在同一台交換機上 路徑最短、延遲最低,最常見的鏡像方式
VLAN鏡像 VLAN-based Mirroring 以整段VLAN作為鏡像來源,而非單一端口 可一次監察VLAN內所有設備流量,適合語音或監控VLAN整體分析
遠端鏡像(概念層面) Remote Mirroring / RSPAN 把流量送到網絡中另一台交換機上的監察端口,部分實作會經專用VLAN或以第三層封裝傳送 方便集中監察多台設備,但會增加跳數與網絡負載,設定亦較複雜
大部分中小型商廈或舖面工程只需用到本地端口鏡像,已足夠應付日常排障與短期分析需要;跨樓層或跨機房的集中監察平台,則較常涉及遠端鏡像的概念與設定。
與IP電話錄音系統部署的關係
不少商業機構的電話系統已經全面轉為IP電話(IP-PBX),通話以SIP信令建立、以RTP串流傳送語音數據,整套系統本質上就是一種網絡應用。當客戶需要為客服中心、管理處或前台部署通話錄音功能時,最常見亦最穩妥的做法並非在通話路徑上直接加裝錄音設備,而是透過交換機的端口鏡像,把IP-PBX主機所連接的端口,或整段語音VLAN的流量,複製一份送到錄音伺服器所在的監察端口。
錄音伺服器從鏡像流量中被動截取SIP信令與RTP語音封包,再由軟件把同一通話的信令與語音串流配對還原,儲存為完整的通話錄音檔案。這種被動監聽的部署方式有幾個明顯優點:第一,錄音伺服器不在正式通話路徑之內,即使錄音伺服器本身故障或當機,亦完全不會影響話機之間的正常通話;第二,不需要在既有電話系統中加入任何串接設備,減少對原有架構的改動;第三,日後如需擴充監察範圍,只要調整交換機的鏡像設定即可,毋須重新佈線。
但這種做法亦有必須注意的限制。首先,交換機必須支援端口鏡像功能,並具備足夠的內部匯聚頻寬應付語音VLAN的流量,否則鏡像流量在高峰時段有機會被部分丟棄,導致錄音出現斷續或缺失片段。其次,若話機分佈在多台交換機上,工程師須確保每一台交換機都正確設定了鏡像,或改用遠端鏡像把流量集中送到錄音伺服器,否則會出現部分分機無法被錄到的情況。最後,語音VLAN若使用了加密的SIP或SRTP,鏡像流量本身雖然可以被截取,但錄音伺服器仍需具備相應的解密能力才能還原成可聽的錄音內容,這一點在規劃階段須與電話系統供應商一併確認。