Domain-Name-System

Vagrant / VirtualBox DNS 10.0.2.3 不工作

  • June 12, 2020

我正在執行全新安裝的 Linux Mint Nadia (14)。我正在按照 Vagrant Getting Started上的說明進行操作,但一直停留在Provisioning上。Vagrant box 似乎無法連接到外部,因此我無法使用 Chef 或 Puppet 安裝任何東西。

在基本的 Vagrantresolve.conf中包含nameserver 10.0.2.3. 但是用那一套我不能ping通us.archive.ubuntu.com

如果我將其更改為8.8.8.8然後我可以 pingus.archive.ubuntu.com但它不會保持設置,並且在重新啟動後它會更改回10.0.2.3- 因此配置再次失敗。

理想情況下,我想10.0.2.3在我的設置上工作。失敗了,我想要一種永久更改的方法,resolv.conf以便我可以進行配置。

您可以通過以下兩種方式之一解決此問題,這兩種方式都在 VirtualBox 手冊中

在 NAT 模式下啟用 DNS 代理

預設情況下,NAT 引擎為主機上配置的來賓提供相同的 DNS 伺服器。在某些情況下,可能需要對來賓隱藏 DNS 伺服器 IP,例如,由於 DHCP 租約到期,主機上的此資訊可能會發生變化。在這種情況下,您可以使用以下命令告訴 NAT 引擎充當 DNS 代理:

VBoxManage modifyvm "VM name" --natdnsproxy1 on

在 NAT 模式下使用主機的解析器作為 DNS 代理

為了解析網路名稱,NAT 引擎的 DHCP 伺服器提供主機的已註冊 DNS 伺服器列表。如果由於某種原因您需要隱藏此 DNS 伺服器列表並使用主機的解析器設置,從而強制 VirtualBox NAT 引擎攔截 DNS 請求並將它們轉發到主機的解析器,請使用以下命令:

VBoxManage modifyvm "VM name" --natdnshostresolver1 on

請注意,此設置類似於 DNS 代理模式,但是代理模式只是將 DNS 請求轉發到相應的伺服器,而解析器模式將解釋 DNS 請求並使用主機的 DNS API 查詢資訊並將其返回給訪客.

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