
如果這是一個愚蠢的問題,我很抱歉,但我最近一直在與 VMware 的 NAT 搏鬥,所以請原諒我。
我有一台 Windows 8.1 主機和一台 CentOS 7 用戶機,我使用的是 VMware Workstation 12.1。我使用 VMware 虛擬網路介面卡 VMnet8 為我的來賓配置了 NAT,該適配器可以在 Windows「網路和共用中心」中找到。
我的配置工作正常。我可以從我的 Linux 虛擬機器存取互聯網,問題是我不明白為什麼它會起作用。我添加了一些圖片,有人可以向我解釋嗎?
我的 VMware 來賓網路設定似乎表明我的 Windows VMnet8 虛擬適配器應該是IP 位址為 192.168.59.2 的預設網關。
然而,情況並非如此,如下所示。 Windows VMnet8虛擬網路介面卡有ip位址192.168.59.1
我的問題又是,為什麼這有效?192.168.59.2 地址是什麼?我不明白網路流量是如何從虛擬機器到這個神秘的 192.168.59.2 位址,再到 192.168.59.1 的主機系統。理解這一點很重要,這樣我才能在將來複製它。我在下面提供了來自 CentOS 來賓的更多資訊。這些都沒有暗示任何有關 VMnet8 虛擬適配器的資訊。
[user1@localhost ~]$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:88:c7:5b brd ff:ff:ff:ff:ff:ff
inet 192.168.59.128/24 brd 192.168.59.255 scope global dynamic eno16777736
valid_lft 1009sec preferred_lft 1009sec
inet6 fe80::20c:29ff:fe88:c75b/64 scope link
valid_lft forever preferred_lft forever
[user1@localhost ~]$ ip route
default via 192.168.59.2 dev eno16777736 proto static metric 100
192.168.59.0/24 dev eno16777736 proto kernel scope link src 192.168.59.128
192.168.59.0/24 dev eno16777736 proto kernel scope link src 192.168.59.128 metric 100
[user1@localhost ~]$ cat /etc/resolv.conf
# Generated by NetworkManager
search localdomain
nameserver 192.168.59.2
另外,如果您懷疑我實際上使用的是 NAT,請查看我的虛擬機器網路設定。
答案1
VMNet8 適配器連接到虛擬網絡,就像主機上安裝的虛擬網路適配器一樣。
我認為您可能會混淆主機適配器的意義。從訪客到 LAN 或 Internet 的流量不經過 192.168.59.1 適配器。主機使用此適配器與來賓進行通訊;它不是將 VMNet 網路橋接到 LAN 的路由器連接埠。
192.168.59.2 接口是虛擬網路上的軟體接口,用於處理虛擬網路和主機 LAN 連接之間的上行鏈路。您可以使用虛擬網路編輯器控制虛擬網路預設閘道的實體介面、IP 設定和其他特性:http://www.wikihow.com/Create-a-Virtual-Networks-by-Using-VMware-Workstation
因此,總而言之,虛擬網路配置為使用 .2 作為其網關,並自動將此流量傳送出主機 LAN 介面。主機上的虛擬介面用於參與來賓所在的網路。