先来点背景。我在局域网中的每台机器上都安装了一个 .net 客户端代理。他们也在同一个局域网上与我的中央服务器 [网站] 进行交互。
对于我的网站来说,弄清楚哪些机器可以相互通信很重要。例如,一个子网的机器如果不配置路由器等,就不能直接与另一个子网的机器通信。但是同一子网中的机器应该能够直接相互通信。
我面临的问题是局域网设置如图 1 所示。
因为 Comp1、Comp2 和 Comp3 在路由器后面,所以它们的 IP 地址为 192.168.1.2 到 192.168.1.4。我在这些机器上的客户端代理将相同的 IP 地址报告给服务器。但是,计算机 Comp4、Comp5 也具有相同的 ipaddresses。
因此,就我的服务器而言,有 2 台机器具有相同的 IP 地址。不仅如此,因为所有机器的子网掩码都是 255.255.255.0,所以我的服务器误以为 Comp1 可以直接与 Comp5 通信,这是不可能的。
那么,我该如何解决呢?我需要在客户端或服务器中进行哪些更改,以便支持这种情况。这两个是我唯一能控制的。