VirtualBox - Comment utiliser et configurer les différents modes d'accès réseau d'une machine virtuelle

Page 1 / 2

Dans les paramètres des machines virtuelles créées avec VirtualBox, vous pouvez voir que les cartes réseau peuvent être connectées au réseau de différentes façons.

  1. NAT
  2. Réseau NAT
  3. Accès par pont
  4. Réseau interne
  5. Réseau privé hôte
  6. Pilotes générique

1. NAT

Par défaut, les machines virtuelles sont configurées pour accéder au réseau via le mode NAT.
Ce mode d'accès au réseau permet à la machine virtuelle d'accéder au réseau et à Internet sans créer de conflit dans votre réseau.
En effet, en utilisant le mode NAT, les adresses IP seront distribuées aux machines virtuelles par VirtualBox et non par le serveur DHCP de votre réseau.

Si vous le souhaitez, vous pouvez changer le type de carte réseau qui sera émulé par VirtualBox pour la machine virtuelle.
Cela peut permettre de résoudre des problèmes de compatibilité avec certains systèmes d'exploitation ou certains Live CD qui ne supporteraient pas celle utilisée par défaut.

Le seul problème avec le mode NAT, c'est que vous ne pourrez pas accéder aux services de votre machine virtuelle depuis un ordinateur de votre réseau, car votre machine virtuelle se trouvera derrière une passerelle (émulée par VirtualBox).
Pour vous le prouver, nous avons installé un serveur Web (grâce à WAMP) sur notre machine virtuelle.

Une fois le serveur web démarré, Windows nous demande si l'on souhaite autoriser l'accès à notre serveur web depuis le réseau.
On clique sur Autoriser l'accès.

Dans notre machine virtuelle, nous avons bien accès à notre site local.

Pour que le serveur web soit accessible depuis le réseau, nous cliquons sur "Put Online" dans le menu de WAMP.

Comme vous pouvez le voir, notre ordinateur physique possède l'adresse IP "10.0.0.5" et le masque de sous-réseau "255.255.255.0".
Donc, notre PC se trouve sur le réseau : 10.0.0.x.

Alors que la machine virtuelle se trouve sur le réseau 10.0.2.x et qu'elle se trouve derrière la passerelle "10.0.2.2".

Donc, nous ne pouvons pas accéder au serveur de notre machine virtuelle en tapant directement son adresse IP.

Pour régler ce problème, le plus simple est d'utiliser le mode d'accès réseau : Accès par pont.
Mais, vous pouvez aussi configurer la redirection de ports (ou port forwarding en anglais) de la passerelle virtuelle créée par VirtualBox pour pouvoir accéder au serveur web de votre machine virtuelle depuis n'importe quel PC du réseau.

Pour cela, retournez dans les paramètres réseau de votre machine virtuelle et cliquez sur : Redirection de ports.

La fenêtre "Règles de redirection de ports" apparait.
Cliquez sur l'icône + située à droite.

Pour créer une nouvelle règle, vous devrez indiquer :

  • un nom : par exemple : WAMP
  • le protocole utilisé : TCP ou UDP (pour les serveurs web, il s'agit du protocole TCP)
  • l'IP hôte : facultatif. Cela est utile si cette règle doit concerner une seule interface réseau (carte réseau)
  • le port hôte : le port du PC hôte via lequel les autres ordinateurs du réseau pourront accéder au serveur web tournant dans votre machine virtuelle.
  • IP invité : facultatif. La raison est la même que pour la colonne "IP hôte".
  • Port invité : le port de destination. Etant donné que notre serveur web écoute sur le port 80 (HTTP) dans notre machine virtuelle, nous avons indiqué : 80.

Cliquez sur OK pour valider cette règle.

Maintenant, nous pouvons accéder au serveur web de notre machine virtuelle en utilisant :

  • l'adresse IP de notre PC hôte
  • le port indiqué dans la colonne "Port hôte"

Si vous afficher les infos de PHP (via la fonction phpinfo de php), vous verrez que :

  • nous accédons au serveur via l'adresse : 10.0.0.5:8080
  • que la vraie adresse IP du serveur est "10.0.2.15" et non "10.0.0.5"
  • que l'adresse IP du client n'est pas la bonne. Cela est dû au fait que le serveur web se trouve derrière une passerelle.

2. Réseau NAT

Avec VirtualBox, vous pouvez aussi créer des réseaux NAT supplémentaires.
Néanmoins, par défaut, il n'y en a aucun de créé.

Pour créer un nouveau réseau NAT, allez dans le menu : Fichier -> Préférences.
Ensuite, cliquez sur "Réseau", puis sur l'icône +.

Par défaut, votre nouveau réseau NAT sera nommé : NatNetwork.
Pour le configurer, sélectionnez-le et cliquez sur l'icône représentant un engrenage.

Pour chaque réseau NAT, vous pourrez choisir :

  • l'identifiant réseau à utiliser (aussi appelé CIDR pour Classless Inter-Domain Routing).
  • la possibilité d'activer ou non le serveur DHCP de VirtualBox pour ce réseau. Le désactiver peut être pratique pour apprendre à créer un serveur DHCP sous Linux ou Windows Server.
  • de supporter aussi l'IPv6 ou non.
  • de créer des redirections de ports comme expliqué précédemment.

Dans ce cas-ci, vous pourrez rediriger des ports en IPV4 et/ou en IPv6.

Voilà notre nouveau réseau NAT.

Dans les paramètres de votre machine virtuelle, retournez dans la partie "Réseau" et sélectionnez :

  • le mode d'accès réseau : Réseau NAT
  • le nom de votre nouveau réseau NAT. Dans notre cas : MySecondNatNetwork.

Comme vous pouvez le voir, notre machine virtuelle a bien reçu une adresse IP qui correspond bien à l'ID réseau "10.0.3.0/24" configuré précédemment.

Pour le mode de promiscuité, il est préférable de le désactiver (refuser) pour ne pas ralentir la vitesse du réseau pour votre machine virtuelle.
L'activation du mode de promiscuité étant uniquement utile pour analyser le trafic réseau d'un réseau via des sniffeurs.

3. Accès par pont

Le mode "Accès par pont" permet de placer virtuellement votre machine virtuelle dans votre réseau physique.
Autrement dit :

  • votre machine virtuelle recevra une adresse IP du serveur DHCP de votre réseau (en général, ce serveur se trouve dans votre Box ou routeur)
  • votre machine virtuelle apparaitra sur votre réseau comme une machine à part entière
  • vous pourrez accéder aux services hébergés sur votre machine virtuelle comme si votre machine virtuelle était une vraie machine

Lorsque vous sélectionnez le mode "Accès par pont", VirtualBox vous permettra de sélectionner quelle interface réseau il devra utiliser pour connecter cette machine virtuelle sur le réseau physique souhaité.

Dans notre cas, notre ordinateur possède 2 interfaces réseau (cartes réseau) :

  • la carte réseau filaire : Intel(R) Ethernet Connection (2) I219-LM
  • la carte réseau sans-fil (Wi-Fi) : Intel(R) Dual Band Wireless-AC 8260

Si vous ne savez pas quelle carte réseau sélectionner, allez dans le panneau de configuration de Windows pour afficher vos connexions réseau.

Pour les afficher, vous avez 2 possibilités :

  • ouvrir le panneau de configuration et allez dans : Réseau et Internet -> Centre Réseau et partage -> Modifier les paramètres de la carte
  • ou faire un clic droit sur l'icône réseau de la barre des tâches et cliquez sur "Ouvrir le Centre Réseau et partage". Ensuite, cliquez sur "Modifier les paramètres de la carte".

Bref, comme vous pouvez le voir ci-dessous, notre carte réseau Ethernet est connectée au réseau, alors que la carte Wi-Fi n'est pas connectée pour le moment.
Nous avons donc sélectionné la carte réseau "Intel(R) Ethernet Connection (2) I219-LM" dans les paramètres réseau de notre machine virtuelle.

Maintenant, notre machine virtuelle a reçu une adresse IP depuis le serveur DHCP présent dans notre vrai routeur.

Nous pouvons donc accéder au serveur web de notre machine virtuelle comme si il se trouvait sur une machine physique de notre réseau.

Cette fois-ci, l'adresse IP du serveur (SERVER_ADDR) correspond bien à l'adresse IP utilisée pour accéder à notre serveur web et l'adresse IP du client (REMOTE_ADDR) correspond bien à notre adresse IP locale.