我正在尝试用三个路由器和一个交换机构建一个家庭网络。我在这里和互联网上搜索后没有找到太多结果,部分原因是每个问题都非常具体,而且我在这方面(充其量)还是个新手。
我想在两个子网上维护两个独立的无线局域网(这样设备就不会向对方广播),同时通过电缆将两个子网连接到连接互联网的路由器。尝试起草有线网络(含设备类型):
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.*/24
via192.168.3.2
和192.168.0.*/24
via 192.168.3.3
(建议在另外两个路由器上也设置它们)。
你这样做了吗?你是否也为 TP-Link 和华为提供了静态地址,例如通过在 ZTE 中配置 DHCP?
我无法在 ZTE 上(或任何其他路由器上)配置静态路由。
您是否拥有任何路由器的 root 访问权限?您是否检查过是否可以在任何路由器上安装替代固件(例如 OpenWRT)?
TP-Link 或华为是否可以配置为将 WLAN AP 与 LAN 接口桥接,还是总是存在分离?(如果可能的话,您可以使用其他东西,例如 RaspPi 或带有 OpenWRT 的东西,作为子网的路由器(原始意义上,转发 IP 数据包))。