VirtualBox propose plusieurs modes réseau pour ses cartes virtuelles (jusqu'à 4 cartes par VM, chacune dans un mode différent). Chaque mode répond à un besoin précis : isolation, accès Internet, communication inter-VM, intégration au LAN physique. Voici une présentation détaillée de chacun.
Chaque VM dispose de son propre moteur NAT indépendant, instancié dans le processus de la VM. Toutes les VMs reçoivent la même IP 10.0.2.15/24 avec passerelle 10.0.2.2, mais elles vivent dans des réseaux virtuels totalement cloisonnés les uns des autres.
VM1 (10.0.2.15) ──► [NAT engine 1] ──┐
VM2 (10.0.2.15) ──► [NAT engine 2] ──┼──► Hôte ──► LAN ──► Internet
VM3 (10.0.2.15) ──► [NAT engine 3] ──┘
10.0.2.15)10.0.2.210.0.2.310.0.2.4 (pour boot PXE)10.0.2.2Mises à jour d'une VM, navigation web, téléchargement de paquets, tests isolés où la VM ne doit jamais voir d'autres machines.
VBoxManage modifyvm "MaVM" --natpf1 "ssh,tcp,,2222,,22"
# Depuis l'hôte : ssh -p 2222 user@127.0.0.1
Variante du NAT introduite plus tard, où un seul moteur NAT est partagé entre plusieurs VMs. Les VMs sont sur un même réseau virtuel et peuvent communiquer entre elles, tout en bénéficiant du NAT vers l'extérieur.
VM1 (10.0.2.4) ──┐
VM2 (10.0.2.5) ──┼──► [NAT engine partagé] ──► Hôte ──► LAN ──► Internet
VM3 (10.0.2.6) ──┘
↕ (communication directe possible)
Fichier > Outils > Gestionnaire de réseau)10.0.2.0/24)TP avec plusieurs VMs qui doivent dialoguer et accéder à Internet : architecture client/serveur, cluster de test, lab DevOps avec accès aux dépôts externes.
VirtualBox crée une interface virtuelle sur l'hôte (vboxnet0, vboxnet1, …) qui sert de switch logique. Les VMs connectées à ce réseau peuvent communiquer entre elles et avec l'hôte, mais pas avec l'extérieur.
Hôte (vboxnet0 : 192.168.56.1)
│
├── VM1 (192.168.56.10)
├── VM2 (192.168.56.11)
└── VM3 (192.168.56.12)
ip a ou ipconfig)192.168.56.0/24 (configurable)Switch virtuel strictement privé, invisible depuis l'hôte. Seules les VMs configurées sur le même nom de réseau interne peuvent communiquer. C'est l'équivalent d'un switch physique non relié à autre chose.
[Switch virtuel "intnet-lab1"]
│
┌────────┼────────┐
│ │ │
VM1 VM2 VM3
(à vous d'attribuer les IP : DHCP statique, ou config manuelle)
intnet, lan-dmz, red-team…)Cette topologie est celle utilisée dans le miniLab.
[LAN physique] ── (bridge) ── [pfSense] ── (intnet "LAN") ── postes clients
── (intnet "DMZ") ── serveurs web
── (intnet "MGMT") ── poste admin
La carte virtuelle de la VM est pontée sur une interface physique de l'hôte. La VM apparaît sur le LAN comme une machine physique à part entière, avec sa propre MAC visible et sa propre IP délivrée par le DHCP du réseau.
[Routeur LAN / DHCP du réseau]
│
┌────┴────┬─────────┬─────────┐
Hôte VM1 VM2 autre PC physique
(192.168.1.10) (192.168.1.20) (192.168.1.21) (192.168.1.30)
Le bridge sur Wi-Fi est notoirement instable et ce n'est pas un défaut de VirtualBox : le standard 802.11 n'autorise pas nativement plusieurs MAC par session radio, contrairement à Ethernet. L'AP n'a authentifié qu'une seule MAC (celle de l'hôte) et rejette ou ignore les trames émises avec une autre MAC source.
Pour faire illusion, VirtualBox applique un MAC spoofing : il réécrit la MAC source des trames sortantes avec celle du Wi-Fi de l'hôte, et démultiplexe les retours via une table IP_VM ↔ port. Ce n'est donc pas un vrai bridge L2 mais un proxy applicatif.
Symptômes fréquents :
Recommandation : éviter le bridge sur Wi-Fi en formation et en production. Privilégier NAT + Internal Network pour les TP, et un lien filaire (ou un vrai hyperviseur type Proxmox) si une VM doit réellement être joignable sur le LAN.
| Mode | VM ⇄ Internet | VM ⇄ Hôte | VM ⇄ VM | VM ⇄ LAN physique | Visible sur le LAN |
|---|---|---|---|---|---|
| NAT | ✅ | via 10.0.2.2 | ❌ | ❌ | ❌ |
| NAT Network | ✅ | ❌ (sauf PF) | ✅ | ❌ | ❌ |
| Host-Only | ❌ | ✅ | ✅ | ❌ | ❌ |
| Internal Network | ❌ | ❌ | ✅ | ❌ | ❌ |
| Bridged | ✅ | ✅ | ✅ | ✅ | ✅ |