ARP地址解析協議

在以太網中,不管是計算機的網卡,仍是網絡設備的接口,都存在一個咱們認爲是全球惟一物理地址(mac),而ARP協議,就是用來獲取到設備的物理地址的一個TCP/IP協議。 網絡

當一個數據包將要被轉發的時候,這個時候咱們只知道該數據包的目的IP,可是數據包得傳輸還須要進行一次二層封裝(以太包的封裝),而以太包中,源物理地址是本身的mac,須要知道目的mac,這時候,就須要經過ARP協議來,進行目的mac查詢。 ide

假設AB 發送數據包,假設,AIP192.168.1.1MAC地址爲0024.7EDF.CDCD。而BIP192.168.1.2MAC0050.56C0.0001。此時須要發送的這個數據包,源IP192.168.1.1,源MAC0024.7EDF.CDCD,目的IP 192.168.1.2,可是A並不知道BMAC地址是多少,因此須要進行ARP的請求。 spa

ABARP的過程以下: orm

一、     A發現本身並不知道BMAC地址(能夠經過ARP表來查看),將以廣播的方式,發送一個ARP請求包,在該ARP請求包中,源IP 192.168.1.1,源MAC0024.7EDF.CDCD,目的IP192.168.1.2,目標MAC0000.0000.0000(表明未知)。因爲該ARP請求包是以廣播的形式發送的,該網段上全部的主機均可以收到,可是因爲該請求中的目的IP192.168.1.2,則只有B收到會處理。 接口

二、     B發現該數據包爲ARP請求包且目的IP爲本身,則有兩件事情須要出路:將AIPMAC地址的對應關係存入本身的ARP表(主機的ARP表象,使用ARP –a命令能夠看到)中,以後以單播的方式發送ARP應答包給A,其中包含了本身的MAC地址。 ci

三、     A收到該ARP的應答包後,將主機BMAC地址加入到本身的ARP表中,將數據包封裝目的MAC後轉發出去。 it

從以上ARP協議的過程來看,其實經過生活中的例子,很容易理解。假使此時我面對一羣人,我要給小王一本書,此時這本書就是我要發的「數據包」,而「小王」這個名字,就是我所知道的目的IP,可是我並不知道小王是誰,因而我面對這羣人喊(發廣播):「誰是小王」,因而,雖然全部人都聽到了,可是隻是小王會給我應答,說:「我是小王」,小王此時的應答咱們能夠理解爲,咱們知道了目的MAC. ast

經過以上的例子,可能會有朋友說:現實中,萬一有人冒充小王欺騙怎麼辦,在以太網中難道沒有這種狀況? 我會告訴你:在以太網中,這種欺騙是存在的,這裏再也不詳細闡述,具體請搜索「ARP欺騙」。 class

相關文章
相關標籤/搜索