stream浪/ VirtualBox DNS 10.0.2.3不起作用

我正在运行Linux Mint Nadia(14)的全新安装。 我正在按照“stream浪汉入门指南 ”进行操作,但却一直停留在Provisioning上 。 看起来Vagrant盒子不能连接到外面,所以我不能使用Chef或Puppet来安装任何东西。

在基本的Vagrant中, nameserver 10.0.2.3包含nameserver 10.0.2.3 。 但是,随着这一套,我不能ping us.archive.ubuntu.com

如果我将其更改为8.8.8.8则可以ping us.archive.ubuntu.com但不会保持设置状态,重新启动后,它将更改回10.0.2.3 – 因此设置将再次失败。

理想情况下,我想为10.0.2.3工作我的设置。 如果没有,我想永久更改resolv.conf的方式,以便我可以进行configuration。

您可以通过以下两种方法之一解决此问题,这两种方法都在VirtualBox手册中 :

在NAT模式下启用DNS代理

默认情况下,NAT引擎向主机上configuration的guest虚拟机提供相同的DNS服务器。 在某些情况下,可能需要隐藏来自客户端的DNS服务器IP,例如,由于过期的DHCP租约,主机上的信息可能会更改。 在这种情况下,可以使用以下命令告诉NAT引擎充当DNS代理:

 VBoxManage modifyvm "VM name" --natdnsproxy1 on 

在NAT模式下使用主机的parsing器作为DNS代理

为了parsingnetworking名称,NAT引擎的DHCP服务器提供主机的注册DNS服务器列表。 如果由于某种原因需要隐藏此DNS服务器列表并使用主机的parsing器设置,从而强制VirtualBox NAT引擎拦截DNS请求并将其转发给主机的parsing器,请使用以下命令:

 VBoxManage modifyvm "VM name" --natdnshostresolver1 on 

请注意,此设置与DNS代理模式类似,但代理模式只是将DNS请求转发到相应的服务器,parsing器模式将parsingDNS请求并使用主机的DNS API查询信息并将其返回给客户机。

继续https://serverfault.com/a/453260/14832 ,如果你使用的版本2 Vagrantfileconfiguration格式,启动:

 Vagrant.configure("2") do |config| 

那么你可能想把这个添加到该configuration文件中:

 config.vm.provider :virtualbox do |vb| vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"] end 

如果您使用的是旧的configuration格式,但使用Vagrant 1.1+,则可以在文件末尾添加以下内容:

 Vagrant.configure("2") do |config| config.vm.provider :virtualbox do |vb| vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"] end end