网关/路由器 - 通过单个 WAN 接口/端口在虚拟 WAN 接口上连接多个公共 IP

网关/路由器 - 通过单个 WAN 接口/端口在虚拟 WAN 接口上连接多个公共 IP

我想设置一个具有多个公共 WAN/IP 接口的路由器,这些接口可以通过单个物理 WAN 接口/端口进行路由。我意识到,为了实现完全的第 2 层兼容性,每个接口上都需要有不同的 MAC 地址,但这可以通过 MAC 克隆、随机化 MAC 或使用某种虚拟 MAC 分配来实现(类似于 VMware 虚拟 LAN 和接口)。

我很确定这是可能的,因为我已经看到过非常相似的服务器环境设置,这些环境具有 Linux 网络配置并且仅使用单个物理 NIC,但有人可以确认这是可能的,或者有解决方案或基本解释为什么或为什么不可能起作用吗?

如果是这样,使用 DD-WRT 之类的东西是否可行?这是我目前在华硕 RT-N66U 上运行的。OpenWRT 看起来更类似于传统的 Linux 网络配置,但不幸的是我的路由器不支持它。然而,DD-WRT 运行良好,但网络配置是通过 NVRAM 变量完成的 - 这没有很好的记录,尤其是网络配置和接口方面。

我最终将有一些 IPTables 配置来将单独的子网(可能是 VLAN,但我希望保持一切开放且可访问,但仅限于特定子网)路由到每个单独的 WAN 接口。

我不想做的是配置多个 LAN 端口作为 WAN 端口使用并设置“双”WAN 连接,然后只需通过交换机物理桥接它们即可连接到我的 ISP 的单个物理 WAN 连接。

以下是我想要做的一个很好的例子,只使用实际的网络路由器而不是具有单个 NIC 的服务器。

编辑:

ISP 通过 RADIUS/MAC 认证 DHCP 连接提供互联网。他们还提供静态 IP 块。这两种选择对我来说都是可用的,并且在任何配置下都可以使用。我的主要问题是如何使用路由器设置虚拟接口。最好使用 DD-WRT,因为我目前正在使用

答案1

这不仅是可能的,而且很常见。我首选的方法是使用某种虚拟机管理程序来托管各自虚拟机中的离散功能单元。使用这种技术将允许您在虚拟化资源中配置理想的配置,同时使它们彼此保持一定程度的隔离。例如,您可以非常轻松地拥有一台具有单个物理 NIC 的机器,该机器托管一个网关设备,该网关设备已为您的应用程序配备了尽可能多的虚拟 NIC。

为了证明这是多么容易,我碰巧在一台 Intel Atom “上网本”型计算机上使用 Xen 来托管六个单独的 VM,这些 VM 在家中提供网络服务。我知道 SF 不喜欢听到有关家庭解决方案的信息 - 我只是将其作为轶事提供,Xen 是一个成熟的可用于生产的虚拟机管理程序,我向您保证它可以胜任这项任务。这一个物理 NIC 伪装成许多不同的设备,并且它还会在适当的情况下进行 VLAN 标记。

如果您想要更轻量级的东西,您也可以在 Linux 中配置“macvlan”接口,但我发现很难找到相关文档。我已经让它工作了,但它比使用 Xen 和配置表现为具有许多接口的 VM 要麻烦得多(或者您可能喜欢的任何虚拟机管理程序,因为 vmware 在合适的硬件上同样强大。我使用带有 Atom CPU 的 Xen,但我使用更适合虚拟化的硬件对 vmware 做了同样的事情)。

相关内容