我在我的 ISP 的公共网络上有一些服务器,比如说192.168.2.0/24
。现在我的提供商为我提供了额外的 IP 地址,但不幸的是,它们不在我的第一个网络的后续范围内,比如说192.168.4.0/24
。我用新的 IP 范围配置了新服务器,现在它们通过子网之间的默认网关进行通信,尽管它们位于同一个物理网络上。我在每台服务器上添加了到第二个网络的路由,这样它们就可以直接相互发送数据包。但是如果我查看 ifconfig,当然我仍然只看到一个配置的子网。
192.168.2.0/24
这种配置有什么缺点吗?与我有连续网络并且192.168.3.0/24
可以在 ifconfig 中配置所有接口192.168.2.0/23
并避免额外路由的情况有什么区别?
我可以想象广播行为可能会有所不同。如果我广播一个网络,它只会到达一个子网中的一半服务器。
补充:
当我阅读第一个答案时,我认为我的问题可能不够清楚。所有服务器都应该位于公共网络上,我不想将它们隐藏在路由器后面。它们还都具有大多数流量经过的内部网络连接。我只是想知道如何在同一个网络接口上配置多个子网,以及连续子网的设置与非连续子网的设置之间有什么区别。对我来说,服务器都在同一个公共网络中。只是我的提供商的 IP 分配和我在 Linux 中看到的配置选项实际上不允许我这样配置服务器。我必须在两个子网之间进行分离。我可以添加其他路由,但这会不会与我为所有服务器设置一个连续的 IP 范围一样?
答案1
在公共 IP 上,将它们放在同一个网络或不在同一网络或连续网络中不会有太大变化,除非您拥有可以使用 CIDR 限制的整个“子部分”。如果您允许路由整个子网,则外部机器将通过您的网络进行路由。无论如何,公开路由您的私人数据永远不是好事。
为了使您的服务器保持私密连接,根据您需要访问的端口/服务的数量,您可以:
- 看看服务器之间是否不可能有私有网关/路由器
- 为每个需要构建 ssh 隧道,以便您可以使用第一台服务器上的本地端口连接在第二台服务器上运行的 mysql,并且整个连接由隧道加密
- 建立一个VPN,你的服务器将在VPN内的LAN环境中工作
可能还有其他方法,但这些是我现在最先想到的方法,它们安全、简单且易于应用。
答案2
缺点是子网之间的所有流量都必须通过路由器,而不是直接交换。在典型的 SoHo 设置中,您有一个线速交换机(内置于路由器中,将其以太网端口连接在一起),连接到必须使用其 CPU 在进程级别路由数据包的路由部分。典型的 SoHo 千兆无线路由器每秒可以交换 600,000 个数据包,但每秒只能路由 35,000 个数据包。
此外,这意味着所有流量必须两次穿过交换机部分和路由器部分之间的内部链路,每个方向一次。交换部分通常完全无阻塞,但您很容易使两个部分之间的链路过载(通常是内部千兆以太网链路)。
典型的中高端 WiFi 路由器内部结构如下:
千兆端口<->无阻塞交换机<->内部千兆链路<->路由CPU<->WiFi
如果它有内置调制解调器,它通常也连接到 CPU。如果它有 Internet/WAN 以太网端口,它有时连接到 CPU,但更常见的是也连接到无阻塞交换机。内部千兆链路通常具有 VLAN 支持,因此它可以承载 WAN 和 LAN 流量。
答案3
假设您的目标是避免将流量发送到网关,并且它们都在同一个物理网络上:
您可以在每台服务器上添加第二个私有 IP 吗?这样,所有服务器之间的通信都可以通过私有 IP 直接发送到另一台服务器,而无需通过网关。