Бродяга: медленное подключение к интернету в гостях
Я пытаюсь создать бродягу. Хост - Ubuntu 12.10. Вот мой бродячий файл:
Vagrant::Config.run do |config|
config.vm.share_folder("v-root", "/vagrant", ".", :nfs => true)
config.vm.network :bridged, :bridge => "eth0"
config.vm.define "restserver" do |chefs_config|
chefs_config.vm.box = "precise64"
chefs_config.vm.box_url = "http://files.vagrantup.com/precise64.box"
chefs_config.vm.host_name = "restserver"
chefs_config.vm.network :hostonly, "192.168.20.50"
chefs_config.vm.forward_port 80, 8080
config.vm.provision :chef_solo do |chef|
chef.log_level = :debug
chef.cookbooks_path = "cookbooks"
chef.run_list.clear
chef.add_recipe "apt"
chef.add_recipe "base"
chef.add_recipe "mongodb::default"
chef.add_recipe "nginx"
end
end
end
Проблема в том, что мой доступ в Интернет изнутри бродяги ужасен. Это очень медленно. Я думаю, что таблицы маршрутизации могут быть испорчены. Вот результат из route -n
:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.0.2.2 0.0.0.0 UG 0 0 0 eth0
0.0.0.0 10.0.2.2 0.0.0.0 UG 100 0 0 eth0
10.0.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
192.168.20.0 0.0.0.0 255.255.255.0 U 0 0 0 eth2
Есть два маршрута к назначению по умолчанию, хотя на одном сетевом адаптере и на том же шлюзе. Но, возможно, это вызывает проблему. По крайней мере, это то, что я думал, но удаление первого маршрута по умолчанию не помогает.
Мне нужна сеть только для хостинга, поэтому доля nfs будет работать. NAT используется для перенаправления портов, и я добавил мостовую сеть, чтобы попытаться предоставить этому гостю доступ в Интернет.
Кто-нибудь знает, что случилось? DNS очень медленно разрешает, и он медленно загружает что-либо из Интернета.
3 ответа
Ответ:
Добавьте в конфигурацию бродяг следующее:
config.vm.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
Подробнее см. здесь: Бродяга /VirtualBox DNS 10.0.2.3 не работает
Запуск версии 2 конфигурации Vagrant?
Сара предоставила ответ, который должен использовать DNS-DNS DNS-реверсор, поскольку он быстрее и поможет ускорить процесс.
Однако в версии 2 конфигурации бродяг, которая используется большинством людей, вам нужно будет добавить в свой «Vagrantfile» следующий код, который заставит виртуальную машину использовать NAT-DNS:
config.vm.provider "virtualbox" do |v|
v.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
v.customize ["modifyvm", :id, "--natdnsproxy1", "on"]
end
Вы можете узнать, используете ли вы конфигурацию v2, если у вас есть следующие строки или что-то в верхней части вашего Vagrantfile
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
Настройки NAT не улучшили мою скорость загрузки.
Мне нужно было использовать следующую настройку, чтобы получить правильные скорости загрузки.
config.vm.provider "virtualbox" do |vb|
vb.customize ["modifyvm", :id, "--nictype1", "virtio"]
end