¿Cómo arreglar la velocidad de descarga de red de Virtualbox extremadamente lenta?

37

Estoy usando una VM Ubuntu 12.04 (hashicorp / precise32) a través de Vagrant / Virtualbox. Parece tener una velocidad de descarga extremadamente lenta en comparación con mi sistema host. Esto es lo que obtengo con el sistema host (OSX) con speedtest-cli:

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

Y esto es lo que obtengo en el sistema operativo invitado (Ubuntu 12.04):

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

¡Entonces la velocidad de descarga del host es 70 veces más rápida! La respuesta habitual a estos problemas es esta:

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

Pero ya lo configuré en mi Vagrantfile.

También probé esto con Virtualbox simple y 12.04 (sin Vagrant). El mismo problema ocurre cuando uso la interfaz NAT. Sin embargo, cambiar al modo puente hace que la velocidad de descarga sea 20 veces más rápida. Esto es desagradable, ya que Vagrant confía en la interfaz NAT para ser siempre eth0.

Yo uso OSX Mavericks como el sistema host. La versión de Virtualbox es 4.3.18.

¿Algunas ideas?

auramo
fuente

Respuestas:

30

Para usuarios vagabundos, agregue lo siguiente a su archivo vagabundo:

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

Obtuve un aumento de velocidad de ~ 15x. En VirtualBox GUI veo ahora un tipo de adaptador diferente para mi interfaz NAT: red paravirtualizada (virtio-net).

auramo
fuente
1
Tuve el mismo problema: la velocidad de carga en una imagen Boot2Docker que se ejecuta en Vagrant, medida con speedtest-cli, fue 0 (¿tan lenta que no puedes medirla?). Tan pronto como agregué esta configuración, la velocidad de carga coincidió con la velocidad de mi sistema operativo host. ¡Gracias!
Yevgeniy Brikman,
¿Alguien sabe cuáles son todos los otros valores posibles? ¿Algún enlace a los documentos?
nha
No hay mejoría para mí, me temo. Vagrant 1.7.4, Virtualbox 5.0.4
lsh
Todas las opciones posibles están aquí: virtualbox.org/manual/ch08.html#idp46730496367936 Pruébelo Am79C973también si tiene problemas virtio.
Juliusz Gonera
2
VBoxManage modifyvm YourMachineName --nictype1 virtio
Brian Low
17

He encontrado una solución más simple para mí

  • Host ubuntu 14.04
  • invitado ubuntu 14.04
  • Nat con reenvío de puertos
  • Velocidad de carga extremadamente lenta del invitado. Fue tan lento que la prueba de velocidad ni siquiera puede medir eso.

Acabo de cambiar al adaptador PCNet-Fast III. Y la velocidad se vuelve lo suficientemente buena para mí (40 Mb / s)

paul_di
fuente
1
Trabajó para mí con Host Ubuntu 14.04 y Guest Ubuntu 12.04.
Ross
1
Para cambiar a PCNet Fast III en Vagrantfile, use v.customize ["modifyvm", :id, "--nictype1", "Am79C973"].
Juliusz Gonera
¡Esto funciona muy bien! Estaba teniendo problemas para apt-getcolgar mientras intentaba descargar. Eventualmente funcionaría, pero cambiar el adaptador de red como se indica arriba soluciona el problema.
Brendon Muir
Trabajó con el host Win10 que ejecuta Ubuntu 16.10.
robsn
0

La respuesta de @ auramo es útil, pero tenga en cuenta que especifica una NIC específica: # 1. En mi sistema, por ejemplo, tengo numerosas interfaces de red. Tuve que especificar --nictype4.

Además, otros han reportado beneficios en otros lugares de especificar natdnshostresolver#y natdnsproxy#dónde #hay un número que identifica su NIC. En el mío, se ve así:

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
fuente