我的目标只是在我的虚拟机内获得互联网连接(而不在主机上禁用它)。
考虑到篇幅,我将这篇文章分成了不同的部分,因为我知道有些人更愿意跳过背景直接进入问题(向下滚动)并查看我尝试过的一些解决方案。所以我希望这篇文章能有所帮助,感谢您花时间阅读。
背景:
问题可能很简单,比如我执行步骤的顺序,或者我可能在某个地方遗漏了关键步骤,无论是哪种情况,经验丰富的人都可以提出建议。所以我真的很感激任何帮助。
在过去的几天里,我按照下面链接中的说明(发现它是最直接的)在我的 hyper-v vm 上设置互联网访问。
http://www.mustbegeek.com/configure-hyper-v-virtual-machine-with-internet-connection/
再次,还有许多其他链接,但它们基本上都在说同样的事情,只是偶尔会添加一些有用的额外信息。因此,最终我遵循了以下步骤。
我的笔记本电脑(带有 realtek pcie fe 网卡和 realtek RTL8188E 802.11bgn 无线网卡的 hp pavilion)安装了 windows 10 和 hyper-v。
在虚拟机上我有 Windows 8.1、SQL Server 2012、Visual Studio 2013 和其他开发工具。
接下来,我确保仅使用有线适配器(禁用无线)即可连接互联网。我对无线(禁用有线)重复了这些步骤,以确保其中一个或我的路由器(UPC Technicolor TC7200-U)没有问题。由于它们共享相同的默认网关,我无法同时启用它们(虽然我不是网络专业人士,我不知道为什么,但我看到错误消息告诉我这一点)。
当我添加虚拟交换机时,共享了我的物理有线适配器。我在虚拟适配器上收到无法识别的网络。以下是之前和之后的屏幕截图...
之前(显示所有工作,只是为了与之后进行比较而需要一些东西):
使用动态(自动配置):
使用静态(手动配置):
初始步骤:
后:
一旦我开始在链接中进行更改,以下屏幕截图就会显示发生的情况。我显然无法连接,因为默认设置似乎不正确。所以我稍后会更改它们 - 但在此之前,以下是使用默认设置的屏幕截图:
请注意,当我在属性中按“确定”时显示的警告消息。我按的是“是”。
使用这些默认设置 ping 网关毫无意义,因为我知道我会得到响应,因为 WiFi 适配器正在工作。因此 ping 将成功通过该适配器,但我的 VM 内仍无法访问互联网。考虑到这一点,我将禁用 wifi 连接。
另外,在执行此操作时,我将设置虚拟适配器中的设置,以便自动获取 IP 和 DNS 以进行下一步(动态配置)。
使用动态(自动配置):
如果我无法访问网关,那么我不认为 Google ping 能够起作用。
所以在发现上述设置错误后,我尽我所能使用之前有效的设置进行了更正 - 如下所示。
使用静态(手动配置):
请注意,在我按下“确定”,然后再次单击“属性”后,无论我尝试按照上述方式设置多少次,最终都会得到以下实际设置:
我现在能看到的唯一问题(以我非常有限的经验)是:
我无法在上述步骤中填写正确的详细信息,但似乎当我将其放在高级选项卡中时,我可以解决这个问题。见下文:
需要解决的问题
因此在此之后,我又切换回动态 IP,并注意到当我再次执行 ipconfig /all 时,我得到了 APIPA 地址。这表明,由于我无法访问 DHCP 服务器(即我的网关/路由器),因此它正在为我分配一个临时地址。这实际上证实了它无法访问我的网关/路由器,这是我们从 ping 中知道的。
那么为什么我无法访问我的路由器?
我决定考虑启用我的 wifi 适配器,认为这可能允许虚拟卡到达我的路由器并获取所需的 dhcp 地址。但似乎不行。考虑到(基于之前的错误消息)没有 2 个适配器可以同时访问同一个网关(这就是一开始禁用我的 wifi 的原因 - 而且当我有更快的以太网时我不想使用较慢的 wifi),这有点道理。
在禁用 wifi 的情况下,当我 ping 网关时仍然会收到目标主机无法访问的消息。
我不确定这是否有用,但我也尝试在 Hyper-v 上设置一个内部交换机(这样我至少可以从机器内部访问网络),但我遇到了同样的问题。它无法连接到网络。
迄今为止尚未奏效的其他修复尝试和研究:
我在其他地方读到过并且确保已全部完成的建议是:
- 确保虚拟盒和其他替代虚拟环境都已被删除(我没有安装任何其他虚拟环境)。
- 运行以下命令:
。
netsh winsock reset #this tells me to restart
netsh int ip reset c:\tcp.txt #this gives some errors and tells me to restart
ipconfig /release #works sometimes, sometimes gives errors
ipconfig /renew #this works only when /release works
arp /d (several times) #I never get to clear this completely
#no matter how many times I run it
完成上述操作后,我重新启动了计算机。
我不确定前两个命令的作用。如果有人认为上述命令的屏幕截图有帮助,请告诉我,我会添加。
如果您认为任何额外的截图或信息有帮助,请告诉我。
谢谢你的帮助。