目錄

簡介

本文檔介紹如何使用Wireshark捕獲和分析網路流量以便進行診斷。

概觀

Wireshark是可用於讀取和分析資料包捕獲（也稱為「TCP轉儲」）的免費應用程式。 資料包捕獲在資料包級別通過網路介面卡顯示所有通訊，從而能夠檢視DNS、HTTP、ping和其他流量型別。資料包捕獲作為深度故障排除的診斷步驟尤其重要，隨著SIG的引入，資料包捕獲現在已經成為診斷過程的基本部分。

附註：Wireshark會捕獲選定介面卡上的所有流量。由於資料包捕獲通常包含個人身份資訊(PII)，因此始終使用安全方法（如Box連結）在支援情況下共用捕獲檔案。

獲取Wireshark

您可以在以下位置下載用於Windows、macOS或Linux的Wireshark:https://www.wireshark.org/

收集資料包捕獲

1. 選擇連線到Internet的網路介面卡，並在Wireshark中開始捕獲。

2. 捕獲時，重現要診斷的問題。

3. 完成後停止捕獲並將檔案另存為.pcap。

基本埠和協定

- 大多數資料包在傳輸層協定TCP或UDP上通訊

- 例如，預設情況下，「DNS」在UDP上運行。如果TCP失敗，它會切換到UDP。

- HTTP和DNS是在傳輸協定+埠的組合上運行的常見協定。

傳輸層協定

連接埠

通訊協定名稱

使用率

TCP

22

SSH

遠端VA訪問

TCP

25

SMTP

VA監控

IP

50

ESP（封裝安全負載）

機密性、資料完整性、源驗證

IP

51

AH（驗證標頭）

資料完整性，源驗證

UDP

53

DNS

DNS預設值

TCP

53

DNS

DNS故障轉移

TCP

80

HTTP

Web流量（未加密）、API

UDP

123

NTP

VA時間同步

TCP

443

HTTPS

加密的Web流量、API、AD聯結器與VA

UDP

443

HTTPS

RC加密的DNS查詢

UDP

500

IKE

IPsec通道協商

UDP

4500

NAT-T

IPsec隧道的NAT遍歷

TCP

8080

HTTP

與VA通訊的AD聯結器

瞭解協定名稱、埠及其用途有助於識別和分析Wireshark中的相關流量。

基本運算子

在Wireshark中構建過濾器字串時，請使用以下運算子：

- ==:等於(示例:ip.dst==1.2.3.4)

- !=:不等於(例如：ip!=dst.1.2.3.4)

- &:以及(示例:ip.dst==1.2.3.4 && ip.src==208.67.222.222)

- ||:或(示例:ip.dst==1.2.3.4) || ip.dst==1.2.3.5)

有關高級過濾器選項，請參閱Wireshark文檔：6.4.建立顯示篩選器表達式

篩選條件

封包擷取可能包含數千個封包。過濾器可幫助您關注特定流量型別：

- 按協定：

- dns — 僅顯示DNS流量

- http || dns — 顯示HTTP或DNS流量

- 按IP地址：

- ip.addr==<IP> — 所有來往流量<IP>

- ip.src==<IP> -來自<IP>的所有流量

- ip.dst==<IP> -到<IP>的所有流量

- 其他：

- tcp.flags.reset.== — 檢查TCP重設（逾時）

- dns.qry.name包含「[域]」 — 與域匹配的DNS查詢

- tcp.port==80 || udp.port/== -埠80上的TCP或UDP流量

檢視和分析資料包

找到資料包後，展開Wireshark中的資料段以分析詳細資訊。熟悉協定結構有助於解釋這些細節，甚至可以在需要時重新構建資料。

跟隨資料流

使用資料包清單查詢請求和響應對。按一下右鍵資料包並選擇Follow > TCP Stream、UDP Stream、TLS Stream或HTTP Stream以檢視相關請求和響應序列。

- 對於具有多個交換的協定（例如HTTP），這比對於單請求協定（例如DNS）更有用。