讓 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/hosts到,C:\Windows\System32\drivers\etc\hosts但這不起作用,因為從虛擬機器的角度來看127.0.0.1是虛擬機器的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

相關內容