Come risolvere la velocità di download della rete Virtualbox estremamente lenta?


37

Sto usando una VM Ubuntu 12.04 (hashicorp / precise32) tramite Vagrant / Virtualbox. Sembra avere una velocità di download estremamente lenta rispetto al mio sistema host. Questo è ciò che ottengo con il sistema host (OSX) con speedtest-cli:

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

E questo è ciò che ottengo nel SO guest (Ubuntu 12.04):

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

Quindi la velocità di download dell'host è 70 volte più veloce! La solita risposta a questi problemi è questa:

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

Ma l'ho già configurato sul mio Vagrantfile.

Ho anche provato questo con Virtualbox e 12.04 (senza Vagrant). Lo stesso problema si verifica quando utilizzo l'interfaccia NAT. Tuttavia, il passaggio alla modalità a ponte rende la velocità di download 20 volte più veloce. Questo è brutto, dal momento che Vagrant si affida all'interfaccia NAT per essere sempre eth0.

Uso OSX Mavericks come sistema host. La versione di Virtualbox è 4.3.18.

Qualche idea?

Risposte:


30

Per gli utenti di Vagrant, aggiungi quanto segue al tuo file Vagrant:

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

Ho avuto un aumento di velocità di ~ 15x. Sulla GUI di VirtualBox vedo ora un diverso tipo di adattatore per la mia interfaccia NAT: Paravirtualized Network (virtio-net).


1
Ho avuto lo stesso problema: la velocità di upload su un'immagine Boot2Docker in esecuzione su Vagrant, misurata con speedtest-cli, era 0 (così lenta da non poterla misurare?). Non appena ho aggiunto questa impostazione, la velocità di caricamento ha raggiunto la velocità del mio sistema operativo host. Grazie!
— Yevgeniy Brikman,

Qualcuno sa quali sono tutti gli altri possibili valori? Qualche link ai documenti?
— nha

nessun miglioramento per me temo. Vagrant 1.7.4, Virtualbox 5.0.4
— lsh

Tutte le opzioni possibili sono qui: virtualbox.org/manual/ch08.html#idp46730496367936 Prova Am79C973anche se hai problemi con virtio.
— Juliusz Gonera,

2
VBoxManage editvm YourMachineName --nictype1 virtio
— Brian Low

17

Ho trovato una soluzione più semplice per me

  • Host ubuntu 14.04
  • guest ubuntu 14.04
  • Nat con port forwarding
  • velocità di upload estremamente bassa dal guest. Era così lento che il test di velocità non riusciva nemmeno a misurarlo.

Sono appena passato all'adattatore PCNet-Fast III. E la velocità diventa abbastanza buona per me (40 Mb / s)


1
Ha funzionato per me con Host Ubuntu 14.04 e Guest Ubuntu 12.04.
— ross,

1
Per passare a PCNet Fast III in Vagrantfile, utilizzare v.customize ["modifyvm", :id, "--nictype1", "Am79C973"].
— Juliusz Gonera,

Funziona benissimo! Ho avuto problemi con l' apt-getattaccatura durante il tentativo di download. Alla fine funzionerebbe, ma cambiando la scheda di rete come sopra risolve il problema.
— Brendon Muir,

Ha funzionato con l'host Win10 con Ubuntu 16.10.
— robsn,

0

La risposta di @auramo è utile, ma tieni presente che specifica una scheda di rete specifica: # 1. Nel mio sistema, ad esempio, ho numerose interfacce di rete. Ho dovuto specificare --nictype4.

Inoltre, altri hanno segnalato benefici altrove nella specifica natdnshostresolver#e natdnsproxy#dove si #trova un numero che identifica la scheda NIC. Nel mio, sembra così:

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
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.