1. 程式人生 > 實用技巧 >地址解析協議arp

地址解析協議arp

什麼是網路協議?arp為啥是一個入門級別協議?

網路協議指的是計算機網路中互相通訊的對等實體之間交換資訊時所必須遵守的規則的集合
網路裝置有資料要傳送給另一臺網路裝置時,必須要知道對方的網路層地址(即IP地址)。IP地址由網路層來提供,但是僅有IP地址是不夠的,IP資料報文必須封裝成幀才能通過資料鏈路進行傳送。資料幀必須要包含目的MAC地址,因此傳送端還必須獲取到目的MAC地址

作用:已知對方ip地址,來獲取對方的mac地址
因為主機在傳送資料之前,會進行封裝 發現封裝到二層的時候 DMAC地址這一塊我獲取不了 我主機這邊會發送一個request的廣播報文出去 知道收到reply相應訊息後 我主機才能夠封裝完成,並把資料傳送出去

掌握普通arp、免費arp、代理arp作用

普通ARP的工作過程

第一步:主機A想要和主機C通訊

第二步:主機A首先會查詢自己的ARP快取表

這個ARP快取表根據主機系統的不同,快取時間也會不同,在windows系統當中快取時間為20分鐘左右

第三步:主機A傳送廣播的ARP請求(REQUEST)

第四步:目標主機收到回覆ARPREPAY相應

注意:此時目標主機也會在對應的快取表裡面儲存著主機A的IP地址和對應的MAC地址

第五步:主機A收到目標主機的回覆

免費ARP

主機被分配了IP地址或者IP地址發生變更後,必須立刻檢測其所分配的IP地址在網路上是否是唯一的,以避免地址衝突

功能一: 檢查IP地址配置是否有衝

我們在AR2的G0/0/2介面配置IP地址

[R2-GigabitEthernet0/0/2]ip address 192.168.1.2 24
Nov 13 2019 11:40:42-08:00 R2 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol IP 
on the interface GigabitEthernet0/0/2 has entered the UP state. 
[R2-GigabitEthernet0/0/2]dis this
[V200R003C00]
#
interface GigabitEthernet0/0/2
 ip address 192.168.1.2 255.255.255.0
#

在R2的G0/0/2介面進行抓包

此時把AR1的IP地址也配置成192.168.1.2/24,檢視如下資訊

[R1-GigabitEthernet0/0/1]ip address 192.168.1.2 24
Nov 13 2019 11:47:59-08:00 R1 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol IP 
on the interface GigabitEthernet0/0/1 has entered the UP state. 
[R1-GigabitEthernet0/0/1]
Nov 13 2019 11:48:01-08:00 R1 ARP/4/**ARP_IPCONFLICT**_TRAP:OID 16777216.50331648.10
0663296.16777216.67108864.16777216.3674669056.83886080.419430400.2063597568.3355
4432.100663296 ARP detects IP conflict. (IP address=2.1.168.192, Local interface
=GigabitEthernet0/0/1, Local MAC=00e0-fc5d-1f32, Local vlan=0, Local CE vlan=0, 
Receive interface=GigabitEthernet0/0/1, Receive MAC=00e0-fcb1-5891, Receive vlan
=0, Receive CE vlan=0, IP conflict type=Local IP conflict). 
[R1-GigabitEthernet0/0/1]
Nov 13 2019 11:48:01-08:00 R1 %%01ARP/4/ARP_DUPLICATE_IPADDR(l)[1]:Received an A
RP packet with a duplicate IP address from the interface. (IpAddress=2.1.168.192
, InterfaceName=GigabitEthernet0/0/1, MacAddress=00e0-fcb1-5891) 
[R1-GigabitEthernet0/0/1]

並且會發現,當地址衝突的時候,鏈路上面會不斷有免費ARP的發出,每5s傳送一次

功能二:重新整理交換機的MAC地址表(VRRP的場景下)

如果Master發生故障 裝置的狀態變為Master之後,會立刻傳送免費ARP來重新整理交換機上的MAC表項,從而把使用者的流量引到此裝置上來,整個過程對使用者完全透明。

代理ARP

華為預設不開啟
開啟代理ARP

interface GigabitEthernet0/0/0
 arp-proxy enable

解決問題

在不設定閘道器的場景,實現不同的網段的訪問

路由式Proxy ARP就是使那些在同一網段卻不在同一物理網路上的網路裝置能夠相互通訊的一種功能

PC1的MAC地址:54-89-98-24-42-29
PC2的MAC地址:54-89-98-B7-79-9D
AR1的G0/0/0介面MAC地址:00e0-fc31-53e4
AR1的G0/0/1介面MAC地址:00e0-fc31-53e5

AR1上面的配置
#
interface GigabitEthernet0/0/0
 ip address 172.16.1.254 255.255.255.0 
 arp-proxy enable
#
interface GigabitEthernet0/0/1
 ip address 172.16.2.254 255.255.255.0 
 arp-proxy enable
#


分析一下PC1訪問PC2的整個流程是怎麼樣的?

靜態路由使用出介面的場景

如圖所示:在AR1和AR3各自配置如下靜態路由?請問:AR1能夠訪問AR3的IP地址嗎?

如果訪問不了?請給出說明的原因?需要通過什麼方式的修改才能進行訪問?
在AR2上面開啟arp-proxy功能
#
interface GigabitEthernet0/0/0
 ip address 12.1.1.2 255.255.255.0 
 arp-proxy enable
#
interface GigabitEthernet0/0/1
 ip address 23.1.1.2 255.255.255.0 
 arp-proxy enable
#

R2裝置的各個介面的MAC地址
AR2裝置介面的G0/0/0的MAC地址:00e0-fc60-2626
AR2裝置介面的G0/0/1的MAC地址:00e0-fc60-2627
檢視AR1裝置的ARP表項:
<R1>display arp
IP ADDRESS      MAC ADDRESS     EXPIRE(M) TYPE        INTERFACE   vVpPnN-INSTANCE 
                                          VLAN/CEVLAN PVC                      
------------------------------------------------------------------------------
12.1.1.1        00e0-fc01-5a32            I -         GE0/0/0
23.1.1.3        00e0-fc60-2626  17        D-0         GE0/0/0
12.1.1.2        00e0-fc60-2626  17        D-0         GE0/0/0
------------------------------------------------------------------------------
Total:3         Dynamic:2       Static:0     Interface:1    
檢視AR3的ARP表項
<R3>display arp
IP ADDRESS      MAC ADDRESS     EXPIRE(M) TYPE        INTERFACE   vVpPnN-INSTANCE 
                                          VLAN/CEVLAN PVC                      
------------------------------------------------------------------------------
23.1.1.3        00e0-fcf2-675a            I -         GE0/0/1
23.1.1.2        00e0-fc60-2627  17        D-0         GE0/0/1
12.1.1.1        00e0-fc60-2627  17        D-0         GE0/0/1
------------------------------------------------------------------------------
Total:3         Dynamic:2       Static:0     Interface:1    

兩臺電腦跨網段之間資料傳遞過程中的封裝和解封裝