運維實戰家之設備報文捕獲技巧

前言


你是否也遇到過這樣的情況?在發生故障時要進行設備抓包,於是開始查詢對應設備手冊尋找抓包方法,等你千辛萬苦找到後故障已經消失錯過了最佳抓包時間,於是你發誓要記下所有設備的抓包方法,但又因為運維的設備型號太多並且每種型號的抓包方式不同而放棄。其實雖然銳捷不同類型設備的抓包方法不同,但一些設備底層設計的抓包方式是相同的,比如數據中心交換機和出口網關EG的抓包方法看起來不同但實際上都是通過PCAP功能進行抓包的。本文中作者為大家彙總了銳捷常見設備的報文捕獲方法及技巧,你只需學會常用的幾種抓包實現方式並瞭解不同設備通過哪種方式實現,就能觸類旁通,玩轉銳捷設備報文捕獲。


運維實戰家之設備報文捕獲技巧


交換機設備抓包


園區網交換機


園區網交換機是通過端口鏡像功能實現報文捕獲的,端口鏡像是通過在設備上將一個或多個源端口的數據流量複製到一個或多個指定端口上,以便對被監控流量進行故障定位、流量分析、流量備份等。常用的端口鏡像有兩種,本地端口鏡像(以下簡稱“SPAN”)和遠程端口鏡像(以下簡稱“RSPAN”)。
SPAN是本地端口鏡像用於在單臺設備進行一對一端口鏡像或多對一端口鏡像,將一個或多個端口的流量複製到另外一個端口上,並且還可以在此基礎上添加ACL匹配數據流達到更精細化的基於流的端口鏡像,此外還可以通過交換機的WEB頁面配置SPAN。

運維實戰家之設備報文捕獲技巧

運維實戰家之設備報文捕獲技巧


RSPAN是遠程端口鏡像目前有兩種使用場景, 第一種是用於單臺設備進行一對多端口鏡像或者多對多端口鏡像,第二種用於在二層的環境下跨越多臺設備進行端口鏡像。

運維實戰家之設備報文捕獲技巧

運維實戰家之設備報文捕獲技巧

數據中心交換機


數據中心交換機既可以通過端口鏡像功能進行報文捕獲,還可以使用PCAP功能進行報文捕獲。PCAP(Packet Capture)是一種網絡設備支持的抓包功能,類似於個人電腦上的抓包軟件。可以將進入交換機或者從交換機發的報文抓取下來保存在文件中或直接顯示出來。PCAP可以通過兩種方式進行抓包,控制面抓包和轉發面抓包。


控制面抓包可以抓取控制面或者某個物理接口下匹配7元組信息(源MAC、目的MAC、二層協議類型、源IP、目的IP、三層協議類型、TCP/UDP端口信息)的報文。
轉發面抓包可以抓取匹配ACL規則的報文。

運維實戰家之設備報文捕獲技巧


抓取攜帶VLAN TAG的報文


在排查一些交換機問題時,需要抓取帶VLAN TAG的報文。大部分Linux終端或蘋果Mac終端無需做任何設置默認可以抓取到攜帶VLAN TAG的報文。Windows終端的大部分網卡驅動默認會在接收數據包的時候過濾VLAN TAG,使得用Wireshark等軟件抓到的數據包中不含VLAN TAG。可以通過修改Windows終端的註冊表讓驅動保留VLAN TAG,就能抓到帶VLAN TAG的報文了。


運維實戰家之設備報文捕獲技巧


出口設備抓包


出口網關


出口網關(以下簡稱“EG”)是通過PCAP功能實現抓包,可以在命令行下或者WEB頁面下進行報文捕獲。EG命令行下配置PCAP參考上節數據中心交換機PCAP控制面抓包配置此處不在贅述。在EG的WEB頁面下進行報文捕獲是比較常用的方法,操作方法如下。
(1)在EG的WEB頁面點擊“高級-抓包工具”打開“抓包診斷工具”(老版本EG點擊“高級-一鍵收集-抓包診斷工具”)

運維實戰家之設備報文捕獲技巧


(2)添加抓包規則,在設置抓包規則時可以設置7元組信息(源MAC、目的MAC、二層協議類型、源IP、目的IP、三層協議類型、TCP/UDP端口信息)進行報文過濾

運維實戰家之設備報文捕獲技巧


(3)添加抓包點,配置抓包接口和抓包規則

運維實戰家之設備報文捕獲技巧


(4)完成配置後點擊“開始抓包”,EG每次抓包最大隻能抓取20MB的報文,超過此大小會自動停止,點擊“停止抓包”後,點擊“下載文件”對捕獲報文進行下載

運維實戰家之設備報文捕獲技巧


防火牆


防火牆是通過Sniffer功能實現抓包,可以在命令下或者WEB頁面下進行報文捕獲。
命令行下通過Sniffer抓取的報文會直接打印出來,將打印出來的報文保存為文本文件,然後通過“Perl解釋器”可將文本格式報文轉換為我們常用的Wireshark格式報文,具體轉換方法可在銳捷官網下載防火牆產品一本通查看。

運維實戰家之設備報文捕獲技巧

運維實戰家之設備報文捕獲技巧


在防火牆的WEB頁面下進行報文捕獲是比較常用的方法,操作方法如下。
(1)在防火牆的WEB界面點擊“網絡設置-網絡”打開“數據包捕獲”

運維實戰家之設備報文捕獲技巧


(2)新建抓包規則,選擇抓包接口,並可設置過濾規則進行報文過濾

運維實戰家之設備報文捕獲技巧


(3)啟動抓包,開始捕獲數據包,完成抓包後停止抓包,並下載報文

運維實戰家之設備報文捕獲技巧


路由器


在路由器上進行報文捕獲分為兩種情況,捕獲路由器二層口報文和捕獲路由器三層口報文。
路由器的二層接口支持端口鏡像功能,直接使用端口鏡像功能進行報文捕獲即可。
目前並不是所有路由器的三層口都支持端口鏡像功能。如果你的路由器三層口支持端口鏡像直接使用端口鏡像進行報文捕獲即可;如果你的路由器的三層口不支持端口鏡像但你的路由器上有二層口,可以將三層口串接到路由器自身的二層口上,在二層口上進行端口鏡像;如果你的路由器的三層口不支持端口鏡像並且你的路由器上也沒有二層口,可以將三層口串接一臺支持端口鏡像的交換機,在交換機上配置端口鏡像進行報文捕獲。


無線設備抓包


無線控制器


捕獲流經無線控制器(以下簡稱“AC”)的報文有兩種方法,PCAP和端口鏡像。
第一種方法是使用PCAP功能在AC的WEB頁面上進行抓包。點擊“診斷-抓包診斷”進入報文抓包工具,抓包步驟參考上小節EG的WEB頁面抓包步驟此處不在贅述。需要注意的是AC的每次抓取報文大小與EG有所不同,AC默認抓包達到2MB或抓包個數為1024個報文或抓包時長10分鐘,任意一個條件達到則自動停止抓包。目前最新版本的AC已支持WEB頁面上抓包,如果你使用的AC版本不支持WEB頁面上抓包可升級軟件版本或使用第二種方法端口鏡像功能進行報文捕獲。

運維實戰家之設備報文捕獲技巧


第二種方法是使用端口鏡像功能。對於支持端口鏡像的AC可以直接在AC上配置端口鏡像,目前大部分型號的AC都支持端口鏡像功能。需要注意是虛擬化AC不支持配置端口鏡像功能,如果AC部署了虛擬化或者使用的AC型號不支持端口鏡像,可通過在AC的上聯交換機上配置端口鏡像捕獲AC上報文。


無線接入點


如果想要捕獲流經無線接入點(以下簡稱“AP”)的報文,可通過在AP的上聯POE交換機上配置端口鏡像進行報文捕獲。


抓取空口報文


作者經常被問題一個問題,為什麼在終端上直接抓無線網卡抓包,抓到的數據幀頭部是以太網,而不是802.11呢?這是因為終端已經進行了無線幀的轉化,如果想捕獲802.11的數據幀那麼就需要進行空口抓包。


大部分Linux終端或蘋果Mac終端可通過電腦自帶的無線網卡來抓取無線空口報文,將Linux終端或蘋果Mac終端的無線網卡配置成監聽模式,然後直接使用Wireshark抓包即可。但對於Windows終端而言,Windows大部分的無線網卡驅動不允許你將無線網卡切換到監聽模式,一般可以通過以下方法在Windows下抓取無線空口報文:
(1)Wireshark+Airpcap抓包工具
如果想在Windows下使用Wireshark抓取空口報文,要使用Airpcap抓包工具,Airpcap是被設計用來突破Windows強加給無線數據包分析的限制的,但價格比較昂貴。
(2)Omnipeek+Omnipeek支持的無線網卡+Omnipeek無線網卡驅動
使用Omnipeek進行無線空口抓包是目前最常用的方法,需要注意的是Omnipeek只支持部分無線網卡捕獲無線空口報文,支持的無線網卡型號可在Omnipeek官網上查詢,同時還需要安裝特殊的無線網卡驅動才可以捕獲到無線空口報文。

運維實戰家之設備報文捕獲技巧


需要注意的是捕獲無線空口報文與捕獲有線報文有所不同,在抓取無線空口報文時,同一時間只能抓取一個信道的報文。


認證設備抓包


MCP


MCP可以通過Linux服務器上的Tcpdump工具進行抓包,可以在命令行下和WEB頁面下進行報文捕獲。如果說Wireshark是世界上最流行的圖形化數據包分析工具,那麼Tcpdump是世界上最流行的命令行數據包分析工具。通過SSH登錄到MCP的Linux服務器上使用Tcpdump命令進行抓包,使用Tcpdump抓包後可以直接在命令行下進行分析或者將報文導出使用Wireshark進行分析,下表為大家整理了常用的Tcpdump命令參數。

運維實戰家之設備報文捕獲技巧


運維實戰家之設備報文捕獲技巧


在MCP的WEB頁面下進行報文捕獲是比較常用的方法,點擊“系統-故障排查工具”(老版本MCP點擊“系統配置-日誌收集”)進入報文抓包工具,點擊“開始抓包”抓取網絡中的報文,停止後可以直接將報文下載進行分析。

運維實戰家之設備報文捕獲技巧


SMP/SAM+


在排查認證問題時,通常需要在終端故障時在SMP/SAM+的Windows服務器上安裝Wireshark進行抓包分析Radius或者LDAP等報文的交互情況。但在終端故障的出現時間不固定的情況下,很難把控抓包開始時間,如果一直開啟抓包很有可能在你去關閉抓包時故障時的報文已經被覆蓋掉。
在SMP/SAM+的Windows服務器上使用Wireshark進行報文捕獲時,推薦將Wireshark設置成分片抓包的方式進行抓包,在捕獲選項頁面中選擇輸出選項,作者的習慣是每捕獲100MB保存一個報文,一共保存100個報文,循環覆蓋保存,這樣設置後最多佔用硬盤10G的存儲空間,不必擔心報文過多將硬盤佔滿,讀者可根據自身的實際情況設置。這樣設置後開啟抓包,故障再出現時就不用擔心抓不到故障報文了。

運維實戰家之設備報文捕獲技巧


ESS


ESS的報文捕獲方式和MCP相似也是通過Linux服務器上的Tcpdump工具進行報文捕獲的此處不在贅述。

運維實戰家之設備報文捕獲技巧


運維實戰家之設備報文捕獲技巧

“運維實戰家”專欄,從技術到實踐,和您聊聊運維的那些事兒


運維實戰家之設備報文捕獲技巧

(銳捷網絡技術服務部)


分享到:


相關文章: