網絡協議分析-實驗


這篇隨筆將作為本科學習課程-TCP/IP協議分析教程與實驗的簡單記錄。

准備工具:

1.Cisco Packet Tracer

2.Wireshark

3.GNS3

資料:

Wireshark基本用法和過濾規則:https://blog.csdn.net/hzhsan/article/details/43453251

netstat命令詳解:https://www.cnblogs.com/xieshengsen/p/6618993.html

查看自己電腦的MTU:https://zhidao.baidu.com/question/553727686968963692.html

Cisco路由器配置命令大全:https://www.jianshu.com/p/73f84fed10e9


 ♦使用wireshark在自己的計算機上捕獲瀏覽網頁產生的數據包。怎樣才能只查看訪問指定網站(如:www.xinhuanet.com)的數據包?

1.捕獲瀏覽網頁產生的數據包

(1) 打開wireshark

(2) 選擇網絡接口(我用的無線網,所以選擇wlan)

(3) 打開瀏覽器訪問網頁后產生數據包

2.只查看訪問指定網站的數據包

(1) 以www.xinhuanet.com為例,在過濾器中輸入ip.addr eq 202.200.79.43(注:202.200.79.43為該網站的ip地址,且提前用ping命令獲得其ip)

(2) 確認過濾后只顯示www.xinhuanet.com的數據包


 如果讀者的主機系統有netstat命令,如何用它來確定系統上的接口與其MTU?

根據主機系統的不同有不同的命令查看。在Linux上使用netstat命令,在命令終端中輸入netstat -i可以查看接口的MTU值。

在Windows上使用netsh命令,在命令終端中輸入netsh interface ip show interface可以查看接口的MTU值


 ♦ARP請求與應答

1.實驗說明

分別在模擬和真實環境中分析ARP協議的報文格式,理解ARP協議的解析過程。

2.實驗環境

Windows操作系統及網絡環境(主機有以太網卡並連接局域網),安裝有Packet Tracer6.0和Wireshark

3.實驗步驟 

(1) 在Packet Tracer中觀察ARP協議。

步驟1 啟動Packet Tracer,建立如下圖的拓撲結構。

 

 

 

步驟2 按上圖配置網絡接口地址,PC0上沒有設置默認網關地址,PC1的默認網關設置為172.16.20.99。注意,上圖中的MAC地址是Packet Tracer自動生成的,實驗時以軟件實際取值為准。

步驟3 在路由器Router0上查看ARP表,執行以下命令。

Router # show arp

查看各個表項內容,注意其中是否有172.16.20.100的表項。

 

 

步驟4 切換到模擬方式,然后在路由器Route0執行以下命令。

Router# ping 172.16.20.100

觀察設備收發數據。可以看到,因為沒有在自己的ARP 表中查找到與IP地址172.16.20.100對應的表項,不能構造出鏈路層幀,路由器Router0丟棄了第一個ICMP報文。隨即發出了ARP請求,PC1在收到ARP請求后作出ARP應答,Router0收到應答后更新自己的ARP表。在下一個ICMP報文發出時,路由器就能順利的構造出鏈路層幀了。這就解釋了為什么路由器在第一次執行ping命令時,表示連通的符號第一個總是不通,表示連通的驚嘆號總是4個。

 

 

 

 

再次在Router0上查看ARP表,可以看到新增的172.16.20.100。

 

步驟5 仔細分析PDU信息,學習掌握ARP協議的PDU構成,注意觀察ARP幀的鏈路層地址、操作碼、報文內容,比較ARP請求和應答鏈路層幀和PDU內容的差異。

 

 

 

 

 

 

 

 

步驟6 對路由器ARP處理的過程進行分析。對沒有ARP表項的通信,路由器會先丟棄報文。

 

 

 

需要說明的是,ARP協議是在局域網內工作的,本實驗利用路由器連接兩個網絡,在地址掩碼上左不同的設置,以說明默認網關的作用。

(2) 用Wireshark觀察ARP協議的工作過程

步驟1 在Windows主機上運行Wireshark,選擇本地網卡,啟動抓包。為了觀察方便,在顯示過濾器欄中輸入arp,以便只查看ARP數據包。

 

步驟2 在主機運行程序訪問同一網絡中的節點,只要該節點為第一次訪問,則主機都會發出ARP請求。例如,在本地Windows主機(IP地址為192.168.1.102),運行cmd命令,打開命令行窗口,輸入以下命令。

C:\>ping 192.168.1.53

則立刻可以在Wireshark中捕獲到ARP幀。分析幀結構和各個域的信息。

我的電腦連的wifi,分配的地址為192.168.2.145,具體信息如下圖:

 

 

在命令行控制台輸入ping 192.168.2.53后,Wireshark捕獲的ARP幀如下圖:

 

 

步驟3 一般真實的主機設有默認網關,和默認網關之間會有ARP數據交換。持續捕獲一段時間的數據,一般能觀察到主機和默認網關之間的ARP請求和應答。另外,也可以通過修改主機的IP地址或重啟網卡(禁用后再啟用)的方法,來觀察ARP數據。

捕獲到的主機與默認網關之間的ARP請求和應答如下圖:

 

 4.實驗報告

記錄自己的實驗過程和實驗結果,分析ARP協議的請求和應答報文格式,理解ARP協議的解析過程。

(1) 實驗過程和實驗結果已經包含在上述的實驗步驟和實驗截圖當中。

(2) ARP報文格式:

以太網源地址: 就是發送端地址。

幀類型: 如果是ARP報文,值為0x0806

硬件類型: 表明ARP協議實現在那種類型的網絡上,它的值為1,即表示以太網地址

協議類型:表示解析協議(上層協議),這里一般是0800,即IP

硬件地址長度:也就是MAC地址長度,即6個字節

協議地址長度:也就是IP地址長度,即4個字節

操作類型:表示ARP協議數據報類型。1表示請求報文,2表示應答報文

發送端以太網地址:也就是源MAC地址

發送端IP地址:也就是源IP地址

目的端以太網地址:目標端MAC地址(如果是請求報文,是全0)

目地端IP地址:也就是目地端的IP地址

(3) ARP協議的解析過程

ARP借助ARP請求包和響應包來確定MAC地址。

例如:處在同一鏈路上的主機A 向B發送一個IP請求包,且互不知MAC地址:主機為了獲取主機B的MAC地址,起初通過廣播發送一個ARP請求包,此包包含 想要獲取MAC地址主機的IP地址,因此ARP的請求包中會被同一鏈路上的所有主機或路由解析,如果ARP請求包中的目標IP與自己的IP地址相同,那么此節點就將自己MAC地址塞入ARP響應包,返回給主機A。

 

 ♦ARP代理

1.實驗說明

在模擬實驗環境中,觀察分析ARP代理對象,理解ARP代理的作用和工作過程。

2.實驗環境

Windows操作系統及網絡環境(主機有以太網卡並連接局域網),安裝有Packet Tracer6.0

3.實驗步驟

步驟1 啟動PT,打開實驗4-2的拓撲,西喲啊注意的是,PC0的地址172.16.10.100/16的子網掩碼為16位,與其他各個地址的24位不同,另外,PC0上未設置默認網關地址。

   

 

步驟2 PC0上打開命令行窗口,查看ARP表,執行以下命令。

PC>arp -a

該命令確認本地ARP緩存為空。

 

 

步驟3 切換到模擬方式,然后在PC0上執行以下命令,觀察設備收發數據的過程。

PC>ping 172.16.10.99

 

 

PC>ping 172.16.20.100

 

步驟4 PC0上執行命令“arp -a”,查看ARP表,觀察各個表項的特點,出現多個IP地址被映射到一個MAC地址,就是代理ARP的標志。

 

步驟5 在拓撲圖的路由器Router0右側(172.16.20.0/24網段)連接交換機,以添加更多的主機,注意要和PC1在同一網段。然后在PC0上對新增主機進行ping連通,連通后查看PC0ARP表的變化。

 

步驟6 進一步在拓撲圖中增加路由器,連接更多的網絡,在Packet Tracer中以模擬方式從PC0上對其他網絡中主機命令ping,進行連通測試,仔細觀察連通過程的ARP解析過程。連通后,在查看PC0ARP表的變化。

 

 

4.實驗報告

記錄自己的實驗過程和實驗結果,理解ARP代理的實現過程,掌握ARP代理的工作特點。

實驗過程和實驗結果的步驟和截圖已經展示在上面

5.思考

路由器不轉發廣播幀,而是接替地址請求者對其他網絡的節點發送ARP請求,分析跨網絡通信時的ARP解析過程,進一步理解“Hop by Hop”的概念。

首先172.168.10.100/16主機向外發送目的主機為172.168.20.100/24ARP請求報文;然后網關收到172.168.10.100/1ARP請求報文,由於網關開啟了ARP代理的功能,因此網關代替172.168.20.100/24172.168.10.100/16發送ARP響應數據報;之后網關向172.168.20.0/24網段發送172.168.10.100/16ARP請求報文;最后172.168.20.100/24收到后,發送ARP響應報文。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM