为什么私有 VMware 网络被识别为未识别的(公共)网络?

为什么私有 VMware 网络被识别为未识别的(公共)网络?

我在 VMware 中有两个虚拟机:

  • 域控制器和 DNS 服务器 (10.250.0.21)
  • 应用程序容器(10.250.0.31)

我在主机上有一个虚拟网卡(VMnet1),在 VMware 虚拟网络编辑器(10.250.0.1)中配置为“仅主机”类型

在主机上,我在端口 1433 上的 Docker 内部有一个 mssql - 这是我尝试从应用程序容器 (10.250.0.31) 虚拟机访问的。

但是 Windows 说 VMnet1 是一个未识别的网络(因此被归类为公共网络配置文件)。因此,为了工作,我有一些选择,但它们都不是一个优雅的解决方案:

  • 使用以下 PowerShell 命令手动设置网络配置文件类型:Set-NetConnectionProfile -InterfaceAlias "VMware VMnet1" -NetworkCategory "Private" 问题是,Windows 重启后,此设置将丢失并重置为公共网络配置文件。(也许任务调度程序会派上用场,但没什么用。)
  • 在 Windows 防火墙中,允许 Docker Desktop 从公共网络的 1433 端口传入流量。但我不想这样做。
  • 按照本文所述将 VMware 虚拟 NIC 重新定义为端点设备:https://kb.vmware.com/s/article/1004813 这是永久性的,但是这会将这些适配器排除在 Windows 防火墙之外,并且 NIC 不受所有 Windows 防火墙访问规则的约束。
  • 通过 secpol.msc,我在网络列表管理器策略选项卡下将未识别网络设置为私有位置类型。但此后,每个未识别网络都将是私有的。

因此,我想问以下问题:

为什么 Windows NLA (网络位置感知) 将我的网络识别为未识别网络?为什么 Windows 对我包含 3 台机器的私有网络说它是未识别网络而不是私有网络?

我可以设置或对我的网络进行任何操作以便被识别为私人网络吗?

答案1

最有可能的是,您的虚拟机没有从“仅主机”网络的 DHCP 服务器接收默认网关。

通过在虚拟机上运行“ipconfig /all”来检查这一点。

我不知道您使用哪款 VMWare 产品,但如果它允许您在 DHCP 配置中指定默认网关,那么这应该可以解决您的问题。

否则,您可以在虚拟机上设置静态 IP 地址(带有默认网关),即使没有互联网连接,它也应该能够识别网络。

相关内容