第七組抓包分析
網路抓包分析作業
一:實驗目的:
學習使用網路資料抓包軟體Wireshark,
對互連網進行資料抓包,鞏固對所學知識的理解
二:實驗內容:
分析傳輸層協議(TCP、UDP)的報文格式,TCP協議的連線管理。
分析網路層協議的報文格式,IP、ICMP的報文格式。
分析資料鏈路層的幀格式。
三:實驗工具
Wireshark抓包軟體
四:實驗步驟
安裝Wireshark,簡單描述安裝步驟。
開啟wireshark,選擇介面選項列表。或單擊“Capture”,配置“option”選項。
設定完成後,點選“start”開始抓包,顯示結果。
選擇某一行抓包結果,雙擊檢視此資料包具體結構
五:分析
傳輸層分析:(網址www.battlenet.com.cn [114.113.217.11])
Tcp報文格式
Wireshark抓包分析
源埠/目的埠:
埠是傳輸層與應用層的服務介面。用於標示和區分源端裝置和目的端裝置的應用程序。此次抓包的結果為源埠(source port:56274)目的埠(destination port:443)
確認號(Sequence number)
Sequence Number
確認號(32bit):
Acknowledgment Number它包涵了傳送確認一端所期望收到的下一個順序號。因此確認序列號應當是上次成功接收到資料的順序號加1。只有ACK標誌為1時確認序號欄位才有效。
首部長度(Header length)
佔四位,指出TCP首部共有多少4個位元組,長度在20-60之間。在報文中是20位元組。
URG(Urgent Pointer Field Significant):
當URG=1時,表面緊急指標有效。他告訴系統次報文中有緊急資料需要快速處理。在這裡的報文中為零說明沒有緊急報文
ACK(Acknowledgement Field Signigicant):確認號欄位,該欄位為1時表示應答欄位有效,即TCP應答號將包含在TCP報文中。
PSH(Push Function): 推送功能,所謂推送功能指的是接收端在接收到資料後立即推送給應用程式,而不是在緩衝區中排隊。
RST(Reset the connection): 重置連線。當為1時表面出現差錯,必須釋放連線,重新建立連線
SYN(Synchronize sequence numbers):同步序列號,用來發起一個連線請求。
FIN(No more data from sender):表示傳送端傳送任務已經完成。
視窗欄位(16bit):
表示現在執行對方傳送的資料量。也就是告訴對方,從本報文段的確認號開始允許對方傳送的資料量。由報文可以看出該視窗允許傳送262144([Calculated window size: 262144])的資料量。
校驗和(Checksum):
佔2位元組。校驗和欄位檢驗的範圍包括首部和資料,用於校驗TCP報頭部分和資料部分的正確性。(Checksum: 0xc4f9 [unverified])
UDP報文分析
Wireshark抓包分析
與TCP相比,UDP僅有源/目的埠,長度,校驗和及資料,因此不難看出UDP的無連線,不提供可靠性,無流量控制,傳輸速度快,協議開銷小的特點。
三次握手分析
傳送連線請求,syn=1,seq=0
伺服器收到請求,SYN=1 ,ACK=1,請求號seq=0 ,確認號 ack=1
客戶收到確認,傳送 ACK=1,確認號 ack=1,請求號seq=1,伺服器收到後建立連線。
Tcp終止連線。
客戶傳送終止請求 FIN=1 ,seq=52828。
伺服器收到請求,傳送ACK=1,請求號seq=2609.確認號ack= 52829.
之後伺服器再次確認,傳送FIN=1,ACK=1,seq=455395, seq=4611
客戶收到確認,再發送ACK=1,ask=455396,seq=4611
網路層協議分析
ip的格式圖
Wireshark抓包分析
版本號:【 Version: 4】標明瞭IP協議的版本號,目前為4。
頭部長度:IP報頭的長度。固定部分的長度(20位元組)和可變部分的長度之和。共佔4位。最大為1111,即10進位制的15,代表IP報頭的最大長度可以為15個32bits(4位元組),也就是最長可為15*4=60位元組,除去固定部分的長度20位元組,可變部分的長度最大為40位元組。IP報文中20bit的數量【Header Length: 20 bytes (5)】。
服務型別:佔8位,用來獲得更好的服務,但實際上一直沒有被使用過。1998年IETF把這個欄位改名為區分服務DS(Differentiated Services)。只有在使用區分服務時,這個欄位才起作用。【Differentiated Services Field: 0x00 (DSCP: CS0, ECN: Not-ECT)】。
總長度:整個資料包的長度,最長可達65535位元組【Total Length: 250】。
標識:IP軟體在儲存器中維持一個計數器,每產生一個數據報,計數器就加1,並將此值賦給標識欄位。但這個“標識”並不是序號,因為IP是無連線服務,資料報不存在按序接收的問題。
【Identification: 0x30b8 (12472)】
標誌(Flags):共3位。R(Reserved bit)、DF(Don’t fragment)、MF(More fragment)三位。目前只有後兩位有效,DF位:為1表示不分片,為0表示分片。MF:為1表示不是最後一片,還有其他分片,為0表示這是最後一片。
片偏移(Fragment offset):該欄位是與ip分片後,相應的ip片在總的ip片的位置。該欄位的單位是8位元組。
生存時間(Time to live):IP報文所允許通過的路由器的最大數量。每經過一個路由器,TTL減1,當為0時,路由器將該資料報丟棄。TTL 欄位是由傳送端初始設定一個 8 bit欄位.推薦的初始值由分配數字 RFC 指定。
協議(Protocol):指出IP報文攜帶的資料使用的是那種協議,以便目的主機的IP層能知道要將資料報上交到哪個程序(不同的協議有專門不同的程序處理)。和埠號類似,此處採用協議號,TCP的協議號為6。
首部校驗和(Header checksum):計算IP頭部的校驗和,檢查IP報頭的完整性。這裡無法校驗。【Header checksum: 0x590c [validation disabled]】
源IP地址(source):標識IP資料報的源端裝置,由圖可知該源IP地址為172.31.120.157。
目的IP地址(destination):標識IP資料報的目的地址,由圖可知該目的IP地址為114.113.217.11。
Icmp分析
Wireshark抓包分析(這是ping 114.113.217.11的抓包)
Type:8 code:0由表可知時ping請求
Checksum:校驗和成功。
資料鏈路層分析
Wireshark抓包分析
源mac地址: d0:17:c2:1c:1a:f0
目的mac地址: 04:f9:38:c9:60:36
型別: Ethernet (1)
六,總結
在這次作業中學到最重要的東西是學會如何使用wireshark及對抓包進行分析,同時也對tcp,udp,IP,icmp,等協議加深理解,以及清晰的瞭解這些協議在網路上的應用。在做這次作業的也發現了tcp協議的斷連過程與書本是有些地方是不同的。這次的作業中我得到不少的收穫。