WireShark 工具使用
WireShark 工具使用
簡介 |
說明如何使用wireshark 工具分析網路封包進行問題分析 |
作者 |
胡永祥 |
1. 前言
專案進行中與其他系統介面整合時,往往會有公司開發的程式與客戶現行的系統整合不順利,需要問題分析,看雙方哪邊的介面協定不符規範,而導致無法介接成功.這時就需要一個網路封包分析工具來分析原因.
2. 目的
在此介紹一個最通用的網路封包分析工具- Wire Shark ,說明基本的使用方式與以一個SMPP client 與SMSC 介接的案例簡要說明.
3. Wire Shark 安裝
(1) 請至URL 下載 Wire Shark
https://www.wireshark.org/download.html
(2) 依據OS 版本選取對應的wirshark 進行安裝,安裝時按照”next” 步驟安裝即可.


4. Wire Shark 使用
4.1 線上直接抓取網路封包
(1) 開啟wire shark工具

(2) 功能列選“Capture” 下的“options” ,在“Input” 選擇要抓封包的介面.

(3) 功能列選“Capture” 下的“options” ,在“Output” 選擇要存放此封包檔案的目錄,設定完存檔目錄後,點選“Start” 開始進行網路封包收集.


(4) 也可在功能列點選“Capture” 下的“start” ,直接開始進行網路封包收集

4.2 開啟CAP 檔案
(1) 在Linux 上直接執行” tcpdump” 收集網路封包
(2) 以wire shark 開啟cap 檔

4.3 分析網路封包
(1) 在紅框處輸入要分析的條件,如 tcp , smpp, http , https … 也可輸入ip 或 port ,去濾出想要看的封包.

只濾出tcp 範例:

只濾出port 範例:

只濾出IP 範例:

(2) 追蹤TCP Stream 操作
先選擇要追蹤的標的,滑鼠右鍵選“Fellow” 和 “ TCP Stream”

相關的TCP Stream 封包全部濾出的結果

5. 案例說明
以實際專案查測SMPP 對 SMSC 通訊協定案例說明
(1) 在SMPP client 收集到的網路份包如下

可以看到一個完整的SMPP 通訊協定流程:
封包ID 6 , SMPP client 發送 “Submit_sm “ 給 SMSC
封包ID 9 , SMSC 發送 “Submit_sm - response “ 給 SMPP client
封包ID 14 , SMSC 發送 “Deliver_sm “ 給 SMPP client
封包ID 16 , SMPP client 發送 “Deliver_sm - response“ 給 SMSC
所以從此封包,我們可初步觀察雙方的通訊協定是成功的
(2) 若要查看SMPP 通訊協定的傳遞參數,可以展開下方的內容逐一查看參數的內容
