日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

ip层的arp协议

發布時間:2025/6/15 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ip层的arp协议 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Arp(adress resolution protocol—地址解析協議)是在傳輸IP包時,因不知道IP地址對應的MAC地址,無法傳送數據引起的,通過arp,建立目的IP跟MAC地址的映射關系,從而獲得目的IP的MAC地址。

Arp頭部的數據結構如下:

typedefstruct arphdr   {   

????????????? unsignedshort arp_hrd;/*硬件類型,*/   

????????????? unsignedshort arp_pro;/*協議類型*/   

????????????? unsignedchar arp_hln;/*硬件地址長度*/   

????????????? unsignedchar arp_pln;/*協議地址長度*/   

????????????? unsignedshort arp_op;/*ARP操作類型*/   

????????????? unsignedchar arp_sha[6];/*發送者的硬件地址*/   

????????????? unsignedlong arp_spa;/*發送者的協議地址*/   

????????????? unsignedchar arp_tha[6];/*目標的硬件地址*/   

????????????? unsignedlong arp_tpa;/*目標的協議地址*/   

????????????? }ARPHDR,*PARPHDR;???

我們封裝arp數據包格式如下:

目的地址,我們現在還不知道,需要向本子網廣播,以獲得目的地址(目的MAC),因此這里全填1,源基地即本地的MAC地址,我們從本地網卡的MAC地址即可取得,類型表示的是上層協議的類型,這里是arp,用0x0806表示,到這里就完整的幀封裝。

?

arp頭部數據填充,硬件類型有很多種,即有各種各樣的硬件類型,比如以太網卡,令牌環網卡等,0x0001表示以太網卡,協議類型表示的是上層協議的類型,即需要通過arp獲得對方MAC地址的協議,而不是arp本身協議,0x0800表示IP協議,硬件地址(MAC地址)長度為6,協議地址(IP地址)長度為4,操作類型表示本arp所要操作的動作,1為ARP請求,2為ARP應答,3為RARP請求,4為RARP應答,源主機MAC地址為本地MAC,從網卡驅動從即可獲得,源主機IP地址為本地IP,這個也是從網卡驅動中獲得,當然也是我們人為設置的(或者DHCP),目的主機MAC地址就是我們發送arp需要獲得的數據,此時還不知道,全0待填寫,目的主機IP地址為遠端的IP地址。

由于路由器有攔截廣播的功能,arp廣播只能在本子網中廣播,如果所要獲取的MAC地址不是本子網的,則必須經過路由器網關獲得。由于路由器的默認網關也是本子網的一個設備,因此也會收到本子網的arp廣播,經過子網匹配,發現目的IP的子網,跟路由器的另一個端口的子網一致,于是,把arp請求轉發給路由器的另一個端口,此時,路由器的另一個端口跟目的IP在同一個子網,因此,又可以進行arp廣播,當目的IP獲得了arp廣播信息后,會把本機的MAC地址填充到arp包的目的地址MAC這欄中,同時修改arp的數據包的操作類型為arp應答,接著把數據包發回源IP地址,此時的發送就不是以廣播的形式發送了,因為目的地址MAC,本地地址MAC都知道,是需要單播即可,此時,還需要修改以太網幀的目的MAC,本地MAC,從而得以發送數據包

總結

以上是生活随笔為你收集整理的ip层的arp协议的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。