如何修复 Vagrant 客户端的名称服务?

Sha*_*man 18 12.10 virtualbox-networking vagrant

我是 Ubuntu 的新手(刚刚安装了 Ubuntu 12.10)并想开始使用它进行开发。所以我已经安装了 Vagrant,下载lucid64.box,初始化,启动并通过 ssh 访问它。

为了在我的客户端上测试 Internet 连接,我已经完成ping google.com 并收到了unknown host: google.com. (当然,主机得到了 ping。)

在网上搜索只让我找到了这个解决方案,它建议删除 Vagrant 和 Virtual box,然后重新安装它们,只需确保先安装 Vagrant。我已经尝试过这个解决方案,但仍然得到相同的结果。

我还能尝试什么让它工作?

luk*_*ner 30

我在 Ubuntu 12.10 上遇到了同样的问题并找到了解决方案。只需将这些行添加到您的 Vagrantfile 中:

config.vm.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
config.vm.customize ["modifyvm", :id, "--natdnsproxy1", "on"]
Run Code Online (Sandbox Code Playgroud)

对于 Vagrant 1.1+,您将需要(感谢 farooqsadiq)

config.vm.provider "virtualbox" do |v| 
  v.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
end
Run Code Online (Sandbox Code Playgroud)

这似乎是 Ubuntu 12.10 上 VirtualBox 中的一个已知错误:

https://bugs.launchpad.net/ubuntu/+source/virtualbox/+bug/1048783

https://www.virtualbox.org/ticket/10864


far*_*diq 6

对于 Vagrant 1.1+,您将需要

config.vm.provider "virtualbox" do |v| 
  v.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
end
Run Code Online (Sandbox Code Playgroud)

在 Vagrant 1.2.2 上测试

在 Lyte 的博客上找到http://lyte.id.au/tag/vagrant/


Dav*_*oen 5

您可以通过在 ~/.vagrant.d/Vagrantfile 中放置一个片段,使 modifyvm 技巧一次性适用于所有 Vagrant VM,例如:

Vagrant::Config.run do |config|
    config.vm.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
end
Run Code Online (Sandbox Code Playgroud)