web-dev-qa-db-fra.com

Vagrant / VirtualBox DNS 10.0.2.3 ne fonctionne pas

J'exécute une nouvelle installation de Linux Mint Nadia (14). Je suis les instructions sur Vagrant Mise en route mais je suis resté coincé sur le Provisioning . Il semble que la boîte Vagrant ne puisse pas se connecter à l'extérieur et je ne peux donc rien installer en utilisant Chef ou Puppet.

Dans le Vagrant de base resolve.conf contient nameserver 10.0.2.3. Mais avec cet ensemble, je ne peux pas cingler us.archive.ubuntu.com.

Si je le change en 8.8.8.8 alors je peux cingler us.archive.ubuntu.com mais il ne reste pas défini, et après un redémarrage, il redevient 10.0.2.3 - donc l'approvisionnement échoue à nouveau.

Idéalement, je voudrais pour 10.0.2.3 pour travailler sur ma configuration. A défaut, je voudrais un moyen de changer définitivement resolv.conf pour que je puisse faire le provisioning.

79
Rudolf Vavruch

Vous pouvez contourner ce problème de deux manières, les deux étant dans le manuel VirtualBox :

Activation du proxy DNS en NAT

Le moteur NAT par défaut propose à l'invité les mêmes serveurs DNS configurés sur l'hôte. Dans certains scénarios, il peut être souhaitable de masquer les adresses IP du serveur DNS à l'invité, par exemple lorsque ces informations peuvent changer sur l'hôte en raison de l'expiration des baux DHCP. Dans ce cas, vous pouvez indiquer au moteur NAT d'agir comme proxy DNS à l'aide de la commande suivante:

VBoxManage modifyvm "VM name" --natdnsproxy1 on

Utilisation du résolveur de l'hôte comme proxy DNS en mode NAT

Pour résoudre les noms de réseau, le serveur DHCP du moteur NAT propose une liste des serveurs DNS enregistrés de l'hôte. Si, pour une raison quelconque, vous devez masquer cette liste de serveurs DNS et utiliser les paramètres du résolveur de l'hôte , forçant ainsi le moteur VirtualBox NAT à intercepter les requêtes DNS et à les transmettre au résolveur de l'hôte, utilisez la commande suivante:

VBoxManage modifyvm "VM name" --natdnshostresolver1 on

Notez que ce paramètre est similaire au mode proxy DNS, cependant, alors que le mode proxy transmet simplement les requêtes DNS aux serveurs appropriés, le mode résolveur interprète les requêtes DNS et utilise l'API DNS de l'hôte pour interroger les informations et les renvoyer à l'invité. .

83
Michael Hampton

Suivi https://serverfault.com/a/453260/14832 , si vous utilisez un format de configuration Vagrantfile version 2, celui qui démarre:

Vagrant.configure("2") do |config|

Ensuite, vous voudrez peut-être ajouter ceci à ce fichier de configuration:

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

Si vous utilisez l'ancien format de configuration, mais que vous utilisez Vagrant 1.1+, vous pouvez l'ajouter à la fin du fichier:

Vagrant.configure("2") do |config|
  config.vm.provider :virtualbox do |vb|
    vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
  end
end
73
JonTheNiceGuy