一、 配置地址
(一) 網絡地址規划表
| 源IP地址 |
默認網關地址 |
目的IP地址 |
域名 |
備注 |
| 192.168.101.30 |
192.168.101.1 |
222.218.87.132 |
www.sanguosha.com |
目的IP地址為三國殺的官網IP地址 |
(二) 連通性測試
步驟:1.按windows鍵打開開始菜單,輸入cmd,回車
2.進入命令提示符界面,輸入ping 222.218.87.132連接www.sanguosha.com的ip地址

(三) 配置IP地址步驟
- 點擊電腦右下角的網絡標志,點擊“網絡和INTERNET設置”
- 點擊更改適配器選項,進入網絡連接界面
- 選中已連接的網絡,雙擊打開,點擊詳細信息,查看當前電腦在網絡中的IP地址、子網掩碼、網關、DNS服務器地址等重要的網絡信息
- 關閉詳細信息窗口,點擊屬性
- 選中“Internet協議版本4(TCP/IPV4)”,點擊屬性
- 點擊使用下面的IP地址選項,輸入要需要修改的新的IP地址、子網掩碼、網關、DNS服務器地址等信息,點擊確定
二、應用層
打開Google Chrome瀏覽器,打開Wireshark抓包軟件,開始抓包,抓完包后,通過顯示過濾器過濾http與IP地址為222.218.87.132的信息,如下圖所示

通過復制hypertext transfer protoucol中的網址,在goole chrome瀏覽器中打開,內容如下圖所示


三傳輸層
(一) TCP報文格式
下面是TCP報文格式
源端口(Source Port):55457
目的端口(Destination Port):80
序列號(Sequence number):0
32位確認序列號(Acknowledgment number):0(表示數據包收到,確認有效)
手動的數據包的頭字節長度是20字節;Flags是TCP標志:含6種標志:
ACK:確認序號有效;SYN:同步序號,用來發起一個連接;FIN:發端完成發送任務;
RST:重新連接;PSH:接收方應該盡快將這個報文段交給應用層;URG:緊急指針(urgentpointer)有效
流量控制窗口大小(Window size value):64240;數據段的校驗和(Checksum):0xf7cb


(二) TCP協議(第一次握手)
客戶端發送一個TCP,標志位為SYN,序列號為1,代表客戶端請求建立連接

(三) TCP協議(第二次握手)
服務器發回確認包,標志位為SYN,ACK.將確認序號(Acknowledgement Number)設置為客戶的ACK加1,即0+1=1

(四) TCP協議(第三次握手)
客戶端再次發送確認包(ACK),SYN標志位為0,ACK標志位為1,並且把服務器發來ACK的序號字段+1,放在確定字段中發送給對方。

(五) UDP協議
端口號(Sourse Port):60156
目的端口號(Destination Port):9025
長度(Length):52
數據段的校驗和(Checksum):0x782c
由於udp是無連接的,可以在任何時候收發數據,加上udp本身處理簡單高效,因此udp常用於包總量少的通信,如DNS,SNMP,即時通信,廣播通信等等

四、網絡層
(一) IP報文
IP報文格式如下:
IP協議版本(Version): 4
頭部數據長度(Header length):20 byte (5)
區分服務字段(Differentiated Services Field): 0x00(DSCP:CS0,ECN:Not-ECT)
生存時間(ime to live)64 (TTL,TTL通常表示包在被丟棄前最多能通過的路由器個數,當數據包傳輸到一個路由器之后,TTL就自動減1,如果到0了還沒有傳送到目標主機,那么就自動消失)
頭部校驗和(header checksum):0x9792
源IP地址(Source):192.168.101.30
目的IP地址(Destination):222.218.87.132

(二) ARP協議
硬件類型(Hareware type):Ethernet(1)
協議類型(Protocol type):IPv4(0x0800)
硬件尺寸(Hardware size):6
協議尺寸(Protocol size):4
指令(Opcode): reply(2)
發送者MAC地址(Sender MAC address):WistronI_8e:f6:9f(98:ee:cb:8e:f6:9f)
發送者IP地址(Sender IP address): 192.168.101.30
目的MAC地址(Target MAC address): HuaweiTe_48:db:28(fc:ab:90:48:db:28)
目的IP地址(Target IP address): 192.168.101.1

(三) ICMP協議
Type:8 占一字節,標識ICMP報文的類型,從類型值來看ICMP報文可以分為兩大類。第一類是取值為1~127的差錯報文,第二類是取值128以上的信息報文
Code:0 占億字節,表示對應ICMP報文的代碼。它與類型字段一起共同表示了ICMP報文的詳細類型
Checksum:0xc360[correct];是對包括ICMP報文數據部分在內的人整個ICMP數據包的校驗和,以檢驗報文在傳輸過程中是否出現了差錯。其計算方法與IP報頭中的校驗和計算方法是一樣的
Identifier:1 (0x0001) 兩字節,用於標識本ICMP進程,但僅適用於回顯請求和應答ICMP報文,對於目標不可達ICMP報文和超時ICMP報文等,該字段的值為0
Sequence number:3553 (0x0dcd)
wireshark考慮到window系統與Linux系統發出的ping報文(主要指ping應用字段而非包含IP頭的ping包)的字節順序不一樣(windows為LE:little-endian byte order,Linux為BE:big-endian),為了體現wireshark的易用性,開發者將其分別顯示出來。

五、數據鏈路層
(一) MAC幀格式
MAC幀的幀頭包括三個字段。前兩個字段分別為6字節長的目的地址字段和源地址字段,目的地址字段包含目的MAC地址信息,源地址字段包含源MAC地址信息。第三個字段為2字節的類型字段,里面包含的信息用來標志上一層使用的是什么協議,以便接收端把收到的MAC幀的數據部分上交給上一層的這個協議。如下圖所示

(二) MAC地址分析
Ethernet II, Src: WistronI_8e:f6:9f (98:ee:cb:8e:f6:9f), Dst: HuaweiTe_48:db:28(fc:ab:90:48:db:28)
以太網協議版本II,源地址:廠名_序號:(網卡地址),目的地址:廠名_序號(網卡地址)
Destination: HuaweiTe_48:db:28(fc:ab:90:48:db:28) 目的地址:廠名_序號(網卡地址)
Source: WistronI_8e:f6:9f (98:ee:cb:8e:f6:9f) 源地址:廠名_序號(網卡地址)
Type: IP (0x0800) 幀內封裝的上層協議類型為IP(十六進制碼0800)

六、總結
經過這次網絡協議抓包分析的作業,我對TCP/IP四層模型又有了更深的理解,對於應用層、傳輸層、網絡層和數據鏈路層各層數據的獲取和格式的印象都更加深刻了,在本次作業中,我遇到了幾個難題,第一個是cmd命令行ping不通ip地址,但是能上網,我通過一段時間的研究,終於找到了解決方法,要cd \Windows\System32 在進行ping操作;第二個是不知道數據鏈路層的MAC幀格式和MAC地址解析應該怎么做,幸好經過一段時間的搜尋,終於在網上找到了參考的文章,順利完成既定目標。雖然做這個作業做了很久,但是我覺得自己還是沒有分析透徹每一個層之間的關系,希望在以后的學習里能夠分析的更加細致
