Wireshark網路分析系列
下載和安裝好Wireshark之後,啟動Wireshark並且在介面列表中選擇介面名,然後開始在此介面上抓包。例如,如果想要在無線網路上抓取流量,點選無線介面。點選Capture Options可以配置高階屬性,但現在無此必要。
點選介面名稱之後,就可以看到實時接收的報文。Wireshark會捕捉系統傳送和接收的每一個報文。如果抓取的介面是無線並且選項選取的是混合模式,那麼也會看到網路上其他報文。
上端面板每一行對應一個網路報文,預設顯示報文接收時間(相對開始抓取的時間點),源和目標IP地址,使用協議和報文相關資訊。點選某一行可以在下面兩個視窗看到更多資訊。“+”圖示顯示報文裡面每一層的詳細資訊。底端視窗同時以十六進位制和ASCII碼的方式列出報文內容。
需要停止抓取報文的時候,點選左上角的停止按鍵。
色彩標識:
進行到這裡已經看到報文以綠色,藍色,黑色顯示出來。Wireshark通過顏色讓各種流量的報文一目瞭然。比如預設綠色是TCP報文,深藍色是DNS,淺藍是UDP,黑色標識出有問題的TCP報文——比如亂序報文。
報文樣本:
比如說你在家安裝了Wireshark,但家用LAN環境下沒有感興趣的報文可供觀察,那麼可以去Wireshark wiki下載報文樣本檔案。
開啟一個抓取檔案相當簡單,在主介面上點選Open並瀏覽檔案即可。也可以在Wireshark裡儲存自己的抓包檔案並稍後開啟。
過濾報文:
如果正在嘗試分析問題,比如打電話的時候某一程式傳送的報文,可以關閉所有其他使用網路的應用來減少流量。但還是可能有大批報文需要篩選,這時要用到Wireshark過濾器。
最基本的方式就是在視窗頂端過濾欄輸入並點選Apply(或按下回車)。例如,輸入“dns”就會只看到DNS報文。輸入的時候,Wireshark會幫助自動完成過濾條件。
也可以點選Analyze選單並選擇Display Filters來建立新的過濾條件。
另一件很有趣的事情是你可以右鍵報文並選擇Follow TCP Stream。
你會看到在伺服器和目標端之間的全部會話。
關閉視窗之後,你會發現過濾條件自動被引用了——Wireshark顯示構成會話的報文。
檢查報文:
選中一個報文之後,就可以深入挖掘它的內容了。
也可以在這裡建立過濾條件——只需右鍵細節並使用Apply as Filter子選單,就可以根據此細節建立過濾條件。
Wireshark是一個非常之強大的工具,第一節只介紹它的最基本用法。網路專家用它來debug網路協議實現細節,檢查安全問題,網路協議內部構件等等。
更多資訊
按照國際慣例,從最基本的說起。
抓取報文:
下載和安裝好Wireshark之後,啟動Wireshark並且在介面列表中選擇介面名,然後開始在此介面上抓包。例如,如果想要在無線網路上抓取流量,點選無線介面。點選Capture Options可以配置高階屬性,但現在無此必要。
點選介面名稱之後,就可以看到實時接收的報文。Wireshark會捕捉系統傳送和接收的每一個報文。如果抓取的介面是無線並且選項選取的是混合模式,那麼也會看到網路上其他報文。
上端面板每一行對應一個網路報文,預設顯示報文接收時間(相對開始抓取的時間點),源和目標IP地址,使用協議和報文相關資訊。點選某一行可以在下面兩個視窗看到更多資訊。“+”圖示顯示報文裡面每一層的詳細資訊。底端視窗同時以十六進位制和ASCII碼的方式列出報文內容。
需要停止抓取報文的時候,點選左上角的停止按鍵。
色彩標識:
進行到這裡已經看到報文以綠色,藍色,黑色顯示出來。Wireshark通過顏色讓各種流量的報文一目瞭然。比如預設綠色是TCP報文,深藍色是DNS,淺藍是UDP,黑色標識出有問題的TCP報文——比如亂序報文。
報文樣本:
比如說你在家安裝了Wireshark,但家用LAN環境下沒有感興趣的報文可供觀察,那麼可以去Wireshark wiki下載報文樣本檔案。
開啟一個抓取檔案相當簡單,在主介面上點選Open並瀏覽檔案即可。也可以在Wireshark裡儲存自己的抓包檔案並稍後開啟。
過濾報文:
如果正在嘗試分析問題,比如打電話的時候某一程式傳送的報文,可以關閉所有其他使用網路的應用來減少流量。但還是可能有大批報文需要篩選,這時要用到Wireshark過濾器。
最基本的方式就是在視窗頂端過濾欄輸入並點選Apply(或按下回車)。例如,輸入“dns”就會只看到DNS報文。輸入的時候,Wireshark會幫助自動完成過濾條件。
也可以點選Analyze選單並選擇Display Filters來建立新的過濾條件。
另一件很有趣的事情是你可以右鍵報文並選擇Follow TCP Stream。
你會看到在伺服器和目標端之間的全部會話。
關閉視窗之後,你會發現過濾條件自動被引用了——Wireshark顯示構成會話的報文。
檢查報文:
選中一個報文之後,就可以深入挖掘它的內容了。
也可以在這裡建立過濾條件——只需右鍵細節並使用Apply as Filter子選單,就可以根據此細節建立過濾條件。
Wireshark是一個非常之強大的工具,第一節只介紹它的最基本用法。網路專家用它來debug網路協議實現細節,檢查安全問題,網路協議內部構件等等。