我做了一些课程练习——我需要弄清楚网络是如何工作的,以及缺少的组件是什么。
网络设置是 -
- 一台 Windows PC(客户端)
- 两个路由器 - 192.168.1.1 和 192.168.2.1
- 我需要弄清楚一些缺失的组件。
所以,我所知道的 - 有2 个不同的路由器,在 2 个不同的子网中,客户端计算机可以通过更改 IP 配置(设置静态 IP)连接到每个路由器。奇怪的部分现在开始,两个路由器在客户端的 ARP 中具有相同的 MAC 地址 AA:BB:CC:DD:EE:FF,而且它不是它们中的任何一个的 MAC - 我相信它是缺少组件的 mac:
arp -a (on client)
192.168.1.1 AA:BB:CC:DD:EE:FF
192.168.2.1 AA:BB:CC:DD:EE:FF
所以丢失的组件没有IP,但是电脑arp缓存中网关的MAC地址就是组件的mac地址。
我对此有一些想法——
- HUB - 只是电力,所以什么都不应该改变
- Switch - 无需更改mac地址
- 路由器 - 为什么配置网关的 IP 是真正的网关?
所以,我不认为它是普通的交换机、集线器或路由器。
有没有人见过这样的设置?有什么想法吗?我真的很困惑......看起来如果某个组件正在做一个 ARP 欺骗 XD。
网络图
我不确定这里是否有足够的信息,但这听起来像是代理 ARP 的工作。
https://en.m.wikipedia.org/wiki/Proxy_ARP
是否存在代理 ARP 行为以支持某些其他技术,例如第 2 层 WAN 连接或 VPN 服务器,尚有争议。它用于许多需要位于不同物理网络上的设备参与同一逻辑 IP 子网的场景。
进一步阅读:https ://www.rfc-editor.org/rfc/rfc1027
未知组件不能是第 2 层托管交换机,或者它本身就是网络上具有自己 MAC 和 IP 地址的主机。要没有自己的 IP 地址,它必须是非托管 L2 交换机。由于通常非托管交换机没有 MAC 地址,因此它必须是专用交换机。
交换机在技术上工作在第 2 层,处理 L2 帧中的第 2 层地址,以确定要转发到哪个端口。
通常,交换机没有自己的 MAC 地址,因此不需要响应 ARP 请求。ARP 帧只是常规交换机的另一个 L2 帧,它们根据其目标 MAC 地址进行转发(通常广播用于 ARP 请求,单播用于 ARP 响应)。
然而,有些交换机被设计得更智能一些,不仅是为了解释二层信令/控制协议,还为了做一些基本的三层功能。
具体取决于支持的功能。这包括 DHCP 中继、IGMP 侦听、MCAST 优化、L4-ACL/QoS、Proxy-ARP 等。对于其中的一些,交换机可能会响应 ARP 请求。
这些交换机为数据包处理管道添加了特殊处理,以便挑选出 ARP 帧进行进一步检查,因此这些帧的处理方式与其他 L2 帧不同。ARP 请求负载中嵌入的 IP 地址将根据交换机实现的特定功能的需要进行查看。
对于这种特殊处理,交换机不仅限于 L2 报头,还允许更深入地查看 ARP 帧并拥有自己的 MAC 地址。