Aller au contenu principal

VirtualBox (Réseaux)

Gestion des modes d’accès réseau de VirtualBox

Notions théoriques

Vocabulaire

La machine hôte est l’ordinateur sur lequel les VMs sont créées.

Si vous avez installé VirtualBox sous Windows, la machine hôte est votre ordinateur sous Windows.

Carte réseau / Interface réseau

Bien que dans la plupart des situations, une carte réseau et une interface réseau représentent la même chose, il existe une différence.

Carte/interface réseauComposantAdresse MAC/IP
Carte réseauCarte réseauComposant matériel physiquePossède une adresse matérielle (adresse MAC)
Interface réseauInterface réseauComposant logiqueConfiguré avec une adresse logique (adresse IP)

Création automatique d'une carte réseau

Lors de l’installation de VirtualBox, la carte réseau virtuelle suivante a été créée :

  • VirtualBox Host-Only Network.

Image

Les modes d'accès réseau

Voici les 7 modes d'accès réseau de VirtualBox (en gras les 4 modes d'accès réseau les plus utilisés) :

  1. Aucune connexion
  2. NAT : Votre machine virtuelle pourra accéder à Internet, mais elle ne sera pas accessible depuis votre réseau local.
  3. Réseau NAT
  4. Accès par pont (Bridge) : Votre machine virtuelle sera considérée comme un ordinateur à part entière dans votre réseau local.
  5. Réseau interne : Seules les machines virtuelles du même réseau interne pourront communiquer entre elles.
  6. Réseau privé hôte (Host-only) : Votre machine virtuelle sera accessible depuis votre ordinateur hôte, mais pas depuis votre réseau local.
  7. Pilotes générique.

Image


- NAT

Schéma NAT

  • Le mode d'accès réseau NAT est conçu pour permettre à la VM d'accéder à des ressources externes (comme Internet) en utilisant l'adresse IP de l'hôte, mais il n'autorise pas (sans redirection de port) les connexions entrantes vers la VM depuis l'hôte ou d'autres machines sur le réseau.

    info

    Pour permettre à la VM d'accéder à Internet, VirtualBox effectue une translation d'adresse avant d'envoyer les paquets de la VM vers le réseau. Il met son adresse IP en source du paquet et tient à jour une table de translation. Une fois la réponse reçue, VirtualBox sait que le paquet est à destination de la VM et remet l'adresse IP de la VM en source du paquet avant de le transmettre à la VM.

  • Dans le mode d'accès réseau NAT, l'hôte ne peut pas accéder directement à la VM, sans redirection de port.

Avantages

  • Configuration automatique
  • Sécurité accrue car la VM est isolée

Inconvénients

  • Difficile d'héberger des services sur la VM (il faut utiliser la redirection de port)
Comment mettre en place une redirection de port pour accéder à une VM depuis l'hôte ?

Pour que l'hôte puisse accéder à la VM, vous devez configurer une redirection de port (port forwarding) :

Configuration de VirtualBox

  1. Assurez-vous que la VM est éteinte.

  2. Dans les paramètres de la VM, allez dans l'onglet "Réseau" et vérifiez que le mode NAT est sélectionné.

  3. Cliquez sur "Avancé" puis sur "Redirection de ports".

  4. Ajoutez une nouvelle règle de redirection avec les paramètres suivants:

    • Protocole : TCP
    • IP hôte : laissez vide
    • Port hôte : choisissez un port non utilisé (ex: 2222)
    • IP invité : 10.0.2.15 (ou l'IP de votre VM)
    • Port invité : 22
  5. Validez les changements et démarrez la VM.

Configuration de PuTTY

  1. Ouvrez PuTTY sur votre machine hôte.

  2. Dans le champ "Host Name (or IP address)", entrez : localhost.

  3. Dans le champ "Port", entrez le numéro du port hôte que vous avez choisi (ex: 2222).

  4. Choisissez "SSH" comme type de connexion.

  5. Cliquez sur "Open" pour lancer la connexion.

  6. Entrez vos identifiants de connexion pour la VM lorsque vous y êtes invité.

Points importants

  • Assurez-vous que le service SSH est installé et actif sur votre VM.
  • L'adresse IP 10.0.2.15 est généralement l'adresse par défaut attribuée à la VM en mode NAT, mais vérifiez l'adresse réelle de votre VM si nécessaire.
  • Si vous avez des problèmes de connexion, vérifiez que le pare-feu de votre système hôte ne bloque pas le port que vous avez choisi.

remarque

Le mode d'accès réseau NAT est le mode par défaut de VirtualBox.


- Accès par pont (Bridge)

Schéma Bridge

Dans le mode d'accès réseau Accès par pont (Bridge), la carte réseau virtuelle est « pontée » à une carte réseau physique de l'hôte :

  • La carte réseau virtuelle de la VM est directement connectée à la carte réseau physique de l'hôte, comme si elle était branchée sur le même switch réseau.
  • Le trafic réseau de la VM passe directement par la carte réseau physique de l'hôte, sans translation d'adresse (NAT).
  • Ce mode permet à la VM d'être pleinement accessible depuis le réseau local, comme si c'était une machine physique séparée.

Avantages

  • Parfait pour héberger des services
  • Intégration complète au réseau existant

Inconvénients

  • Configuration manuelle de l'adresse IP parfois nécessaire
  • Moins sécurisé car la VM est exposée au réseau local
info

Dans le mode d'accès réseau Accès par pont (Bridge), la VM peut obtenir une adresse IP du même serveur DHCP que l'hôte sur le réseau local, ou être configurée avec une adresse IP statique dans le même sous-réseau.


- Réseau interne

Schéma Réseau interne

Ce mode permet de connecter des machines virtuelles entre-elles sur un réseau virtuel isolé.

Avec le mode réseau "Réseau interne", les VMs sont dans un réseau indépendant (VLAN).

  • Les VMs peuvent communiquer entre elles
  • Aucun accès à l'hôte ou à Internet

Avantages

  • Idéal pour tester des configurations réseau complexes
  • Sécurité maximale

Inconvénients

  • Pas d'accès à Internet ou aux ressources externes
remarque

Si vous souhaitez alors relier ce réseau interne à un autre, créez une VM qui fera fonction de routeur avec une interface dans ce réseau interne et une autre interface dans un autre réseau (interne, ou privé, etc.).


- Réseau privé hôte (Host-only)

Schéma Host-only

Le mode d'accès réseau Réseau privé hôte (Host-only) permet de créer plusieurs machines virtuelles qui ne communiquent qu’avec l’hôte.

Cela permet d’isoler ces VMs du réseau physique tout en permettant à l’hôte d’y accéder.

Avantages

  • Communication possible entre l'hôte et les VMs
  • Plus sécurisé que le mode bridgé

Inconvénients

  • Les VMs n'ont pas accès à Internet.
remarque

Le mode d'accès réseau Réseau privé hôte (Host-only) est généralement utilisé pour des environnements de test ou de développement où l'accès externe n'est pas nécessaire.

Comparaison des 4 modes d'accès

À retenir
  1. Mode d'accès NAT :

    • Les VMs sont dans le VLAN créé par défaut lors de l'installation de VirtualBox, avec un serveur DHCP et un routeur.

      Explication

      En mode NAT, VirtualBox crée un réseau privé interne pour les VMs. Ce réseau utilise un serveur DHCP pour attribuer des adresses IP aux VMs et un routeur virtuel pour permettre aux VMs d'accéder à l'extérieur (Internet).

      Les VMs peuvent communiquer entre elles sur ce réseau privé, mais elles ne sont pas directement accessibles depuis l'extérieur.

  2. Mode d'accès Accès par pont (bridge) :

    • Les VMs sont sur le même réseau que l'hôte.

      Explication

      En mode bridge, la VM se connecte directement au réseau physique auquel l'hôte est connecté.

      Cela signifie que la VM obtient une adresse IP du même réseau que l'hôte et peut communiquer directement avec d'autres dispositifs sur ce réseau, y compris l'hôte et les autres VMs en mode bridge.

  3. Mode d'accès Réseau interne :

    • Les VMs sont dans un VLAN, qu'il faut créer et nommer, avec un serveur DHCP mais sans routeur.

      Explication

      En mode réseau interne, les VMs sont connectées à un réseau interne spécifique que l'utilisateur doit créer et nommer. Ce réseau interne peut avoir un serveur DHCP pour attribuer des adresses IP aux VMs, mais il n'a pas de routeur pour permettre l'accès à l'extérieur.

      Les VMs peuvent uniquement communiquer entre elles sur ce réseau interne.

  4. Mode d'accès Réseau privé hôte :

    • L'hôte peut communiquer avec les VMs mais il n'y a pas de communication directe avec l'extérieur (LAN et donc WAN).

      Explication

      En mode réseau privé hôte, la VM est connectée à un réseau privé qui permet la communication entre les VMs de ce réseau privé et l'hôte. Cependant, ce réseau privé n'a pas de routeur pour permettre l'accès à l'extérieur,

      Cela signifie que les VMs, de ce réseau privé, ne peuvent pas accéder directement au LAN ou à Internet.

Exemple pratique

Configurer une VM en mode NAT

Mettons en pratique nos connaissances en configurant une machine virtuelle en mode NAT :

  1. Ouvrez VirtualBox et sélectionnez votre VM
  2. Cliquez sur "Configuration"
  3. Allez dans l'onglet "Réseau"
  4. Pour l'adaptateur 1, choisissez "NAT" dans le menu déroulant
  5. Cliquez sur "OK" pour valider

Démarrez votre VM et ouvrez un terminal. Tapez la commande ip addr pour voir l'adresse IP attribuée.

Vous devriez voir une adresse du type 10.0.2.15.

Testez la connexion Internet en tapant ping google.com. Si vous recevez des réponses, félicitations !

Votre VM est correctement configurée en mode NAT.


Test de compréhension/mémorisation


Quel est le mode réseau par défaut lors de la création d'une nouvelle VM dans VirtualBox ?


Quel mode réseau permet aux VMs de communiquer directement avec le réseau local de l'hôte ?


Quel mode réseau est isolé des autres VMs et de l'hôte physique ?


Dans quel mode réseau l'adresse IP des VMs est-elle masquée au reste du réseau physique ?


Quel mode réseau utilise le serveur DHCP du réseau de l'hôte pour attribuer des adresses IP aux VMs ?


Qu'est-ce qu'un réseau privé hôte dans la virtualisation ?


Qu'est-ce qu'un accès par pont dans la virtualisation ?


Quel composant est utilisé pour connecter les interfaces réseau des VMs dans le mode 'Réseau privé hôte' ?


Quel mode réseau isole complètement les VMs de l'hôte et d'Internet ?


Dans quel mode la VM obtient une adresse IP du même réseau que l'hôte ?


Quel est l'avantage principal du mode NAT ?


Quel mode permet une communication entre l'hôte et les VMs, mais pas avec Internet ?