代理ARP實驗
一、ARP簡介
ARP(Address Resolution Protocol,地址解析協議)是將 IP 地址解析爲以太網 MAC 地址(或稱物理地址)的協議。在局域網中,當主機或其它網絡設備有數據要發送給另一個主機或設備時,它必須知道對方的網絡層地址(即 IP 地址)。但是僅僅有 IP 地址是不夠的,因爲 IP 數據報文必須封裝成幀才能通過物理網絡發送,因此發送站還必須有接收站的物理地址,所以需要一個從 IP 地址到物理地址的映射。ARP 就是實現這個功能的協議。
二、代理ARP簡介
處於同一網段內的主機,當連接到設備的不同三層接口時,可以利用設備的代理 ARP 功能,通過三層轉發實現互通。
代理 ARP 分爲普通代理 ARP 和本地代理 ARP,二者的應用場景有所區別:
1. 普通代理 ARP 的應用環境爲:想要互通的主機分別連接到設備的不同三層接口上,且這些主機不在同一個廣播域中。
2. 本地代理 ARP 的應用環境爲:想要互通的主機連接到設備的同一個三層接口上,且這些主機不在同一個廣播域中。
這次實驗我們做普通的ARP代理,後續我們再來做本地代理ARP實驗。
三、實驗環境
PC1 IP地址:10.0.10.1/16
PC2 IP地址:10.0.20.1/16
AR1 GE0/0/0 IP地址10.0.10.254/24
AR1 GE0/0/1 IP地址10.0.20.254/24
三、實驗原理
PC1與PC2在同一網段,PC1 ping PC2 ,PC1會發送ARP請求給路由器,ARP報文爲廣播報文,路由器會隔離廣播,那麼PC2就收不到PC1發送的ARP請求,也就無法通信。
如果在AR1上配置了代理ARP,AR1可以應答 PC1 的 ARP 請求,同時,AR1 相當於 PC2 的代理,把從其他主機發送過來的報文轉發給它。PC1與PC2可以通信。
四、實驗內容
1. PC1與PC2只配置IP地址和掩碼,不需要配置網關。
2. AR1配置命令
[AR1]interface GigabitEthernet 0/0/0
[AR1-GigabitEthernet0/0/0]ip address 10.0.10.254 24
[AR1-GigabitEthernet0/0/0]quit
[AR1]interface GigabitEthernet 0/0/1
[AR1-GigabitEthernet0/0/1]ip address 10.0.20.254 24
3. 現在PC1是無法ping通PC2的
4. 開始在AR1上配置代理ARP。
[AR1]interface GigabitEthernet 0/0/0
[AR1-GigabitEthernet0/0/0]arp-proxy enable
[AR1-GigabitEthernet0/0/0]quit
[AR1]interface GigabitEthernet 0/0/1
[AR1-GigabitEthernet0/0/1]arp-proxy enable
5. 現在PC1可以ping通PC2
在轉發ARP互相學習MAC地址過程中丟兩個包,屬於正常現象。
六、實驗分析
1.我們來看一下ARP是如何被轉發的
a.首先PC1發送一個ARP請求廣播報文。
包含源IP地址和源MAC,目標IP地址和目標MAC(全F)
b.路由器從GE0/0/0端口收到後,修改了源IP地址和源MAC地址。
源IP和源MAC改爲GE0/0/1端口的IP和MAC地址,然後從GE0/0/1發出
c. PC2收到這條ARP請求之後,單播回覆GE0/0/1的ARP請求。
源IP和目標MAC是PC2,目標IP和目標MAC爲GE0/0/1
d.路由器收到PC2發送的ARP回覆,修改了源MAC地址,目標MAC地址,目標IP地址。
源MAC地址改爲GE0/0/0的MAC地址,目標MAC與IP改爲PC1。
e.至此路由器代理ARP的工作就完成了。
2.現在來看看PC機和路由器的ARP表。
a.PC1的ARP表
b.PC2的arp表
c.路由器的ARP表
[AR1]display arp all
IP ADDRESS MAC ADDRESS EXPIRE(M) TYPE INTERFACE ***-INSTANCE
VLAN/CEVLAN PVC
------------------------------------------------------------------------------
10.0.10.254 00e0-fccf-3f6a I - GE0/0/0
10.0.10.1 5489-9856-2c1c 1 D-0 GE0/0/0
10.0.20.254 00e0-fccf-3f6b I - GE0/0/1
10.0.20.1 5489-98d1-5cdd 1 D-0 GE0/0/1
------------------------------------------------------------------------------
Total:4 Dynamic:2 Static:0 Interface:2
d.可以看出PC1,PC2的ARP表的目的地址都指向了路由器。
六、實驗總結
處於同一網段內的主機,當連接到設備的不同三層接口時,可以利用設備的代理 ARP 功能,通過三層轉發實現互通。
代理 ARP 功能可以在主機沒有配置缺省網關或者主機沒有任何路由能力的情況下使用。但是不建議使用這種方法,路由器本身作用就是隔離廣播的,這樣做有可能會導致網絡中存在大量廣播報文,佔用網絡帶寬。