Como corrigir a velocidade de download da rede Virtualbox extremamente lenta?

37

Estou usando uma Ubuntu 12.04 VM (hashicorp / precision32) via Vagrant / Virtualbox. Parece ter uma velocidade de download extremamente lenta em comparação com o meu sistema host. Isto é o que recebo com o sistema host (OSX) com o speedtest-cli:

Testing download speed........................................
Download: 845.62 Mbits/s
Testing upload speed..................................................
Upload: 296.03 Mbits/s

E é isso que recebo no sistema operacional convidado (Ubuntu 12.04):

Testing download speed........................................
Download: 12.41 Mbits/s
Testing upload speed..................................................
Upload: 247.64 Mbits/s

Portanto, a velocidade de download do host é 70 vezes mais rápida! A resposta usual para esses problemas é a seguinte:

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

Mas eu já o configurei no meu Vagrantfile.

Eu também testei isso com o Virtualbox simples e o 12.04 (sem Vagrant). O mesmo problema ocorre quando eu uso a interface NAT. No entanto, alternar para o modo de ponte torna a velocidade do download 20x mais rápida. Isso é desagradável, pois o Vagrant depende da interface NAT para ser sempre eth0.

Eu uso o OSX Mavericks como o sistema host. A versão do Virtualbox é 4.3.18.

Alguma ideia?

auramo
fonte

Respostas:

30

Para usuários vagrantes, adicione o seguinte ao seu arquivo Vagrant:

config.vm.provider "virtualbox" do |v|
  v.customize ["modifyvm", :id, "--nictype1", "virtio"]
end

Eu tenho um aumento de velocidade de ~ 15x. Na GUI do VirtualBox, vejo agora um Tipo de Adaptador diferente para minha interface NAT: Rede Paravirtualizada (virtio-net).

auramo
fonte
11
Eu tive o mesmo problema: a velocidade de upload de uma imagem do Boot2Docker em execução no Vagrant, medida usando o speedtest-cli, era 0 (tão lenta que você não pode medir?). Assim que adicionei essa configuração, a velocidade de upload correspondeu à velocidade do meu sistema operacional host. Obrigado!
Yevgeniy Brikman
Alguém sabe quais são todos os outros valores possíveis? Algum link para os documentos?
nha
nenhuma melhoria para mim, eu tenho medo. Vagrant 1.7.4, Virtualbox 5.0.4
lsh
Todas as opções possíveis estão aqui: virtualbox.org/manual/ch08.html#idp46730496367936 Experimente Am79C973também se tiver problemas com virtio.
Juliusz Gonera 07/02
2
VBoxManage modifyvm YourMachineName --nictype1 virtio
Brian Low
17

Eu encontrei mach solução mais simples para mim

  • Host ubuntu 14.04
  • guest ubuntu 14.04
  • Nat com encaminhamento de porta
  • velocidade de upload extremamente lenta do convidado. Foi tão lento que o teste de velocidade não pode medir isso.

Acabei de mudar para o adaptador PCNet-Fast III. E a velocidade se torna boa o suficiente para mim (40 Mb / s)

paul_di
fonte
11
Trabalhou para mim com o Host Ubuntu 14.04 e Guest Ubuntu 12.04.
Ross
11
Para alternar para o PCNet Fast III no Vagrantfile, use v.customize ["modifyvm", :id, "--nictype1", "Am79C973"].
Juliusz Gonera
Isso funciona muito bem! Eu estava tendo problemas para apt-getdesligar enquanto tentava fazer o download. Eventualmente, ele funcionaria, mas alterar o adaptador de rede conforme descrito acima resolve o problema.
Brendon Muir
Trabalhou com o host Win10 executando o Ubuntu 16.10.
robsn
0

A resposta do @ auramo é útil, mas observe que ele especifica uma NIC específica: # 1. No meu sistema, por exemplo, tenho inúmeras interfaces de rede. Eu tive que especificar --nictype4.

Além disso, outros relataram benefícios em outras partes da especificação natdnshostresolver#e natdnsproxy#onde #está um número que identifica sua placa de rede. Na minha, fica assim:

config.vm.provider "virtualbox" do |v|
  v.customize ["modifyvm", :id, "--nictype4", "virtio"]
  v.customize ["modifyvm", :id, "--natdnshostresolver4", "on"]
  v.customize ["modifyvm", :id, "--natdnsproxy4", "on"]
end
Offlein
fonte