三个路由器实现子网交叉访问

三个路由器实现子网交叉访问

我正在尝试用三个路由器和一个交换机构建一个家庭网络。我在这里和互联网上搜索后没有找到太多结果,部分原因是每个问题都非常具体,而且我在这方面(充其量)还是个新手。

我想在两个子网上维护两个独立的无线局域网(这样设备就不会向对方广播),同时通过电缆将两个子网连接到连接互联网的路由器。尝试起草有线网络(含设备类型):

Internet <---> ZTE MC7010 [192.168.2.1/24] <---> NETGEAR GS105GE <--+--> TP-Link Deco X20 [192.168.1.1/23]
                                                                    |
                                                                    +--> HUAWEI AX3 [192.168.0.1/23]

所以我有三个子网(192.168.2.x、192.168.1.x 和 192.168.0.x),每个子网都有自己的路由器和 DHCP 服务器。我真的试图了解如何配置它们(尤其是子网掩码),但我认为我在这里做了一些本质上错误的事情。

我的目标是从 192.168.2.x 子网访问 192.168.0.x 设备(反之亦然,但这不是我主要关心的问题)。通过将两个 LAN 路由器的子网掩码设置为 /23,我以为我可以启用对相应子网的访问,但无济于事。另一个问题是,在华为路由器上,我只能将 LAN 电缆插入 WAN 端口(否则我无法绕过 UI 中的警告),并且我可能会遇到一些防火墙问题。但是,我在 UI 中停用了防火墙,并检查了可能导致问题的任何其他设置,但没有成功。

任何想法和帮助都非常欢迎!我在这里的工作真的超出了我的知识范围…… ;)

答案1

通过将两个 LAN 路由器的子网掩码设置为 /23,我认为我可以启用对相应子网的访问,但无济于事。

不,这几乎与其工作原理相反。

子网掩码定义设备(主机或路由器)的当地的子网。“本地”具体是指所有可以访问的设备没有通过路由器(即不使用“网关”)——纯粹通过交换机和 Wi-Fi 接入点。

但是通过将子网掩码切换为这些特定的 /23,TP-Link 和华为的地址范围现在重叠(在两个路由器上都从 192.168.0.0 一直到 192.168.1.255)。

这意味着连接到 TP-Link 的设备现在认为华为是本地人(即使它们不是!)并且永远不会尝试使用网关来访问它们;它只会进行本地 ARP 查询(这将失败)。所以这与你想要的正好相反。

需要注意的是,子网掩码实际上并不制作可在第 2 层访问的设备(即直接通过交换机/AP 访问);它仅通知告诉他们哪些 IP 地址可以在第 2 层访问。子网掩码需要反映物理拓扑,而不是相反。

(另外,这不是使用 /23 的问题;而是重叠网络。只要子网地址范围不重叠,/24 或 /23 或 /19 或任何其他大小都可以同样有效。)


为了实现这一点(即故意将 3 个子网分开),首先返回到非重叠网络(只需将配置切换回 /24),然后配置静态路由在每个路由器上,将它们指向所有其他子网。

例如,ZTE 需要通过 TP-Link 作为“网关”路由到 192.168.1.0/24,并通过 ZTE 路由到 192.168.2.0/24。请注意,“网关”地址必须是面向 ZTE 的地址(因为 ZTE 已经知道如何到达它)——即,从 ZTE 的角度来看,TP-Link 的“WAN”地址(而不是 192.168.1.1)才是“网关”。

最有可能的是,TP-Link 和华为都已经将其“默认”路由指向中兴路由器,所以现在它们应该技术上已经能够通过从 ZTE 反弹数据包到达彼此的子网,但为了获得更好的性能,你应该也为它们添加静态路由(即从 TP-Link 直接到华为子网,反之亦然)。请注意,它们不需要 ZTE 子网的路由,因为它们已经直接该子网。

答案2

从原始(已更正)网络和 dirkt 的绘图开始:

192.168.1.0/24              192.168.2.0/24               192.168.0.0/24
  :                            |                             :
  :                            |                             :
  :... TP-Link Deco X20.    ---|                             :
  :  192.168.1.1  192.168.2.2  |                             :
  :                            |---    HUAWEI AX3        ....:
  :                            |   192.168.2.3  192.168.0.1  :
  :                            |                             :
  :                            |                             :
                               |
                           192.168.2.1
                          ZTE MC7010
                           <routable> -> Internet

需要注意一些重要事项:192.168.2.0/24 是网络地址(地址网络部分的所有位都应为零)192.168.2.1 是机器地址 - 在这里,我假设它是 ZTE 在其内部接口上的地址。同样,TP-Link 的内部地址为 192.168.1.1,华为的内部地址为 192.168.0.1

我们还需要分配静止的为 TP-Link 和华为分配 OUTSIDE 地址...“outside”在本例中是 ZTE(内部)网络上的接口。在本例中,我们为 TP-Link 分配了 192.168.2.2 地址,为华为分配了 192.168.2.3 地址。因此,现在我们有:

      internet -- <routable>  = ZTE     = 192.168.2.1 -- 192.168.2.0/24 
192.168.2.0/24 -- 192.168.2.2 = TP-Link = 192.168.1.1 -- 192.168.1.0/24 
192.168.2.0/24 -- 192.168.2.3 = Huawei  = 192.168.0.1 -- 192.168.0.0/24 

其中 -- 表示接口所在的网络,= 表示其地址。

因此,现在每个人都知道如何访问 192.168.2.0 网络,但没有人知道如何路由到 TP-Link 和华为的内部网络,因此您需要添加静态路由。在 ZTE 上,您需要添加:

Name       Network           gateway
TP-Link   192.168.1.0/24 -> 192.168.2.2 
Huawei    192.168.0.0/24    192.168.2.3

在TP-link上,您可以选择添加:

Name       Network           gateway
Huawei    192.168.0.0/24    192.168.2.3 =

在华为上,您可以选择添加:

Name       Network           gateway
TP-Link   192.168.1.0/24    192.168.2.2 

我之所以说你可以可选地在TP-Link和华为上添加静态路由,是中兴应该当它们尝试通过 ZTE 转发数据包时,将它们指向对方...但是当您添加额外的静态路由时,您只需保存额外的工作。(即使 ZTE 发生故障,子网仍然能够相互通信)

答案3

除了其他答案之外:

尝试将子网画成直线,使路由器上的所有接口可见:

192.168.1.*/24              192.168.3.*/24               192.168.0.*/24
     :                            |                             :
     :                            |                             :
     :... TP-Link Deco X20     ---|                             :
     :  192.168.1.1  192.168.3.2  |                             :
     :                            |---    HUAWEI AX3        ....:
     :                            |   192.168.3.3  192.168.0.1  :
     :                            |                             :
     :                            |                             :
                                  |
                              192.168.3.1
                             ZTE MC7010
                              <internet>

(编辑以删除 NETGEAR,因为它是一个交换机)

在这种情况下,网络拓扑很简单:每个子网都有一个网关(此处为.1),它还可以充当 DHCP 服务器,分配网关地址。

所以您甚至不需要分发路由(这对于更复杂的拓扑来说是必要的)。

如有疑问,请保留标准 /24 子网(192.168.*.*足够大,10.*.*.*如果需要请使用)。


但我几乎什么都访问不了

我写道你不必分发路由,但至少需要在 ZTE 上将路由设置为162.168.1.*/24via192.168.3.2192.168.0.*/24via 192.168.3.3(建议在另外两个路由器上也设置它们)。

你这样做了吗?你是否也为 TP-Link 和华为提供了静态地址,例如通过在 ZTE 中配置 DHCP?


我无法在 ZTE 上(或任何其他路由器上)配置静态路由。

您是否拥有任何路由器的 root 访问权限?您是否检查过是否可以在任何路由器上安装替代固件(例如 OpenWRT)?

TP-Link 或华为是否可以配置为将 WLAN AP 与 LAN 接口桥接,还是总是存在分离?(如果可能的话,您可以使用其他东西,例如 RaspPi 或带有 OpenWRT 的东西,作为子网的路由器(原始意义上,转发 IP 数据包))。

相关内容