首頁>Club>
4
回覆列表
  • 1 # 天藍如海7

    ARP協議工作原理

    1、ARP請求:

    主機A首先會去檢查ARP快取表(ARP快取用來存放IP地址和MAC地址的關聯資訊)中是否存在主機C的MAC地址。

    本例中由於是第一次通訊,主機A的ARP快取表中沒有主機C的MAC地址。

    這時主機A會發送ARP request報文(廣播報文)來獲取主機C的MAC地址。而廣播報文只會在廣播域中傳播,路由器可以隔離廣播域。

    ARP request報文封裝在以太幀裡。

    幀頭中的源MAC地址為傳送端主機A的MAC地址,此時,由於主機A不知道主機C的MAC地址,所以目的MAC地址為廣播地址FF-FF-FF-FF-FF-FF。

    ARP request報文中包含源IP地址、目的IP地址、源MAC地址、目的MAC地址,其中目的MAC地址的值為0。

    ARP Request報文會在整個網路上傳播,該網路中所有主機包括閘道器都會接收到此ARP request報文。閘道器將會阻止該報文傳送到其他網路上。

    本例中主機B和主機C都會收到主機A傳送的ARP廣播請求報文。

    2、ARP應答:

    主機B收到主機A傳送的ARP廣播請求報文,檢視目的IP不是自己會丟棄,但是會在自己的ARP快取表中記錄主機A的IP和MAC的對映關係,在主機B上透過命令arp -a 可以查詢到:

    主機C發現目的IP是自己,會在自己的ARP快取表中記錄主機A的IP和MAC的對映關係,並會向主機A單播迴應ARP Reply報文。

    主機A收到主機C的迴應報文後後會在自己的ARP快取表中記錄主機C的IP和MAC的對映關係,下次傳送資料時就可以查詢到主機C的MAC。

    ARP Reply報文中的源協議地址是主機C自己的IP地址,目標協議地址是主機A的IP地址,目的MAC地址是主機A的MAC地址,源MAC地址是自己的MAC地址,同時Operation Code被設定為reply。

    ARP Reply報文透過單播傳送。

    ARP報文格式

    ARP的工作過程是透過ARP廣播請求報文和ARP單播迴應報文實現的,下面我們一起看下ARP報文的格式。

    ARP報文中包含以下欄位:

    1、Hardware Type:表示硬體地址型別,一般為乙太網;

    2、Protocol Type:表示三層協議地址型別,一般為IP;

    3、Hardware Length和Protocol Length:為MAC地址和IP地址的長度,單位是位元組;

    4、Operation Code:指定了ARP報文的型別,包括ARP request和ARP reply;

    5、Source Hardware Address:指的是傳送ARP報文的裝置MAC地址;

    6、Source Protocol Address:指的是傳送ARP報文的裝置IP地址;

    7、Destination Hardware Address:指的是接收者MAC地址,在ARP request報文中,該欄位值為0;

    8、Destination Protocol Address:指的是指接收者的IP地址。

    實戰

    下面我們搭建拓撲,模擬下主機A和主機C的通訊過程,在ensp模擬器下開啟wireshark抓取下ARP請求和迴應報文。

    1、主機A上ping 主機C ip 10.0.0.3。

    2、檢視抓包結果。

    可以看到:抓取到了主機A傳送的ARP廣播請求報文、主機C迴應的單播報文,以及ping的ICMP報文;

    3、報文分析。

    ARP請求報文格式:

    可以看到ARP請求報文中:

    1、Hardware Type為乙太網;

    2、Protocol Type為IP;

    3、MAC地址為6位元組,IP地址的長度為4位元組;

    4、Operation Code指定了ARP報文的型別為ARP request;

    5、傳送ARP報文的裝置MAC地址為54-89-98-1F-3A-EA;

    6、傳送ARP報文的裝置IP地址為10.0.0.1;

    7、接收者MAC地址為ff-ff-ff-ff-ff-ff;

    8、接收者的IP地址為10.0.0.3。

    ARP迴應報文:

    可以看到ARP迴應報文中:

    1、Hardware Type為乙太網;

    2、Protocol Type為IP;

    3、MAC地址為6位元組,IP地址的長度為4位元組;

    4、Operation Code指定了ARP報文的型別為ARP reply;

    5、傳送ARP報文的裝置MAC地址為54-89-98-DB-33-4E;

    6、傳送ARP報文的裝置IP地址為10.0.0.3;

    7、接收者MAC地址為54-89-98-1F-3A-EA;

    8、接收者的IP地址為10.0.0.1。

  • 中秋節和大豐收的關聯?
  • 州的春節習俗?