Networking

Hyper-V 來賓無法通過外部虛擬交換機看到 Internet

  • October 29, 2020

我有一個帶有 1 個 NIC 的 Windows Server 2012 R2 Essentials 主機,並且我安裝了一個相同類型的 Hyper-V 來賓(Windows Server 2012 R2 Essentials)。我添加了一個外部虛擬交換機(允許管理作業系統共享此適配器),VM 已連接到該交換機。客人沒有指示網際網路連接,當我嘗試修復它時,分析以"Ethernet" doesn't have a valid IP configuration.

根據我讀過的內容,這應該足以讓虛擬機看到網際網路。主機有連接,我可以瀏覽網頁。

主持人:

Ethernet adapter vEthernet (Internal Virtual Switch):

Connection-specific DNS Suffix  . :
Link-local IPv6 Address . . . . . : fe80::f06b:9607:17f9:f2e8%37
Autoconfiguration IPv4 Address. . : 169.254.242.232
Subnet Mask . . . . . . . . . . . : 255.255.0.0
Default Gateway . . . . . . . . . :

Ethernet adapter vEthernet (External Virtual Switch):

Connection-specific DNS Suffix  . :
IPv6 Address. . . . . . . . . . . : 2602:304:791c:4270:3cfc:fd08:c467:3f3c
Link-local IPv6 Address . . . . . : fe80::3cfc:fd08:c467:3f3c%21
IPv4 Address. . . . . . . . . . . : 192.168.1.253
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : fe80::6655:b1ff:fe6d:a1f0%21
                                  192.168.1.254

客人:

Ethernet adapter Ethernet:

Connection-specific DNS Suffix  . :
Link-local IPv6 Address . . . . . : fe80::2d32:ed0b:c32e:d13b%12
Autoconfiguration IPv4 Address. . : 169.254.209.59
Subnet Mask . . . . . . . . . . . : 255.255.0.0
Default Gateway . . . . . . . . . :

我還有一些其他設備(來賓上的一個隧道)和主機上的一大堆設備,因為我絕望地嘗試使用內部虛擬交換機,所以我安裝了 RRAS 並配置了 VPN 和 DirectAccess 以啟用 NAT。那也無濟於事,但無論如何我都需要外部交換機,因為我想從家里通過 RDP 連接到 VM。

我究竟做錯了什麼?


更新:根據我將客人的 NIC 的 IPv4 配置為:

IP 192.168.1.221
netmask 255.255.255.0
gw 192.168.1.254

它仍然沒有看到網路。主機上的 ARP 表:

Interface: 127.0.0.1 --- 0x1
 Internet Address      Physical Address      Type
 224.0.0.22                                  static
 224.0.0.251                                 static
 224.0.0.252                                 static
 224.0.0.253                                 static
 232.242.254.169                             static
 239.255.255.250                             static

Interface: 192.168.1.253 --- 0x15
 Internet Address      Physical Address      Type
 169.254.242.232       00-00-00-00-00-00     invalid
 169.254.255.255       00-00-00-00-00-00     invalid
 192.168.1.221         00-00-00-00-00-00     invalid
 192.168.1.252         10-bf-48-7e-18-58     dynamic
 192.168.1.253         00-00-00-00-00-00     invalid
 192.168.1.254         64-55-b1-6d-a1-f0     dynamic
 192.168.1.255         ff-ff-ff-ff-ff-ff     static
 224.0.0.22            01-00-5e-00-00-16     static
 224.0.0.251           01-00-5e-00-00-fb     static
 224.0.0.252           01-00-5e-00-00-fc     static
 224.0.0.253           01-00-5e-00-00-fd     static
 232.242.254.169       01-00-5e-72-fe-a9     static
 239.255.255.250       01-00-5e-7f-ff-fa     static
 255.255.255.255       ff-ff-ff-ff-ff-ff     static

這是VLAN ID. 如果我沒記錯的話,當您創建外部虛擬交換機時,該VLAN ID複選框被禁用。當我將虛擬機添加到該外部交換機時,虛擬機已啟用並設置為 2。我需要VLAN ID在虛擬機網路設置中取消選中它,這解決了問題,ARP表格開始在兩端填充,主機和來賓現在可以互相ping通了。他們當然在同一個子網上。

Hyper-V 來賓的 IP 地址為 169.254.209.59。這是一個 APIPA 地址。它僅適用於與也具有 APIPA 地址的其他本地設備通信。您需要為訪客分配一個有效的 IP 地址、子網遮罩、預設網關和 DNS 伺服器。


我不知道你在說什麼或在你的評論中問什麼。虛擬交換機有一個 IP 地址,因為您已將其配置為與管理作業系統共享。此 IP 地址僅用於訪問 Hyper-V 主機本身。它與您的訪客連接無關。您應該像分配物理機器一樣為您的訪客分配一個 IP 地址。如果您的網路是 192.168.1.0/24(或其他),那麼您需要使用該範圍內的 IP 地址配置來賓,就像您使用物理機一樣。Hyper-V 主機不是路由器,它不執行 NAT,並且除了作為該流量的物理“管道”之外,它不參與將流量從來賓移動到實際物理網路。

引用自:https://serverfault.com/questions/767204