網絡協議分析-實驗

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

準備工具:

1.Cisco Packet Tracer瀏覽器

2.Wireshark緩存

3.GNS3網絡

資料:工具

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

netstat命令詳解:http://www.javashuo.com/article/p-tkjjhpfu-bn.html測試

查看本身電腦的MTU:https://zhidao.baidu.com/question/553727686968963692.html網站

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


 ♦使用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響應報文。

相關文章
相關標籤/搜索