做爲軟件測試工程師,你們在工做中確定常常會用到各類抓包工具來輔助測試,好比瀏覽器自帶的抓包工具-F12,方便又快捷;好比時下特別流行的Fiddler工具,使用各類web和APP測試的各類場景的抓包分析。可是,今天我要給你們分享的抓包工具,叫作Wireshark,是一款專一於網絡封包分析,相比於其餘的抓包軟件有本身的特點和優點的一款報文捕獲工具。html
去Wireshark的官網,下載這個工具的安裝包:https://www.wireshark.org/download.htmlweb
一路next安裝,最後重啓一下電腦,就能夠安裝成功!瀏覽器
安裝完成以後,找到這個文件的桌面快捷方式:網絡
雙擊打開運行軟件:tcp
打開便可看到如上圖的界面。咱們來認識一下這個軟件的基本界面。
一、Wireshark這個工具是基於接口抓包的。
若是電腦主機上有多個網絡接口的話,能夠點擊’標號1‘的按鈕,選擇對應的網絡接口抓取對應的報文。工具
如上是點擊按鈕1 出現的全部接口列表,通常選擇本身的上網的接口,或者關心的流量經過的接口,而後點擊’開始‘按鈕,便可開始抓包。post
二、除了上面的方法開始抓包以外,還能夠在2區域+3按鈕開始抓包。
在區域2,也能夠看到全部的網絡接口,一樣選擇本身須要抓取的接口,而後點擊按鈕3,也能夠開始抓取報文。測試
抓包spa
通過上述操做以後,Wireshark工具已經開始抓取報文了,此時用瀏覽器訪問你測試的web頁面,交互的報文就會被所有抓取,以下圖所示。3d
首先,來認識一下頁面上方的幾個經常使用功能。
區域1,表示當前工具正在捕獲報文,在抓包進行時;區域2有兩個按鈕,紅色的按鈕,表示中止抓包,點擊後便可中止捕獲;綠色按鈕,表示從新抓取報文,點擊後會提示是否保存:
根據本身的需求選擇保存或者不保存報文,而後工具會清除以前的報文從新開始抓取;區域3,是爲了過濾用戶關心的報文,有必定的過濾規則。咱們來羅列一些經常使用的過濾使用方法。
1)過濾源IP以及目的IP:
在wireshark的過濾規則框Filter中輸入過濾條件。
如查找目的地址爲120.24.89.47 的包,ip.dst==120.24.89.47;查找源地址爲192.168.1.37的包,ip.src==192.168.1.37。
2)端口過濾:
如過濾80端口,在Filter中輸入,tcp.port==80,這條規則是把源端口和目的端口爲80的都過濾出來。
使用tcp.dstport==80只過濾目的端口爲80的,tcp.srcport==80只過濾源端口爲80的包。
3)協議過濾:
比較簡單,直接在Filter框中直接輸入協議名便可,如過濾HTTP的協議,TCP協議等。HTTP模式過濾。
如過濾get包,http.request.method=="GET",過濾post包,http.request.method=="POST"。
4)鏈接符and的使用。
過濾兩種條件時,使用and鏈接,如過濾ip爲192.168.1.37而且爲tcp協議的,ip.src==192.168.1.37 and tcp。
報文分析
抓取而且過濾出相應的報文,咱們就能夠開始進行詳細的報文分析了。雙擊其中一個報文,便可打開這個報文的詳細內容,以下圖所示:
第一層Frame I:TCP/IP 協議棧中的物理層
第二層Ethernet II:TCP/IP 協議棧中的數據鏈路層,也就是現實網卡的源目MAC地址,依據這部分信息來作二層轉發;
第三層Internet Protocol : TCP/IP 協議棧中的網絡層,發明了IP協議,因此報文在這一層會帶上源目IP地址。
第四層 Transmission Control Protocol: TCP/IP 協議棧中的傳輸層,定義了TCP協議和UDP協議,以及定義了端口的概念。因此在這一層的安博文,會帶上協議的源目端口。
總結
以上是Wireshark這個抓包工具的基本使用方法,後面我會再出系列文章,詳細分析一些你們工做中比較經常使用的協議,來幫助你們定位和分析測試工做中的問題!
原文出處:https://www.cnblogs.com/tricy-nmb/p/11982633.html