我有个问题。
我在 Windows 服务器中遇到了以下情况...
192.168.0.0 掩码 255.255.0.0 GTW x ...
192.168.3.0 掩码 255.255.255.0 GTW y
在这种情况下,是否存在网络重叠的可能性?
192.168.3.0/16 和 192.168.3.0/24 可以共存吗?
答案1
这不是我想要的情况,答案取决于你对“共存”的定义。
不能有具有相同地址的主机,即,如果主机 A 的地址为 192.168.3.5/16,而主机 B 的地址为 192.168.3.5/24,并且它们尝试位于同一以太网段上,则会导致 IP 地址冲突。
当您通过 IP 网络发送数据包时,您无需指定子网,只需指定 IP 地址。子网是一种路由工具,因此如果 A 和 B 位于不同的以太网段,则只有 B 会收到数据包,因为路由器会选择掩码最长的那个。
实际上,我唯一希望同时出现 192.168.0.0/16 和 192.168.x.0/24 定义的情况是路由表。我可以想象,/24 子网上的主机位于不同位置,需要特殊的路由定义。在这种情况下,这是正常且可以接受的事情。其他情况就很奇怪了,或者至少我现在想不出这种配置的合理理由。
答案2
您所看到的内容没有任何“错误”。这台 Windows Server 计算机如何连接到这两个网络并没有说明每个网络上的主机如何与其他网络进行通信。
考虑:
192.168.0.1/16 192.168.3.1/24
v _________ v
v | | v
.--| Win Srv |--.
__________ | |_________| | _________
| | | | | |
| host |---| |---| host |
|_________| | | |_________|
| |
__________ | | _________
| | | | | |
| host |---| |---| host |
|_________| | _________ | |_________|
| | | |
|--| router |--|
^ |_________| ^
^ | ^
192.168.0.254/16 | 192.168.3.254/24
///
连接到每个网络的主机将在此路由器上指定各自的接口作为其默认网关。Windows Server 计算机将指定一个或另一个路由器接口的 IP 地址作为其默认网关。
您不会想将 192.168.3.0/24 网络中的 IP 地址分配给 192.168.0.0/16 网络中的主机。192.168.0.0/16 网络上的主机将需要在其路由表中为 192.168.3.0/24 网络指定静态路由,以便它们能够与 192.168.3.0/24 网络上的主机进行通信。这很不方便,但绝不是“交易破坏者”。
编辑:
在上面的示例中,Windows Server 计算机将无需静态路由即可将数据传送到正确的目的地。由于每个子网都有本地接口,因此服务器的路由表中有条目。示例场景中的任何框它将会度过最轻松的时光。
您的例子(如下)与我的例子不同,也与您的问题不同:
您正在谈论的服务器似乎具有通过 192.168.9.2 到 192.168.0.0/16 网络的静态路由,以及可通过 192.169.1.254 网关访问的到 192.168.6.0/24、192.168.4.0/24 和 192.169.8.0/24 网络的三条静态路由。
如果不进一步了解拓扑结构(分配给服务器上接口的 IP 地址、正在使用的各种路由器后面的各种网络的布局),很难说清楚任何事情。当然,我在你的图片中看到的一切本质上都没有什么“错误”,除了一个显而易见的事实:192.169.0.0/16 中的网络不是 RFC-1918 地址空间,不应在私有网络内使用。
答案3
这不仅仅是网络重叠的“可能性”,而是事实。不过,这没有问题,因为 IP 路由足够智能,可以将数据包路由到最具体的可用路由,这对您来说是正确的。