天天看點

《Wireshark網絡分析實戰》—第1章1.3節開始抓包

本節書摘來自異步社群《wireshark網絡分析實戰》一書中的第1章1.3節開始抓包,作者【以色列】yoram orzach,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視。

1.3 開始抓包

wireshark網絡分析實戰

本節首先将介紹如何啟動wireshark,然後會講解布放好wireshark之後,如何對其進行配置,以應對不同的抓包場景。

1.3.1 準備工作

安裝過wireshark之後,需點選桌面→開始→程式菜單或快速啟動欄上相應的圖示,運作該資料包分析軟體。

wireshark一旦運作,便會彈出圖1.6所示的視窗(wireshark1.10.2運作視窗)。

《Wireshark網絡分析實戰》—第1章1.3節開始抓包

1.3.2 操作方法

要想讓wireshark軟體能抓到資料包,有以下三種途徑:點選capture菜單下的相關菜單項;點選快速啟動工具欄裡的綠色圖示;點選wireshark主視窗左側居中的start區域裡的相關選項,如圖1.6所示。此外,在抓包之前,還可對wireshark的某抓包選項進行配置。

如何選擇實際用來抓包的網卡

若隻是點選圖1.7所示wireshark快速啟動工具欄裡的綠色圖示(正數第三個圖示),wireshark在抓包時,實際使用的網卡将會是該軟體預設指定的網卡(如何更改這一預設配置,詳見1.3.3節)。要選擇wireshark抓包時實際使用的網卡,請點選快速啟動欄裡左邊第一個圖示(list the available capture interfaces圖示),wireshark capture interfaces視窗會立刻彈出,如圖1.8所示。

《Wireshark網絡分析實戰》—第1章1.3節開始抓包

要想得知哪塊網卡為有效網卡,最佳途徑是觀察其是否能夠收發流量。通過圖1.8,可以得知wireshark感覺到的各塊網卡正在收、發的資料包的個數(packets列)及速率(packets/s列)。

《Wireshark網絡分析實戰》—第1章1.3節開始抓包

若wireshark的版本不低于1.10.2,則可以選擇一塊以上的網卡來同時抓包。如此行事的好處是,隻要wireshark主機配有多塊網卡,便可同時監控多個伺服器端口、多個路由器(或其他網絡裝置)端口的流量。圖1.9所示為這樣的一個應用場景。

《Wireshark網絡分析實戰》—第1章1.3節開始抓包

如何配置實際用來抓包的網卡

要想對實際用來抓包的網卡做進一步的配置,請點選capture菜單中的options菜單項,wireshark capture options視窗會立刻彈出,如圖1.10所示。

《Wireshark網絡分析實戰》—第1章1.3節開始抓包

在圖1.10所示的wireshark capture options視窗中,可配置以下參數。

1.在wireshark capture options視窗的上半部分區域,可以點選實際用來抓包的網卡。

2.在wireshark capture options視窗的左中區域有一個use promiscuous mode on all interfaces複選框。選中時,會讓wireshark主機抓取交換機(端口鏡像功能)重定向給自己的所有資料包,哪怕資料包的目的(mac/ip)位址不是本機位址;否則,wireshark主機隻能抓取到目的(mac/ip)位址為本機位址的資料包,外加廣播及多點傳播資料包。

3.在某些情況下,選中該複選框後,wireshark将不會從無線網卡抓包。是以,若選用無線網卡抓包,且一無所獲時,請取消勾選該複選框。

4.在use promiscuous mode on all interfaces複選框下有capture files字樣,其後有個files輸入欄,可在欄内輸入一個檔案名,然後再點選use multiple files複選框。這麼一點,wireshark不但會把所抓資料儲存在由其命名的檔案内(其系統路徑可由使用者指定),而且還可根據特定的需求,以多個檔案的形式存儲。當以多個檔案的形式存儲時,在同一目錄下,wireshark會自動在原始檔案名後添加字尾“ xxxxx 具體時間”來加以區分。若所要抓取的資料較多,wireshark的這一功能便非常有用。譬如,在網卡收到的流量較高,或需要長期抓取資料的情況下,就可以利用這一多檔案存儲功能,基于特定的時間間隔(點選第二個next file every複選框)或希望儲存的每個抓封包件的大小(點選第一個next file every複選框),讓wireshark另行打開一個新的檔案來儲存所抓取的資料。

5.在wireshark capture options視窗的左下區域,有stop capture automatically字樣。可點選其名下的三個複選框,讓wireshark根據抓包時長、所儲存的抓封包件的大小或所抓取的資料包的數量,來決定是否停止抓包任務。

6.在wireshark capture options視窗的右中區域,有display options字樣。可點選其名下的三個複選框,來配置wireshark抓包主視窗的顯示選項。點選update list of packets in real time複選框,wireshark抓包主視窗将會實時顯示抓取到的所有資料包;點選automatically scroll during live capture複選框,wireshark抓包主視窗會在實時顯示資料包時自動滾屏;點選hide capture info dialog複選框,wireshark将不再彈出與實際用來抓包的網卡相關聯的流量統計視窗。一般而言,無需改變wireshark軟體的上述任何一項預設配置。

7.在wireshark capture options視窗的右下區域,有name resolution字樣。可點選其名下的4個複選框,來調整與名字解析有關的配置。點選前三個複選框,就會讓wireshark在顯示資料時,解析出與mac位址、ip位址以及第四層協定端口号相對應的名稱(比如,mac位址所隸屬的廠商名、與ip位址相對應的主機名或域名、與tcp/udp端口号相對應的應用程式名等);點選最後一個複選框use external network name resolver,wireshark便會調用由作業系統指明的名字解析程式(比如,dns解析程式),來解析上述名稱。

1.3.3 幕後原理

wireshark的抓包原理非常簡單。把wireshark主機上的網卡接入有線或無線網絡開始抓包時,介于有線(或無線)網卡和抓包引擎之間的軟體驅動程式便會參與其中。在windows和unix平台上,這一軟體驅動程式分别叫做winpcap和libcap驅動程式;對于無線網卡,行使抓包任務的軟體驅動程式名為airpacp驅動程式。

1.3.4 拾遺補缺

若(資料包的收、發)時間是一個重要因素,且還要讓wireshark主機從一塊以上的網卡抓包,則wireshark主機就必須與抓包對象(受監控主機或伺服器)同步時間,可利用ntp(網絡時間協定)讓wireshark主機/抓包對象與某個中心時鐘源同步時間。

當網管人員既需觀察wireshark抓封包件,也需檢查抓包對象所生成的日志記錄,以求尋得排障線索時,wireshark主機與抓包對象的系統時鐘是否同步将會變得無比重要。比方說,wireshark抓封包件顯示的發生tcp重傳的時間點,與受監控伺服器(生成的)日志顯示的發生應用程式報錯的時間點相吻合,則可以判斷tcp重傳是拜伺服器(上運作的應用程式)所賜,與網絡無關。

wireshark軟體所采用的時間取自作業系統(windows、linux等)的系統時鐘。至于不同os中ntp的配置方法,請參考相關作業系統配置手冊。

以下所列為在microsoft windows 7作業系統内配置時間同步的方法。

1.單擊工作列最右邊的時間區域,會出現時間視窗。

2.在時間視窗中點選“更改日期和時間設定”,會彈出“日期和時間”視窗。

3.在“日期和時間”視窗中,點選“internet時間”标簽,再點選“更改設定”,會彈出“internet時間設定”視窗。

4.在“internet時間設定”視窗中,選中“與internet時間伺服器同步”複選框,在“伺服器”後的輸入欄内輸入時間伺服器(ntp)的ip位址,再點确定按鈕。

注意:

在microsoft windows 7及後續版本的作業系統中,預設包含了幾個時間伺服器(格式為域名)。可選擇一個時間伺服器,讓網絡内的所有主機都與其同步時間。

ntp是一種網絡協定,網絡裝置之間可藉此協定同步各自的時間。可把網絡裝置(路由器、交換機、防火牆)及伺服器配置為ntp用戶端,令它們與同一台ntp時間伺服器(時鐘源)對時(同步時間),時間精度要取決于那台時間伺服器所處的層級(stratum)或等級(level)。ntp時間伺服器所處層級越高,其所提供的時間也就越精确。直連原子時鐘并提供ntp對時服務的裝置被稱為1級時鐘源,其精度也最高。

rfc 1059(ntpv1)是定義ntp的第一份标準文檔,rfc 1119(ntpv2)則是第二份;目前常用的ntpv3和v4則分别定義于rfc 1305和rfc 5905。

1.3.5 進階閱讀

可浏覽以下站點,來了解與pacp驅動程式有關的資訊。

本文僅用于學習和交流目的,不代表異步社群觀點。非商業轉載請注明作譯者、出處,并保留本文的原始連結。

繼續閱讀