我遇到了一个问题,经过几天的调查,我意识到我需要一些建议。我的网络技能水平仍然很低。
我有两个路由器,带两个 LAN。我通过 LAN <-> WAN 连接将其中一个路由器连接到另一个路由器,从而创建一个单独的网络来包含控制器和设备。使用两个路由器的主要原因是,我可以拥有一个单独的 DCHP 服务器路由器 B连接。参见下图:
我可以通过以下方式访问控制器路由器 A网络,我可以通过设置端口/虚拟服务器进入基于 Web 的 GUI 来查看网络上的所有设备路由器 B。但是,我在控制器上有需要监控设备的代码路由器LAN。代码需要访问子网,以便能够将 IP 解析为 MAC 地址(ARP 请求)。目前我可以从路由器 B设备路由器 A设备,但无法将 IP 解析为 MAC 地址(我正在使用 NMAP)。我相信这是因为 ARP 请求仅在同一个子网中有效。
是否可以添加第二个静态 IP与路由器 A 的 LAN 位于同一子网中(在 A 的 DHCP 范围之外)至控制器在路由器 B网络,并以某种方式将其路由到路由器 B以便请求被解决并发回?
如果没有的话,还有其他选择吗?
附加信息:
控制器 :Linux——Raspbian
路由器 A:Belkin 调制解调器路由器
路由器 B:Edimax 路由器
答案1
网络 A 使用保留的私有(不可路由)C 类网络 (192.168.xx) 的一个 24 位子网。网络 B 使用不同的网络,但不在保留的私有 C 类网络内。如果您使用 192.168.3.x 上的网络 B 重新处理它,您可能会发现运气好一点。
网络 B 的外部连接应具有 192.168.2.x 上的地址。路由器 B(以及所有网络 B 主机)应将该地址作为外部网关。所有网络 B 主机的地址应为 192.168.3.x。如果路由器 B 未执行 NAT,则需要在其上设置 IPTables 以执行 NAT。
我认为您还需要为 A->B(在路由器 A 上)和 B->A(在路由器 B 上)构建静态路由,因为您使用的是不可路由的 IP。
另一个选择是移除路由器 B,用交换机代替,然后对网络 B 上的每个系统使用网络 A 上的 DHCP 保留。这样它们就都在同一个 IP 网络上了。
答案2
我得出的结论是,如果控制器没有直接连接到路由器网络。不确定是否可以使用静态路由来允许控制器 ARP 请求直接传递到路由器 A 的网络,但当我可以配置以下内容并且它按预期工作时,这似乎需要大量手动配置。
唯一的缺点是路由器 B网络无法访问互联网,但可以通过连接解决路由器 BWAN 连接路由器 A局域网连接不应该引起任何麻烦。
使用当前设置我无法访问路由器 B网页界面直接路由器网络,但可以在控制器中配置静态路由以允许访问路由器 B网关。或连接路由器 B到路由器 A只需通过 DHCP 分配的 IP 即可访问路由器 A。