我正在尝试使用新提供商的 vdsl 路由器来启动和运行我的网络,该路由器无法在“调制解调器模式”或“桥接模式”下运行。
我目前的设置如下:
我有两个托管交换机,都带有多个 192.168.x.0/24 VLAN(VLANX 映射到网络 192.168.X.0/24)。所有这些 VLAN 都通过中继端口连接到我的 openbsd 防火墙(启用了 IP 转发)。网络上的每台计算机都将防火墙上的虚拟网卡地址设置为默认网关。例如,vlan20 的网络为 192.168.20.0/24,防火墙的地址为 192.168.20.1,并且此地址设置为此 VLAN 上每个客户端的默认网关。使用此设置,我可以在相同或不同的 VLAN/交换机上的所有客户端之间进行 ping 操作。
问题来了:VDSL 路由器通过另一个专用的 192.168.x.0/24 vlan(例如 192.168.100.0/24)连接到防火墙,防火墙 ip 为 192.168.100.2,vdsl 路由器 ip 为 192.168.100.1。我已将 192.168.100.2 设置为防火墙上的默认网关,现在可以从防火墙成功访问互联网,但无法从我的其他机器访问。Traceroute 显示数据包被卡在客户端 vlan 的网关处,例如,如果我尝试从客户端 192.168.20.100 访问外部,数据包会被卡在客户端网关 192.168.20.1 处。
我已禁用所有防火墙规则(出于测试目的),并尝试在防火墙上为 vdsl-vlan 启用 nat(vdsl-router 当然也会在互联网端口上执行自己的 nat)。我是否遗漏了某些显而易见的东西?
vdsl-router 连接到交换机的“访问”端口,因此不知道 VLAN。此外,由于物理限制,我无法移除中间的其中一个交换机。
感谢您的帮助!
答案1
也许我遗漏了您的设置中的某些内容,但我认为问题在于此。
如果调制解调器通过接入端口连接到设计中所示的其中一个交换机,那么该调制解调器需要为所有 VLAN 提供指向 OpenBSD 防火墙的路由。
这可以解释为什么调制解调器似乎只能“看到”防火墙,因为它是整个第 2 层。但它无法到达其中一台 PC,因为调制解调器不知道任何其他 IP 路由(直接连接的路由除外)。