你知道,資料報在區域網上是怎麼傳輸的嗎?是靠什麼來傳輸的嗎?也許你會說是靠
ip位址,那麼你只正確了一半。其實真正在傳輸過程中是靠計算機的網絡卡位址即
mac來傳輸。
現在我們就用例項來模擬一下傳輸的全過程。現在有一台計算機
a(ip:192.168.85.1 mac:aa-aa-aa-aa-aa-aa)
,另一台計算機
b(ip:192.168.85.100 mac:bb-bb-bb-bb-bb-bb)
現在用a
去ping b
。看見reply from 192.168.85.100: bytes=32 time<10ms ttl=32
這樣的資訊。然後在執行中輸入
arp -a
,會看見
192.168.8.100 bb-bb-bb-bb-bb-bb dynamic
這樣的資訊。那就是
arp快取記憶體中ip地
址和mac
位址的乙個對映關係,在乙太網中,資料傳遞靠的是
mac,而並不是
ip位址。其實在這背後就隱藏著
arp的秘密。你一定會問,網路上這麼多計算機,a
是怎麼找到
b的?那麼我們就來分析一下細節。首先
a並不知道
b在**,那麼
a首先就會發乙個廣播的
arp請求,即目的
mac為
ff-ff-ff- ff-ff-ff,
目的ip為b
的192.168.85.100
,再帶上自己的源
ip,和源
mac。那麼乙個網段上的所有計算機都會接收到來自a的
arp請求,由於每台計算機都有自己唯一的
mac和
ip,那麼它會分析目的ip即
192.168.85.100
是不是自己的
ip?如果不是,網絡卡會自動
丟棄資料報。如果
b接收到了,經過分析,目的
ip是自己的
,於是更新自己的
arp快取記憶體,記錄下a的
ip和mac。然後
b就會回應a乙個
arp應答,就是把a
的源ip
,源mac
變成現在目的
ip,和目的
mac,再帶上自己的源
ip,源
mac,傳送給a。當
a機接收到
arp應答後,更新自己的
arp高速
快取,即把
arp應答中的
b機的源
ip,源
mac的對映關係記錄在快取記憶體中。那麼現在
a機中有b的
mac和ip,
b機中也有a的
mac和ip。
arp請
求和應答過程就結束了。由於
arp快取記憶體是會定時自動更新的,在沒有靜態繫結的情況下,ip和
mac的對映關係會隨時間流逝自動消失。在以後的通訊中,a在和
b通訊時,會首先察看
arp快取記憶體中有沒有b的
ip和mac的對映關係,如果有,就直接取得
mac位址,如果沒有就再發一次
arp請求的廣播,
b 再應答即重複上面動作。
網路層arp協議學習
arp協議 點對點鏈路不使用arp協議 arp協議的分組格式理解難點 對於乙個arp請求來說,除了目的端硬體位址外的其他所有欄位都是有填充值的,當系統收到乙份目的端為本機的arp請求報文後,他就把硬體位址填進去 然後用兩個目的端位址分別替換兩個傳送端位址,並把操作字段換成2,最後傳送出去 這裡要注意...
網路層 位址解析協議ARP
ip位址與實體地址的相互轉換問題 如下圖,主機h10向主機h1傳送了ip包,路由器r1要想在區域網中將ip包傳送給主機h1,需知道h1的實體地址 位址解析協議arp address resolution protocol 逆位址解析協議rarp reverse address resolution ...
ARP協議的作用
arp協議由rfc 826詳細介紹規定,協議規定的arp報文的報文結構 ar hrd ares hrd ethernet ar pro et ip ar hln length ea x ar pln length ipa x ar op ares op request ar sha ea x ar ...