X LEGACY Activation de l'interface réseau host only d'une machine virtuelle - Offirmo-team/wiki GitHub Wiki
XXX inutile si interface créée avant démarrage de la VM. Voir aussi vagrant. (arrivée sur cette page depuis Installation d'un serveur unix)
Interface réseau privée
Introduction
nous allons vouloir échanger rapidement et confidentiellement avec la VM depuis la machine hôte, de façon fiable et même quand notre ordinateur n'est pas connecté à un réseau (une box). Il est donc très intéressant d'avoir une interface réseau dédiée sur le réseau virtuel de virtualbox. C'est pour cela que nous avons ajouté tout à l'heure une interface réseau de type "host only".
Il faut configurer cette interface supplémentaire. Elle sera en DHCP comme la première, mais étant en "host only", elle n'ira pas chercher son adresse IP auprès du routeur (box) le plus proche mais auprès du serveur DHCP interne de VirtualBox. Ce sera comme si on avait un réseau privé entre notre machine réelle et la machine virtuelle. C'est grâce à cela que les échanges fonctionneront même si la machine hôte n'est pas connectée à internet.
Prérequis
sudo apt-get install vim
Installation
Configurer une interface réseau de manière définitive se fait en modifiant /etc/network/interfaces :
sudo vim /etc/network/interfaces
On a alors ceci :
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0 <-- ici l'interface choisie comme "primaire" pendant l'installation
iface eth0 inet dhcp
Que l'on complète avec touter les autres interfaces. Par exemple, si 3 interfaces, on doit avoir :
auto eth0
iface eth0 inet dhcp
auto eth1
iface eth1 inet dhcp
auto eth2
iface eth2 inet dhcp
Ensuite, pour que les modifications soient prises en compte immédiatement, on s'assure que toutes les interfaces sont up :
sudo ifup eth0
sudo ifup eth1
sudo ifup eth2
Seulement ifup, car l'interface n'étant pas préalablement configurée, elle était down. Pour l'interface déjà configurée, il y aura un message d'erreur sans importance. Attention, si l'interface n'a pas accès au réseau (câble non branché ou pas de réseau wifi rejoint) la commande prendra du temps et finira par échouer (pas grave)
Pour vérifier que cela marche :
ping www.google.com
ça doit marcher. l'interface eth0 (celle en host-only) doit avoir une adresse IP correcte :
ifconfig -a eth0
la noter et la saisir dans le fichier host de sa machine hôte, ex :
192.168.56.101 linuxdev
Si problème DNS, voir ci dessous.
Suite
--> Amorçage d'un serveur Ubuntu avec puppet
Ou bien retourner à Installation d'un serveur unix.
Problèmes rencontrés
Problème DNS
Après l'activation de la deuxième carte réseau, il peut y avoir un problème de DNS car les deux serveurs DHCP (celui de l'interface "bridged" et celui de la "host only") donnent un serveur DNS différent et le client DHCP ne conserve que la dernière réponse visiblement... Je ne sais pas comment mettre des priorités... on va résoudre le problème en forçant le DNS à ceux de google :
sudo vim /etc/dhcp3/dhclient.conf <-- 10.04
sudo vim /etc/dhcp/dhclient.conf <-- 12.04
puis à côté ou à la place de la ligne commentée
#prepend domain-name-servers 127.0.0.1;
mettre ceci :
prepend domain-name-servers 8.8.8.8,8.8.4.4;
Ce ne sont pas les plus rapides puisqu'ils sont aux USA, mais notre serveur, limité à quelques tâches bien précises, ne fera pas beaucoup d'accès DNS de toute manière.