第四章 地址解析協議 arp(僅限于ipv4)

由硬件交換的幀需要使用正確的硬件地址定位到正確的接口;否則,無法傳輸數據。
一個傳統IPv4網絡需要使用自已的地址: 32位的IPv4地址。一臺主機要將一個幀發送到另一臺主機,還需要要發往主機的物理地址
(這里的物理地址是數據幀即將要發往的主機,而不是數據幀最終要發往的主機)

地址解析協議

提供了IPv4地址和物理地址間的動態映射(自動執行隨時間變化,不需要管理員重新配置)。就是能夠通過ip地址獲得物理地址。用的方法就是喊一聲!

ARP僅用于IPv4, IPv6使用鄰居發現協議,它被合并人ICMPv6

網絡層地址為IP地址,由網絡管理員,或者用戶指定分配,可隨時更改。
而數據鏈路層地址為物理地址,是在網卡出場的時候寫入網卡中,不能更改。
地址解析就是建立這兩個地址之間的映射關系。

兩個局域網的主機之間傳輸的以太網幀包含IP數據報時,由48位以太網地址確定該幀的目的接口。只有數據幀達位于同一IP子網的系統時, ARP才能工作。(數據幀貌似一直都只在不同的子網中傳播的吧。)

例如:
同一子網中的兩臺計算機要進行通信:

  1. 使用子網掩碼判斷目標主機與源主機位于同一子網中。(假設沒有arp緩存)
    在這一步的時候已經到了鏈路層
  2. 在一個共享的鏈路層網段上, 源主機ARP向所有主機發送一個稱為ARP請求的以太網幀。這被稱為鏈路層廣播。
    who has .....
  3. 某個主機使用請求中指出的IPv4地址,它需要響應一個ARP應答。
    不同虛擬局域網中的主機不會收到
  4. 收ARP請求的源主機學習(也就是記錄)IPv4到MAC地址的映射,并記錄在內存中供以后使用。
  5. 源主機可將數據報封裝在以太網幀中直接發送到目的主機。
    由于這個以太網地址僅指向正確的目的主機,其他主機或路由器接收到這個數據包以檢測物理地址與自己的不匹配,然后扔掉了。
  6. 同一子網中的路由器通信不需要經過路由器
    他經過交換機?。?!
    同一網段內的兩臺主機通信是否需要路由器

ARP緩存

IPv4地址映射到硬件地址后,將這個這一個映射關系(也就是這個鍵值對)存起來,對應于高速緩存中的一個條目,其正常到期時間是條目創建開始后的20分鐘。

使用arp -a查看

arp緩存

動態是指主動學習(通過arp獲得的),而靜態就是手動輸入。

linux下是一欄flag,對應window的類型。
可能為C、M、P。
C類條目由ARP協議動態學習也就是接收到數據報就記錄了, M類條目通過手工輸人,而P類條目的含義是“發布”,也就是主動獲取的。

幀格式

arp幀格式

注意這個圖,這是完整的以太網幀,黑色是有效荷載部分,所以他是鏈路層的,不是ip層的。

  1. DST:目的地址 6B
    也就是接受這個數據幀的下一臺主機的物理地址。
    在arp中通常不知道采取詢問,所以物理地址為全f
    對于ARP請求,目的以太網地址ff:ff:ff:ff:ff:ff(全部為1)是廣播地址,在同一廣播域中的所有以太網接日可接收這些幀。
  2. SRC:源地址 6B
    發送該數據幀主機的物理地址。
  3. 長度或類型 2B
    arp中必須為0x0806。
  4. 接下來的 8B
    長度/類型字段之后的前4個宇段指定了隨后4個字段的類型和大小。
    硬件類型字段指出硬件地址類型,對于以太網該值為1。
    協議類型字段指出映射的協議地址類型。對于IPv4地址,該值為0x0800
    硬件大小和協議大小分別指出硬件地址和協議地址的字節數,以太網中使用IPv4地址的ARP請求或應答.它們的值分別為6和4。物理地址長度6,ip地址長度4
  5. Op 2B
    op字段指出該操作是ARP請求(1)、 ARP應答(2)、 RARP請求(3)或RARP應答(4)。
    由于ARP請求和ARP應答的長度/類型字段相同.因此這個字段是必需的。
  6. 發送方物理地址,發送方協議地址 10B
  7. 接收方物理地址,發送方協議地址 10B
    對于各arp請求,其目的硬件地址為全0

當一個系統接收到一個ARP請求.它填充自己的硬件地址.將兩個發送方地址和接收方地址互換.將Op
字段設為2.然后發送生成的應答。

arp請求

arp請求
arp請求——紅色為分割點

嗯就這些。

也可能是42bit

arp應答

arp應答

其目的主機物理地址應該被填充的。

目的主機發送ARP應答外,它還會在ARP緩存中保存請求者的硬件地址和IP地

arp緩存

一般有效期為20分鐘,不完整的arp為3分鐘(只發送了請求,但是沒有收到回應)
軟狀態?超時前沒有被更新而丟棄的信息。

ARP代理

有那么一臺無聊的主機,準們回答arp請求的。
這個作用沒搞懂,用于隱藏目的主機。
比如,訪問谷歌。但是,卻被代理arp返回了錯誤的物理地址。我們和谷歌永別了。

主機不存在

如果嘗試訪問一個不存在的主機,會首先卡死在arp上,因為主機不存在,根本沒有人會回應這條請求。

免費arp

與普通的arp請求一樣,不期望收到回復,如果收到就是有沖突了

  1. 允許一臺主機確定另一臺主機是否配置相同的IPv4地址。
    如果ip沖突,什么都不顯示,就是不讓你上網。
  2. 更改主機的物理地址(換硬件之類的)

ARP探測分組和通告分組

探測用于檢測是否有使用這個ip的,通告用于高速別的主機,我已經使用了這個ip
通告之前需要先探測

ipv4地址沖突檢測 ACD,使用arp分組,將發送方協議地址設置為9,避免污染已經緩存的arp緩存(如果ip地址被使用,那么可能已經緩存arp,所以要避免這種情況),這是與免費arp的主要區別。
如果收到arp回復,那么表明候選的ip(請求使用ip主機選擇的ip地址)已經被使用。
如果沒有收到請求,就會想廣播域中發送2個arp通告,表明它已經在使用這個ip地址了。
arp通告將發送方協議地址和目的協議地址填充為候選的ipv4地址。

arp分配ip地址

使用主機配置嵌入式設備的ip

不常用,一般都是DHCP分配
但是有一些嵌入式設備不能手動獲取的時候。

一個主機先生成一個ip-mac映射,其中mac為嵌入設備的物理地址,ip為任選一個不沖突的。
然后向嵌入設備發送一個數據包,此時設備接收到一個以自己物理地址為目標地址的數據幀時,這個設備可以用數據幀中的ip完成配置。
這需要嵌入設備的配合和主機的配合。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,001評論 6 537
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,786評論 3 423
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事?!?“怎么了?”我有些...
    開封第一講書人閱讀 176,986評論 0 381
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,204評論 1 315
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,964評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,354評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,410評論 3 444
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,554評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,106評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,918評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,093評論 1 371
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,648評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,342評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,755評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,009評論 1 289
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,839評論 3 395
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,107評論 2 375

推薦閱讀更多精彩內容