女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

ARP地址解析協議簡介和基本原理

jf_uPRfTJDa ? 來源: 移動Labs ? 2023-12-18 09:49 ? 次閱讀

導讀

在我們平時發現上不了網的時候,或者剛剛配置好一臺電腦的時候,有一個習慣就是ping,對于ping相信讀者都比較熟悉,就是給你要ping的地址發送ICMP探測報文,看看這個目的地是否可達。對于網絡的分層,讀者應該或多或少有所了解,比如數據鏈路層、網絡層、傳輸層、應用層,IP數據網絡層,MAC屬于數據鏈路層,完整的以太報文在網絡中傳輸的時候,是攜帶MAC地址的,當你去ping某個地址的時候,比如ping 114.114.114.114,你可以知道IP,但你并不知道MAC地址,如何根據目的IP獲取到MAC地址呢,這時候ARP就登場了,IP地址通過 ARP,獲得MAC地址,有了MAC地址才能在物理網絡上傳輸數據。

作者:尹彬

單位:中國移動智慧家庭運營中心

Part 01ARP簡介

ARP,是地址解析協議(Address Resolution Protocol)。其基本功能為根據設備的IP地址來查詢對應MAC地址的協議。主機通過ARP查詢到MAC地址后,將在ARP緩存表中增加映射表項,即IP地址和MAC地址的映射表項,也就是我們常說的ARP表項。

ARP是一種常見又十分重要的協議,比如網絡掃描、內網滲透、局域網流控、流量欺騙等都跟ARP脫不了干系。聽上去這么重要的協議,說簡單也簡單,整個ARP完整交互過程僅需要兩個報文搞定,一問一答。但是ARP協議本身也有令人迷惑的地方,由ARP本身延伸出來很多概念,比如動態ARP、靜態ARP、免費ARP、代理ARP等等。

在深入到技術原理之前,我們先看下面三句話:

1、知道IP即可

一般情況下,上層應用程序更多關心IP地址而不關心MAC地址,而且我們平時接觸更多的也是IP地址,只要知道了IP地址,我們可以通過協議來獲取通信所需的MAC地址,完成數據封裝,這就是ARP協議的作用。

2、IP--->MAC的映射

ARP(Address Resolution Protocol)即地址解析協議, 用于實現從IP地址到MAC地址的映射,即詢問目標IP對應的MAC地址。

3、逐層封裝到鏈路層

網絡通信中,主機和主機通信的數據包需要依據OSI模型從上到下進行數據封裝,當數據封裝完整后,再向外發出。所以在局域網的通信中,不僅需要源目IP地址的封裝,也需要源目MAC的封裝。

ae33807a-9bf6-11ee-8b88-92fbcf53809c.png

Part 02ARP基本原理

以我們平時最簡單的一個ping的流程來切入:

主機A ping主機B為例,ping過程在網絡中需要構造ICMP報文,ICMP報文簡單來說就是MAC頭+IP頭+ICMP頭,其中,MAC頭中包含源MAC、目的MAC地址信息以及以太網協議類型(IPv4協議族的類型值為0x0800)。IP頭中主要包含源IP地址、目的IP地址、協議類型(這個協議類型主要指的傳輸層協議類型,比如UDP是17,TCP是6,ICMP是1)。ICMP頭中是一些控制面的信息,比如type代表是ARP請求還是ARP應答等等。

ARP請求和應答的過程如下圖所示:

ae4457ba-9bf6-11ee-8b88-92fbcf53809c.png

我們分幾個步驟來簡單的描述上圖中所示的ARP報文協議流程:

為何要發送ARP

當在主機A命令行中敲入ping x.x.x.x(x.x.x.x為主機B的地址)的時候,系統會獲取到目的IP(x.x.x.x),源IP(主機A的IP),ping字段代表要發送ICMP報文,要送入ICMP協議棧,所以以太網協議類型0x8000(代表IPv4)和IP頭中的協議類型1(代表ICMP)也確定了,所以IP頭的信息完整可以構造了,但是沒有MAC頭信息,所以在協議棧中封裝完IP頭后,封裝MAC頭前,主機A根據主機B的IP地址IP2去自己的ARP表中查詢主機B的MAC,發現沒有,說明要么沒有發生過交互(如果發生過一次完整的ARP交互,會記錄映射信息),要么就是發生過但是已經老化了(ARP表項每隔一段時間會老化),所以需要發送ARP請求給主機B。

發送的ARP報文是什么樣子

ARP請求報文簡單來說就是在網絡中發送一幀廣播報文,目的MAC為全F,內層封裝中有自身的IP、MAC信息,以及請求目標的IP地址,同一廣播域中的交換機收到全F的廣播報文后,會在該廣播域內廣播。ARP報文格式如圖所示:

ae51e6c8-9bf6-11ee-8b88-92fbcf53809c.png

接收者收到之后會怎樣

其他主機也會收到該廣播報文,但是發現請求的不是自己的地址則不會做出回應,主機B收到之后,發現是請求自己的MAC地址,首先會將發起方(主機A)的IP和MAC的映射關系存入自身的ARP表項(簡單來說,ARP請求首先要有自我介紹,然后才是詢問),同時構造ARP應答報文發送到網絡中。

接收者發送的是什么報文

因為主機A在發送ARP請求的時候,走的是二層轉發,二層轉發需要MAC地址轉發,所以交換機并不知道目的MAC地址該往哪里去,只能在發送端(主機A)發送廣播報文,但是當主機B回復ARP應答的時候,已經知道了主機A的MAC地址,所以只需要發送單播報文就可以了,這就是為什么ARP請求是廣播報文,ARP應答是單播報文。ARP應答報文如圖所示:

ae55be24-9bf6-11ee-8b88-92fbcf53809c.png

當然,如果在第一步,主機A查詢自身ARP表項發現能夠查到主機B的IP對應的MAC地址時,就不需要再發送ARP請求了,因為已經知道了MAC地址,直接封裝二層頭,然后發送完整的ICMP報文出去就可以了。

Part 03ARP表項

前面提到過,主機中會存一個IP地址和MAC地址的映射關系表,這就是ARP表項,因為如果每次主機A和主機B通信前都要發送一個廣播的ARP請求報文,會極大的增加網絡負擔。而且同廣播域的所有設備都需要接收和處理這個廣播的ARP請求報文,也極大的影響了網絡中設備的運行效率。

為了解決以上問題,每臺主機或設備上都維護著一個高速緩存,這是ARP高效運行的一個關鍵。在這個高速緩存中,存放主機或設備最近學習到的IP地址到MAC地址的映射關系,即動態ARP表項。主機或設備每次發送報文時,會先在本地高速緩存中查找目的IP地址所對應的MAC地址。如果高速緩存中有對應的MAC地址,主機或設備不會再發送ARP請求報文,而是直接將報文發至這個MAC地址;如果高速緩存中沒有對應的MAC地址,主機或設備才會廣播發送ARP請求報文,進行ARP地址解析。

前面在ARP基本原理中反復提到過ARP表項,那么前面所說由ARP報文交互流程而學習到的ARP表項稱之為動態ARP表項,通過靜態配置生成的ARP表項稱之為靜態ARP表項。靜態ARP表項的優點是配置上之后,不需要再發送ARP報文了,可以節省網絡開銷,缺點是如果對端的信息發生變化,這條表項就失去意義了。

一方面由于高速緩存的容量限制,另一方面為了保證高速緩存中ARP表項的準確性,設備會對動態ARP表項進行老化和更新。

動態ARP表項的老化參數有:老化超時時間、老化探測次數和老化探測模式。設備上動態ARP表項到達老化超時時間后,設備會發送老化探測報文(即ARP請求報文),如果能收到ARP應答報文,則更新該動態ARP表項,本次老化探測結束;如果超過設置的老化探測次數后仍沒有收到ARP應答報文,則刪除該動態ARP表項,本次老化探測結束。

Part 04靜態ARP

前文也提到過靜態ARP,這里詳細介紹一下靜態ARP。靜態ARP表項在網絡中也有著重要作用,比如某些流程中,不想通過觸發ARP報文或者不允許觸發ARP報文來學習鏈路層地址,則可以通過配置靜態ARP表項來實現,配置完靜態ARP表項之后,當協議棧在需要封裝鏈路層信息的時候,不會發起ARP請求流程,而是直接從ARP表項中拿到對應的MAC地址,封裝完成直接發出去。另外靜態ARP表項在應對ARP攻擊的時候也有重要作用。

靜態ARP表項分為長靜態ARP表項和短靜態ARP表項。

? 長靜態ARP表項:手動建立IP和MAC間的映射關系,并同時指定該ARP表項所在出接口。長靜態ARP表項可以直接用于報文轉發。

? 短靜態ARP表項:手動建立IP和MAC間的映射關系,未同時指定出接口。如果出接口是處于二層模式的以太網接口,短靜態ARP表項不能直接用于報文轉發。當需要發送報文時,設備會先發送ARP請求報文,如果收到的ARP應答報文中的源IP和源MAC與所配置的IP和MAC相同,則將收到ARP應答報文的接口加入該靜態ARP表中,后續設備可直接用該靜態ARP表項轉發報文。

Part 05結語

ARP協議非常重要并且常用,是數據通信的入門協議,在網絡中扮演著十分重要的角色,但就是這么一個關鍵角色,卻十分不安全,因為ARP協議是建立在網絡中各個主機相互信任的基礎上的,一旦有人利用這份信任,向某一主機發送偽ARP應答數據包,使該主機發送的信息無法到達預期的目的地或者走向錯誤的目的地,就是所謂的ARP欺騙或者ARP攻擊。

ARP欺騙或者攻擊可以導致目標主機與網關通信失敗,也會讓報文更改方向,所有的數據都會流入攻擊者的主機中,造成數據外泄,影響安全。

當然,使用一些防范ARP攻擊的殺毒軟件可以提高一定的安全性,或者可以通過減少過期時間、建立靜態ARP表項等手段去提高網絡安全性。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 網絡協議
    +關注

    關注

    3

    文章

    273

    瀏覽量

    21993
  • Mac
    Mac
    +關注

    關注

    0

    文章

    1117

    瀏覽量

    52612
  • ARP
    ARP
    +關注

    關注

    0

    文章

    50

    瀏覽量

    14939
  • 物理網絡
    +關注

    關注

    0

    文章

    2

    瀏覽量

    6541

原文標題:技術 | 淺析常用網絡協議之ARP

文章出處:【微信號:5G通信,微信公眾號:5G通信】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    ARP地址解析協議簡介

    英文原義:Address Resolution Protocol 中文釋義:(RFC-826)地址解析協議 地址解析
    發表于 02-24 08:27

    第23章???? RL-TCPnet之地址解析協議ARP

    本帖最后由 lee_st 于 2017-11-16 16:49 編輯 轉最新網絡教程 本章節為大家講解ARP(Address Resolution Protocol,地址解析協議
    發表于 11-15 17:37

    ARP協議攻擊及其解決方案

    由于ARP協議的設計缺陷,使得ARP協議在使用的過程中存在著盜用IP地址ARP欺騙等嚴重的安全
    發表于 06-11 10:17 ?16次下載

    地址解析協議ARP

    地址解析協議ARP 地址解析協議
    發表于 06-09 21:53 ?1184次閱讀
    <b class='flag-5'>地址</b><b class='flag-5'>解析</b><b class='flag-5'>協議</b><b class='flag-5'>ARP</b>

    地址解析協議(ARP),地址解析協議(ARP)是什么意思

    地址解析協議(ARP),地址解析協議(
    發表于 04-06 09:07 ?2184次閱讀

    TCP-IP詳解卷2_ARP地址解析協議

    TCP-IP詳解卷2 ARP地址解析協議,學習TCP很好的資料。歡迎下載。
    發表于 05-09 14:13 ?0次下載

    arp協議的作用是什么?arp協議的工作原理介紹

    地址解析協議,即ARP(Address Resolution Protocol),是根據IP地址獲取物理
    發表于 11-02 16:14 ?6.4w次閱讀
    <b class='flag-5'>arp</b><b class='flag-5'>協議</b>的作用是什么?<b class='flag-5'>arp</b><b class='flag-5'>協議</b>的工作原理介紹

    arp協議的缺點介紹及防范

     地址解析協議,即ARP(Address Resolution Protocol),是根據IP地址獲取物理
    發表于 11-02 16:28 ?7014次閱讀

    TCP IP協議地址解析協議ARP

    TCP IP協議進級講座:2,地址解析協議
    的頭像 發表于 07-03 06:05 ?3975次閱讀

    ARP是什么意思?ARP是什么協議ARP協議用于什么地方

    ARP是什么意思?ARP是什么協議ARP協議用于什么地方 ARP是什么意思?
    發表于 11-10 18:00 ?2w次閱讀

    arp協議屬于哪一層_arp協議的主要功能

    arp協議在TCP/IP模型中屬于IP層(網絡層),在OSI模型中屬于鏈路層。arp協議地址解析
    發表于 01-11 15:51 ?4.2w次閱讀

    ARP協議原理是什么

    ARP協議地址解析協議(`Address Resolution Protocol`)是通過解析
    的頭像 發表于 02-14 10:10 ?2646次閱讀
    <b class='flag-5'>ARP</b><b class='flag-5'>協議</b>原理是什么

    FPGA以太網-ARP協議介紹

    ARP協議地址解析協議,在網絡中有MAC地址和IP地址
    發表于 07-06 09:23 ?1287次閱讀
    FPGA以太網-<b class='flag-5'>ARP</b><b class='flag-5'>協議</b>介紹

    進階課程-地址解析協議(ARP)

    電子發燒友網站提供《進階課程-地址解析協議(ARP).pdf》資料免費下載
    發表于 07-31 11:41 ?0次下載
    進階課程-<b class='flag-5'>地址</b><b class='flag-5'>解析</b><b class='flag-5'>協議</b>(<b class='flag-5'>ARP</b>)

    一文解析Linux中ARP學習和老化機制

    ARP學習和老化機制在Linux網絡通信中起著至關重要的作用。ARP(Address Resolution Protocol)地址解析協議
    發表于 08-04 16:55 ?1806次閱讀