如何识别和区分网络以便设置位置?

如何识别和区分网络以便设置位置?

我是一名开发人员,我了解我一生从事计算和开发过程中所学到的系统管理/网络/等方面的知识(虽然知识量不小,但我离这些方面的专家还差得很远)。

我正在设置 3 个新的(托管、专用)Windows Server 2012 机箱(不在域中),但我不知道如何将内部网络的位置设置为私有(就各种服务器间通信的防火墙配置而言,这似乎是最简单且足够安全的)。

对于连接,我有在外部 IP 上设置的主 NIC、在私有子网 IP 上设置的辅助 NIC,以及在负载均衡器的外部 IP 上设置的 VIP 连接(适配器是 Microsoft KM-TEST 环回适配器)。

只有主 NIC 连接具有指定的网关,从我所读的内容来看,这似乎是为什么其他 2 个连接被列为未识别的原因。

我尝试进入网络列表管理器策略下的本地安全策略,并允许用户更改所有网络的位置,但似乎没有效果。同样,从我读到的内容来看,即使它确实有效,如果 Windows 无法识别网络,它也无法在重新启动或断开连接等更改后重新应用位置。

我无法强制所有未识别的网络均为私有网络,因为这将包括用于通过负载均衡器进入的公共流量的 VIP 连接。

编辑:我也尝试了两个建议技术网,为连接添加一个 DNS 后缀,但我看不出有什么效果,并且编辑注册表以禁用适配器上的 NLA,这产生了一些奇怪的后果 - 连接不再位于网络和共享中心,我无法分辨它是如何对连接进行分类的。

也许,如果我向 VIP 或辅助连接添加一个网关,我就可以区分它们并将私有位置应用于辅助连接,但我不确定除了不推荐之外,这可能会引发什么问题。

我不想逐一配置内部网络上 3 台服务器所需的每个防火墙漏洞,但也许这才是我应该做的?我还能怎样将辅助 NIC 连接设为私有?

答案1

我目前无法添加评论,因此这里以答案的形式发表评论...

您提到向其他 NIC 之一添加网关。不要这样做。只有一个 NIC 应该有默认网关;所有其他流量都应使用静态路由语句进行引导(路由)。

在将要连接最远目标网络的 NIC 上设置默认网关。这样,您可以最大限度地减少需要定义的静态路由数量。在类似您的情况下,您通常会在公共 NIC 上设置默认网关,因为这可能会与众多“未知”网络通信。然后,您可以为众所周知/易于理解的内部地址范围设置静态路由。

希望这是有意义的。

或者,不要指定任何默认网关,而是通过静态路由执行所有操作(不明智!)。

但回到你最初的问题,你需要帮助的是 Windows 的网络位置感知 (NLA) 方面。可以使用 NETSH 配置这方面的某些方面,但我必须自己谷歌搜索,所以恐怕帮不上什么忙。

答案2

我确实找到了一种识别二级网络的方法https://superuser.com/a/218509/36752

基本上,您必须为连接提供一个默认网关,以便 Windows 识别它,并为路由提供更高的度量,以避免出现多个默认网关的问题。

要添加具有更高路由度量的默认网关,请使用命令行输入以下命令:

route -p add 0.0.0.0 mask 0.0.0.0 10.1.1.1 metric 50 if 15

将 IP 地址 10.1.1.1 替换为您要识别的连接/网络上的另一个设备的地址(Windows 使用网关的 mac 地址作为标识符)。使用高于其他默认路由的度量值并使用适当的 if #(if # 和当前路由度量都可以使用 查看route print -4)。

相关内容