Comment régler la vitesse extrêmement lente de téléchargement du réseau Virtualbox?


37

J'utilise une machine virtuelle Ubuntu 12.04 (hashicorp / precise32) via Vagrant / Virtualbox. Il semble que sa vitesse de téléchargement soit extrêmement lente comparée à celle de mon système hôte. Voici ce que je reçois avec le système hôte (OSX) avec speedtest-cli:

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

Et voici ce que je reçois dans l'OS invité (Ubuntu 12.04):

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

La vitesse de téléchargement de l'hôte est donc 70 fois plus rapide! La réponse habituelle à ces problèmes est la suivante:

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

Mais je l'ai déjà configuré sur mon Vagrantfile.

J'ai aussi testé cela avec plain Virtualbox et 12.04 (sans vagabond). Le même problème se produit lorsque j'utilise l'interface NAT. Cependant, le passage en mode ponté accélère la vitesse de téléchargement de 20 fois. C'est méchant, car Vagrant s'appuie sur l'interface NAT pour être toujours eth0.

J'utilise OSX Mavericks en tant que système hôte. La version de Virtualbox est 4.3.18.

Des idées?

Réponses:


30

Pour les utilisateurs vagabonds, ajoutez ce qui suit à votre fichier Vagrant:

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

J'ai un gain de vitesse de ~ 15x. Sur l'interface graphique de VirtualBox, je vois maintenant un type d'adaptateur différent pour mon interface NAT: réseau paravirtualisé (virtio-net).


1
J'avais le même problème: la vitesse de téléchargement sur une image Boot2Docker s'exécutant sur Vagrant, telle que mesurée à l'aide de speedtest-cli, était de 0 (si lent que vous ne pouvez pas le mesurer?). Dès que j'ai ajouté ce paramètre, la vitesse de téléchargement correspondait à la vitesse de mon système d'exploitation hôte. Merci!
Yevgeniy Brikman

Est-ce que quelqu'un sait quelles sont toutes les autres valeurs possibles? Un lien vers la documentation?
nha

aucune amélioration pour moi j'ai peur. Vagrant 1.7.4, Virtualbox 5.0.4
mercredi

Toutes les options possibles sont ici: virtualbox.org/manual/ch08.html#idp46730496367936 Essayez Am79C973aussi si vous avez un problème virtio.
Juliusz Gonera

2
VBoxManage modifyvm YourMachineName --nictype1 virtio
Brian Low

17

J'ai trouvé une solution plus simple pour moi

  • Hôte Ubuntu 14.04
  • invité Ubuntu 14.04
  • Nat avec redirection de port
  • vitesse de téléchargement extrêmement lente de l'invité. C'était si lent que le test de vitesse ne pouvait même pas mesurer cela.

Je viens de passer à l'adaptateur PCNet-Fast III. Et la vitesse devient assez bonne pour moi (40 Mb / s)


1
Travaillé pour moi avec l'hôte Ubuntu 14.04 et Guest Ubuntu 12.04.
Ross

1
Pour passer à PCNet Fast III dans Vagrantfile, utilisez v.customize ["modifyvm", :id, "--nictype1", "Am79C973"].
Juliusz Gonera

Cela fonctionne très bien! J'avais des problèmes avec la apt-getsuspension en essayant de télécharger. Finalement, cela fonctionnerait, mais changer la carte réseau comme ci-dessus résout le problème.
Brendon Muir

Travaillé avec l'hôte Win10 exécutant Ubuntu 16.10.
Robsn

0

La réponse de @ auramo est utile, mais veuillez noter qu'elle spécifie un NIC spécifique: # 1. Dans mon système, par exemple, j'ai de nombreuses interfaces réseau. Je devais préciser --nictype4.

En outre, d'autres utilisateurs ont signalé des avantages ailleurs en spécifiant natdnshostresolver#et natdnsproxy#où se #trouve un numéro identifiant votre NIC. Dans le mien, cela ressemble à ceci:

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
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.