Wireshark是一個著名的網路封包擷取、分析、以及發送軟體。Kurose所著的著名的Computer Networking: A Top-Down Approach中用來來進行一些lab練習。這邊試做他的Ch1-Getting Started
Wireshark可以在這裡下載
實驗從Taking Wireshark for a Test Run 開始
- 開啟你喜愛的瀏覽器。這裡我將google chrome開啟
- 開啟Wirfshark,啟動後畫面如下:
- 點擊上面圖片左上角的Interface List,或是由工具列下拉式選單中選Capture –> Interfaces…
會顯示出你目前使用的電腦所有的網路介面,每台電腦都會有些地方不一樣 - 將你想要使用的網路介面打勾,然後按下Start按鈕就開始網路封包的擷取。
- 接下來會顯示一個封包擷取視窗,如下。當想要結束擷取時,可以按下工具列上的Stop按鈕,下圖紅色框框處。
- 當Wireshark正在執行封包擷取的時候,在瀏覽器的網址列輸入http://gaia.cs.umass.edu/wireshark-labs/INTRO-wireshark-file1.html,按下Enter,則會有一個網頁會顯示在你的瀏覽器上面
- 一旦你的網頁上有顯示出內容,按下Stop按鈕停止Wireshark封包擷取。因為這台電腦所有與網路交換的封包都會被擷取下來,所以還蠻難在封包列視窗中找到需要的內容,所以在進行實驗的時候要先將不必要的網路應用先關閉以方便協定的觀察,即便是這樣還是會抓到一大堆各式各樣的協定封包。因為這個實驗是要觀察瀏覽器與伺服器間的互動,我們點擊Protocol欄位,讓資料以協定來排序,然後找到HTTP協定的位置。其他更有效率的方法介紹如下。
- 在Filter中輸入”http” (小寫,不需要雙引號),可以很快的過濾出來所需要的資料
- 找到HTTP GET訊息,這是由你的電腦發送給目的端電腦的訊息。當你選到了這個訊息,相關的各層的標頭就會顯示在封包標頭視窗中,將HTTP協定的標頭打開,如下圖
- 完成實驗,離開Wireshark
繳交內容:
- 列出三個出現在第七步驟中的不同的protocol
- 當HTTP GET訊息送出後,過了多久後收到HTTP OK訊息? 請用你的實驗數據計算,本實驗中所需時間是7.072532000 – 6.850493000 = 0.222039 秒。
- gaia.cs.umass.edu的IP位址為何? 你的電腦的IP位址為何?
- 使用Wireshark的print命令,將HTTP GET和OK的訊息列印出來。(由File –> Print…)
GET訊息的內容截圖如下