我不太热衷于网络,并且有以下疑问。
我有一个 Windows 系统,并且在这个系统上我安装了 VMWare,在其上我安装了一些虚拟机,并且虚拟机网络设置为 NAT 模式。
在我的主机 Windows 系统上运行 ipconfig 我获得的网关是:
Scheda LAN wireless Wi-Fi:
Suffisso DNS specifico per connessione:
Indirizzo IPv6 locale rispetto al collegamento . : fe80::e5aa:8279:789e:dd3f%20
Indirizzo IPv4. . . . . . . . . . . . : 192.168.1.5
Subnet mask . . . . . . . . . . . . . : 255.255.255.0
Gateway predefinito . . . . . . . . . : 192.168.1.1
因此网关有IP地址:192.168.1.1。
然后我想要从 Ubuntu VM 检索网关,因此我执行以下操作:
root@kali:~# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.223.2 0.0.0.0 UG 100 0 0 eth0
192.168.223.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0
网关是192.168.223.2这与前一个不同。
我的理解是,这取决于 VM 处于 NAT 模式,因此它们有自己的网关。这个推理正确吗?我的 VMware VM 的网关是谁?它是由 VmWare 本身实现的吗?
另一个疑问是:在我的 Windows 主机上,我的电脑有以下 IP 地址:192.168.1.5在我的 Ubuntu VM 上192.168.223.133
我的想法是 VmWare 正在创建一个子网192.168.223.XXX。 这是对的吗?
答案1
我的理解是,这取决于 VM 处于 NAT 模式,因此它们有自己的网关。这个推理正确吗?我的 VMware VM 的网关是谁?它是由 VmWare 本身实现的吗?
是的,VMware 在内部充当所有虚拟机的路由器。它完全由虚拟机软件实现,主机系统对此一无所知。(VirtualBox 执行相同的操作,而 Libvirt-KVM 使用主机操作系统路由功能,主机操作系统会看到来宾子网的虚拟接口。)
答案2
您可以转到 VMware 程序并运行 VMware 网络编辑器,查看已分配的 NAT IP 地址,并根据需要更改它们。所选地址位于您帖子的上方。这将始终与您的主机 IP 地址不同,这是正确且正常的。
然后,任何使用 NAT 的 VM 都将使用“有线”网络连接到 VMware NAT 并选择一个地址用于 VM。
使用网络编辑器有助于查看正在发生的事情。我使用 VMware V15(以及所有之前版本),此设置非常标准。