網路封包剖析器 Wireshark - daniel-qa/Network GitHub Wiki

網路封包剖析器 Wireshark

  • 下載

https://www.wireshark.org/download.html

應用教學

https://www.readfog.com/a/1651887414906556416

  1. 在Wireshark 的主界面,

選擇菜單欄上 Capture -> Option勾選 WLAN 網卡(這裏需要根據各自電腦網卡使用情況選擇,簡單的辦法可以看使用的 IP 對應的網卡)。

點擊 Start。啓動抓包。

wireshark 啓動後,wireshark 處於抓包狀態中

1、執行需要抓包的操作,如 ping www.baidu.com。

2、操作完成後相關數據包就抓取到了。爲避免其他無用的數據包影響分析,可以通過在過濾欄設置過濾條件進行數據包列表過濾,獲取結果如下。

說明:

ip.addr == 119.75.217.26 and icmp

表示只顯示 ICPM 協議且源主機 IP 或者目的主機 IP 爲 119.75.217.26 的數據包

Wireshakr 抓包界面

說明:數據包列表區中不同的協議使用了不同的顏色區分。協議顏色標識定位在菜單欄 View

WireShark 主要分爲這幾個界面

  1. Display Filter(顯示過濾器), 用於設置過濾條件進行數據包列表過濾。菜單路徑:Analyze --> Display Filters。

  1. Packet List Pane(數據包列表), 顯示捕獲到的數據包,每個數據包包含編號,時間戳,源地址,目標地址,協議,長度,以及數據包信息。不同協議的數據包使用了不同的顏色區分顯示。

  2. Packet Details Pane(數據包詳細信息), 在數據包列表中選擇指定數據包,在數據包詳細信息中會顯示數據包的所有詳細信息內容。數據包詳細信息面板是最重要的,用來查看協議中的每一個字段。各行信息分別爲

(1)Frame: 物理層的數據幀概況

(2)Ethernet II: 數據鏈路層以太網幀頭部信息

(3)Internet Protocol Version 4: 互聯網層 IP 包頭部信息

(4)Transmission Control Protocol: 傳輸層 T 的數據段頭部信息,此處是 TCP

(5)Hypertext Transfer Protocol: 應用層的信息,此處是 HTTP 協議

Wireshark 過濾器設置

初學者使用 wireshark 時,將會得到大量的冗餘數據包列表,以至於很難找到自己自己抓取的數據包部分。

wireshar 工具中自帶了兩種類型的過濾器,學會使用這兩種過濾器會幫助我們在大量的數據中迅速找到我們需要的信息。

(1)抓包過濾器

捕獲過濾器的菜單欄路徑爲 Capture --> Capture Filters

用於在抓取數據包前設置

如何使用?可以在抓取數據包前設置如下。

ip host 60.207.246.216 and icmp

表示只捕獲主機 IP 爲 60.207.246.216 的 ICMP 數據包。獲取結果如下:

(2)顯示過濾器

顯示過濾器是用於在抓取數據包後設置過濾條件進行過濾數據包。通常是在抓取數據包時設置條件相對寬泛,抓取的數據包內容較多時使用顯示過濾器設置條件顧慮以方便分析。同樣上述場景,在捕獲時未設置捕獲規則直接通過網卡進行抓取所有數據包,如下

執行 ping www.huawei.com 獲取的數據包列表如下

觀察上述獲取的數據包列表,含有大量的無效數據。這時可以通過設置顯示器過濾條件進行提取分析信息。

ip.addr == 211.162.2.183 and icmp。並進行過濾。

p.s 過濾網址: dns.qry.name == "example.com"