位址解析協議,即arp(address resolution protocol),是根據ip位址獲取實體地址的乙個tcp/ip協議。主機傳送資訊時將包含目標ip位址的arp請求廣播到網路上的所有主機,並接收返回訊息,以此確定目標的實體地址;收到返回訊息後將該ip位址和實體地址存入本機arp快取中並保留一定時間,下次請求時直接查詢arp快取以節約資源。位址解析協議是建立在網路中各個主機互相信任的基礎上的,網路上的主機可以自主傳送arp應答訊息,其他主機收到應答報文時不會檢測該報文的真實性就會將其記入本機arp快取;由此攻擊者就可以向某一主機傳送偽arp應答報文,使其傳送的資訊無法到達預期的主機或到達錯誤的主機,這就構成了乙個arp欺騙。arp命令可用於查詢本機arp快取中ip位址和mac位址的對應關係、新增或刪除靜態對應關係等。相關協議有rarp、**arp。ndp用於在ipv6中代替位址解析協議。
位址解析協議由網際網路工程任務組(ietf)在2023年11月發布的rfc 826中描述制定。[1] 位址解析協議是ipv4中必不可少的協議,而ipv4是使用較為廣泛的網際網路協議版本(ipv6仍處在部署的初期)。
osi模型把網路工作分為七層,ip位址在osi模型的第三層,mac位址在第二層,彼此不直接打交道。在通過乙太網傳送ip資料報時,需要先封裝第三層(32位ip位址)、第二層(48位mac位址)的報頭,但由於傳送時只知道目標ip位址,不知道其mac位址,又不能跨第
二、三層,所以需要使用位址解析協議。使用位址解析協議,可根據網路層ip資料報包頭中的ip位址資訊解析出目標硬體位址(mac位址)資訊,以保證通訊的順利進行。[2]
主機a的ip位址為192.168.1.1,mac位址為0a-11-22-33-44-01;
主機b的ip位址為192.168.1.2,mac位址為0a-11-22-33-44-02;
第1步:根據主機a上的路由表內容,ip確定用於訪問主機b的**ip位址是192.168.1.2。然後a主機在自己的本地arp快取中檢查主機b的匹配mac位址。
第2步:如果主機a在arp快取中沒有找到對映,它將詢問192.168.1.2的硬體位址,從而將arp請求幀廣播到本地網路上的所有主機。源主機a的ip位址和mac位址都包括在arp請求中。本地網路上的每台主機都接收到arp請求並且檢查是否與自己的ip位址匹配。如果主機發現請求的ip位址與自己的ip位址不匹配,它將丟棄arp請求。
第3步:主機b確定arp請求中的ip位址與自己的ip位址匹配,則將主機a的ip位址和mac位址對映新增到本地arp快取中。
第5步:當主機a收到從主機b發來的arp回覆訊息時,會用主機b的ip和mac位址對映更新arp快取。本機快取是有生存期的,生存期結束後,將再次重複上面的過程。主機b的mac位址一旦確定,主機a就能向主機b傳送ip通訊了。
檢視arp快取
arp快取是個用來儲存ip位址和mac位址的緩衝區,其本質就是乙個ip位址-->mac位址的對應表,表中每乙個條目分別記錄了網路上其他主機的ip位址和對應的mac位址。每乙個乙太網或令牌環
網路介面卡都有自己單獨的表。當位址解析協議被詢問乙個已知ip位址節點的mac位址時,先在arp快取中檢視,若存在,就直接返回與之對應的mac位址,若不存在,才傳送arp請求向區域網查詢。
為使廣播量最小,arp維護ip位址到mac位址對映的快取以便將來使用。arp快取可以包含動態和靜態專案。動態專案隨時間推移自動新增和刪除。每個動態arp快取項的潛在生命週期是10分鐘。新加到快取中的專案帶有時間戳,如果某個專案新增後2分鐘內沒有再使用,則此專案過期並從arp快取中刪除;如果某個專案已在使用,則又收到2分鐘的生命週期;如果某個專案始終在使用,則會另外收到2分鐘的生命週期,一直到10分鐘的最長生命週期。靜態專案一直保留在快取中,直到重新啟動計算機為止。[2]
arp -a或arp –g
用於檢視快取中的所有專案。-a和-g引數的結果是一樣的,多年來-g一直是unix平台上用來顯示arp快取中所有專案的選項,而windows用的是arp -a(-a可被視為all,即全部的意思),但它也可以接受比較傳統的-g選項
arp位址轉換表是依賴於計算機中高速緩衝儲存器動態更新的,而高速緩衝儲存器的更新是受到更新週期的限制的,只儲存最近使用的位址的對映關係表項,這使得攻擊者有了可乘之機,可以在高速緩衝儲存器更新表項之前修改位址轉換表,實現攻擊。arp請求為廣播形式傳送的,網路上的主機可以自主傳送arp應答訊息,並且當其他主機收到應答報文時不會檢測該報文的真實性就將其記錄在本地的mac位址轉換表,這樣攻擊者就可以向目標主機傳送偽arp應答報文,從而篡改本地的mac位址表。[5] arp欺騙可以導致目標計算機與閘道器通訊失敗,更會導致通訊重定向,所有的資料都會通過攻擊者的機器,因此存在極大的安全隱患。
防禦措施
ARP協議 位址解析協議
網路層使用的是ip位址,但實際網路的鏈路上傳送資料幀時,最終還是必須使用該網路的硬體位址。arp快取記憶體 ip位址到硬體位址的對映表 那麼一台主機 a 是如何獲知本區域網內其他主機或路由的硬體位址的?主機a廣播arp請求分組 我的ip是 硬體位址是 請告知我ip位址為 主機的硬體位址。本區域網內的...
位址解析協議 ARP
1.什麼是arp?英文原義 address resolution protocol 中文釋義 是乙個位於tcp ip協議棧中的低層協議,負責將某個ip位址解析成對應的mac位址。區域網中,網路中實際傳輸的是 幀 幀裡面是有目標主機的mac位址的。所謂 位址解析 就是主機在傳送幀前將目標ip位址轉換成...
位址解析協議(ARP)
位址解析協議 arp 作用是將邏輯位址對映為實體地址,即將ip位址和實體地址關聯起來。當主機或路由器想要知道網路上另一台主機或者路由器的實體地址的時候,它就會傳送arp查詢分組。這個分組包括傳送端的實體地址和ip位址,以及接收端的ip位址。因為傳送端不知道接收端的實體地址,所以查詢就在網路上廣播。a...