使 Windows VirtualBox 客户机遵循 Mac 主机 DNS 解析

使 Windows VirtualBox 客户机遵循 Mac 主机 DNS 解析

我的 Mac/etc/hosts文件中已有一个自定义域名条目,用于本地测试。我可以使用 来从浏览器进行连接http://dev.mysite.co:5000

127.0.0.1 dev.mysite.co
127.0.0.1 localhost

我正在使用 Microsoft 提供的 VirtualBox 映像之一在 Edge 中测试我的网站。由于我必须使用 连接到我的本地主机,因此我遇到了 CORS 问题http://10.0.2.2:5000,因此我想重用我的 中的域设置/etc/hosts

我的本地主机上的节点服务器正在监听0.0.0.0:5000

我运行了这个命令,它应该是让客户操作系统使用主机的 DNS,但我无法http://dev.mysite.co:5000在我的虚拟机内加载。

VBoxManage modifyvm "MSEdge - Win10_preview" --natdnshostresolver1 on

此命令仍然有效吗?我还需要做其他什么才能使其正常工作吗?

答案1

/etc/hosts文件不是 DNS 解析器的一部分。您可以直接将您的复制/etc/hostsC:\Windows\System32\drivers\etc\hosts,但这样做不行,因为从 VM 的角度来看127.0.0.1是 VM 的 IP(环回)。

为了使其工作,你应该添加C:\Windows\System32\drivers\etc\hosts以下行:

 10.0.2.2       dev.mysite.co

它将把dev.mysite.co虚拟机内的任何请求解析到你的主机的 IP(这是我的假设10.0.2.2- 请检查主机操作系统上虚拟机适配器的 IP,例如通过ifconfig vboxnet0

相关内容