华为---代理ARP工作过程示例分析

目录

[1. 示例场景](#1. 示例场景)

[2. 基本配置](#2. 基本配置)

[3. 配置代码](#3. 配置代码)

[4. 测试验证](#4. 测试验证)

[5. 抓包分析](#5. 抓包分析)

[5.1 在代理ARP环境下PC1和PC2通信分析](#5.1 在代理ARP环境下PC1和PC2通信分析)

[5.2 取消代理ARP环境下PC1和PC2通信分析](#5.2 取消代理ARP环境下PC1和PC2通信分析)

[【1】取消R1路由器GE 0/0/1端口ARP代理](#【1】取消R1路由器GE 0/0/1端口ARP代理)

[【2】取消R2路由器GE 0/0/1端口ARP代理](#【2】取消R2路由器GE 0/0/1端口ARP代理)


1. 示例场景

如上图所示, PC1和PC2通过代理ARP进行通信。

2. 基本配置

PC也可以配置网关IP地址,因为PC1和PC2的IP地址都是192.168.1.0/24网段的IP地址,所以PC1和PC2认为它们处于同一局域网,通过发送ARP广播就能查找到对方,不会通过网关进行路由去查找对方。即便是配置好路由,PC1和PC2也无法通信。

<Huawei>system-view
Huaweisysname R1
R1interface GigabitEthernet 0/0/1
R1-GigabitEthernet0/0/1ip address 192.168.1.254 24
R1-GigabitEthernet0/0/1interface GigabitEthernet 0/0/0
R1-GigabitEthernet0/0/0ip address 12.0.0.1 30
R1-GigabitEthernet0/0/0quit
R1ip route-static 192.168.2.0 24 12.0.0.2
R1ip route-static 3.3.3.3 32 12.0.0.2
R1-GigabitEthernet0/0/1arp-proxy enable

<Huawei>system-view
Huaweisysname R2
R2interface GigabitEthernet 0/0/0
R2-GigabitEthernet0/0/0ip address 12.0.0.2 30
R2-GigabitEthernet0/0/0interface GigabitEthernet 0/0/1
R2-GigabitEthernet0/0/1ip address 192.168.2.254 24
R2interface LoopBack 1
R2-LoopBack1ip address 3.3.3.3 32
R2-LoopBack1quit
R2ip route-static 192.168.1.0 24 12.0.0.1
R2-GigabitEthernet0/0/1arp-proxy enable

3. 配置代码

复制代码
system-view 
sysname R1
interface GigabitEthernet 0/0/0
ip address 12.0.0.1 30
interface GigabitEthernet 0/0/1
ip address 192.168.1.254 24
arp-proxy enable 
quit
ip route-static 192.168.2.0 24 12.0.0.2
ip route-static 3.3.3.3 32 12.0.0.2

system-view 
sysname R2
interface LoopBack 1	
ip address 3.3.3.3 32
interface GigabitEthernet 0/0/0
ip address 12.0.0.2 30
interface GigabitEthernet 0/0/1
ip address 192.168.2.254 24
arp-proxy enable 
quit
ip route-static 192.168.1.0 24 12.0.0.1

4. 测试验证

PC1和PC2通信正常。

5. 抓包分析

5.1 在代理ARP环境下PC1和PC2通信分析

PC1发送ARP请求:"谁是192.168.1.65?请告诉192.168.1.1"

R1的GE 0/0/1端口应答:"192.168.1.65在 00:e0:fc:06:24:04"

上图所示R1的GE 0/0/1端口MAC地址为 00e0-fc06-2404

在代理ARP环境下PC1和PC2通信过程为:

  1. PC1访问PC2,PC1判断PC2的IP地址和自己是同一网段;
  2. PC1发送ARP请求:"谁是192.168.1.65?请告诉192.168.1.1";
  3. 配置了代理ARP的R1路由器GE 0/0/1端口接收到PC1的ARP广播,查看自己的路由表是否有去往PC2所在网段的路由?
  4. 如果R1路由器的路由表有去往PC2所在网段的路由,则R1路由器GE 0/0/1端口用自己的MAC地址代替PC2的MAC地址进行应答,"192.168.1.65在 00:e0:fc:06:24:04",同时R1路由器GE 0/0/1端口和R2路由器GE 0/0/1端口以中间人的身份替PC1和 PC2进行"传话"通信;
  5. 如果R1路由器的路由表没有去往PC2所在网段的路由,则不应答。

上图为在R1上删除去往PC2所在网段路由后,PC1 ping PC2的截图, 没有应答。
R1undo ip route-static 192.168.1.64 27 12.0.0.2

5.2 取消代理ARP环境下PC1和PC2通信分析

【1】取消R1路由器GE 0/0/1端口ARP代理

R1-GigabitEthernet0/0/1undo arp-proxy enable

取消R1路由器GE 0/0/1端口ARP代理后,PC1访问PC2,PC1判断PC2的IP地址和自己是同一网段,PC1发送ARP请求:"谁是192.168.1.65?请告诉192.168.1.1",收不到应答,因为路由器R1隔离了ARP广播,而PC1所在局域网没有192.168.1.65 IP地址的终端,所以PC1访问不到PC2。

取消了R1路由器GE 0/0/1端口ARP代理,但没取消R2路由器GE 0/0/1端口ARP代理,PC2还能访问到PC1。

PC2访问PC1正常。因为R2路由器GE 0/0/1端口ARP代理,通信过程与"5.1 在代理ARP环境下PC1和PC2通信分析"小节一致。

【2】取消R2路由器GE 0/0/1端口ARP代理

同时取消R1路由器GE 0/0/1端口和R2路由器GE 0/0/1端口ARP代理,PC1访问不到PC2, PC2也访问不到PC1。原理与"【1】取消R1路由器GE 0/0/1端口ARP代理"小节一致。

相关推荐
nashane12 分钟前
HarmonyOS 6学习:深入解析冷启动中的ArkCompiler
学习·华为·harmonyos
风满城331 小时前
【鸿蒙原生应用开发实战】第四篇:相册与提醒——AlbumPage + ReminderPage 完整实现
华为·harmonyos
狮子再回头1 小时前
relhat9.1 sshd配置
linux·服务器·网络
不羁的木木1 小时前
《HarmonyOS 6.1 新能力实战之智感握姿》第三篇:实战案例——单手操作优化
华为·harmonyos
浮芷.2 小时前
HarmonyOS 6.1 沉浸式光感效果-样式切换效果问题解决方案-鸿蒙PC方向
华为·harmonyos·鸿蒙
不爱编程的小陈2 小时前
深入解析 Go 网络 I/O 的底层引擎:从 epoll 到 netpoll
服务器·网络·golang
木咺吟2 小时前
鸿蒙原生应用实战(三):表单交互与搜索筛选——添加包裹、搜索过滤与公司管理
华为·harmonyos
IT WorryFree3 小时前
FORTINET-CORE-MIB、FORTINET-FORTIGATE-MIB
网络
lqj_本人3 小时前
鸿蒙pc:Hoppscotch-hoppscotch-ohos适配全记录
华为·harmonyos
xcLeigh3 小时前
鸿蒙PC平台 imv 图片查看器适配实战:极简主义设计的 Electron 迁移
华为·electron·harmonyos·鸿蒙·imv·图片操作·web_engine