簡介
本文檔介紹如何使用Wireshark捕獲和分析網路流量以便進行診斷。
概觀
Wireshark是可用於讀取和分析資料包捕獲(也稱為「TCP轉儲」)的免費應用程式。 資料包捕獲在資料包級別通過網路介面卡顯示所有通訊,從而能夠檢視DNS、HTTP、ping和其他流量型別。資料包捕獲作為深度故障排除的診斷步驟尤其重要,隨著SIG的引入,資料包捕獲現在已經成為診斷過程的基本部分。
附註:Wireshark會捕獲選定介面卡上的所有流量。由於資料包捕獲通常包含個人身份資訊(PII),因此始終使用安全方法(如Box連結)在支援情況下共用捕獲檔案。
 
獲取Wireshark
您可以在以下位置下載用於Windows、macOS或Linux的Wireshark:https://www.wireshark.org/
收集資料包捕獲
- 選擇連線到Internet的網路介面卡,並在Wireshark中開始捕獲。
 
- 捕獲時,重現要診斷的問題。
 
- 完成後停止捕獲並將檔案另存為
.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)更有用。