Retour : VMware ESXi
Hôte ESXi
┌─────────────────────────────────────────────────────┐
│ VM1 ─┐ │
│ VM2 ─┼─ Groupe de ports "VM-VLAN20" ─┐ │
│ │ ├─ vSwitch0 ──┼── vmnic0 ── Switch
│ vmk0 ── Groupe "Management Network" ─┘ │ vmnic1 ── physique
└─────────────────────────────────────────────────────┘
| Élément | Rôle |
|---|---|
| vmnic | Carte réseau physique de l'hôte (vmnic0, vmnic1…) |
| vSwitch standard | Commutateur virtuel propre à l'hôte, relié à une ou plusieurs vmnic (uplinks) |
| Groupe de ports (port group) | Point de branchement des VM, porte le VLAN et les stratégies |
Interface VMkernel (vmk0…) |
Interface IP de l'hôte lui-même : administration, vMotion, stockage iSCSI / NFS |
| vSwitch distribué (vDS) | Commutateur commun à plusieurs hôtes, géré par vCenter (licence) |
Après l'installation, vSwitch0 contient le groupe Management Network (avec vmk0, l'adresse d'administration) et le groupe VM Network pour les VM.
Le VLAN est porté par le groupe de ports : un groupe par VLAN, et chaque VM se connecte au groupe voulu.
| VLAN ID du groupe | Comportement |
|---|---|
0 |
Pas de VLAN (trafic non étiqueté) |
1 à 4094 |
L'hôte étiquette le trafic de ce groupe avec ce VLAN (cas général) |
4095 |
Trunk : tous les VLAN arrivent étiquetés dans la VM (pare-feu virtuel, routeur) |
Le port du switch physique relié aux vmnic doit être en trunk. Exemple Cisco :
Switch(config)# interface range GigabitEthernet0/1 - 2
Switch(config-if-range)# description Uplinks esx1
Switch(config-if-range)# switchport mode trunk
Switch(config-if-range)# switchport trunk allowed vlan 10,20,30
VM-VLAN20, ID VLAN 20, commutateur virtuel vSwitch0.VM-VLAN20.esxcli network vswitch standard list
esxcli network vswitch standard portgroup list
esxcli network vswitch standard portgroup add --portgroup-name="VM-VLAN20" --vswitch-name=vSwitch0
esxcli network vswitch standard portgroup set --portgroup-name="VM-VLAN20" --vlan-id=20
⚠️ Modifier le VLAN du groupe Management Network coupe l'accès si le switch n'est pas prêt : préparer le trunk d'abord et garder un accès à la console (DCUI, iDRAC / iLO).
Exemple : un second vSwitch sur vmnic2 pour le trafic de stockage.
Mise en réseau → Commutateurs virtuels → Ajouter un commutateur virtuel standard : nom vSwitch1, liaison montante vmnic2, MTU.
Pour ajouter une carte à un vSwitch existant : sélectionner le vSwitch → Ajouter une liaison montante.
esxcli network nic list
esxcli network vswitch standard add --vswitch-name=vSwitch1
esxcli network vswitch standard uplink add --uplink-name=vmnic2 --vswitch-name=vSwitch1
Une interface VMkernel donne une adresse IP à l'hôte sur un réseau, pour un usage précis :
| Service (case à cocher) | Usage |
|---|---|
| Gestion | Administration (Host Client, vCenter) |
| vMotion | Migration à chaud des VM entre hôtes |
| Stockage (aucune case) | Trafic iSCSI / NFS : il suffit d'une VMkernel sur le bon réseau |
| vSAN, Provisionnement, Fault Tolerance… | Fonctions vCenter |
Storage (VLAN 30) sur vSwitch1.Storage, adresse statique 192.168.30.11/24, aucun service coché.esxcli network vswitch standard portgroup add --portgroup-name=Storage --vswitch-name=vSwitch1
esxcli network vswitch standard portgroup set --portgroup-name=Storage --vlan-id=30
esxcli network ip interface add --interface-name=vmk1 --portgroup-name=Storage
esxcli network ip interface ipv4 set --interface-name=vmk1 --type=static \
--ipv4=192.168.30.11 --netmask=255.255.255.0
esxcli network ip interface ipv4 get
Avec plusieurs uplinks sur un vSwitch : vSwitch (ou groupe de ports) → Modifier les paramètres → Association de cartes réseau :
| Stratégie d'équilibrage | Switch physique | Remarque |
|---|---|---|
| Basée sur le port virtuel d'origine (défaut) | Aucune configuration | Chaque VM utilise une carte ; recommandé |
| Basée sur le hachage IP | EtherChannel statique obligatoire | Pas de LACP sur un vSwitch standard |
| Basée sur le hachage MAC source | Aucune configuration | Rarement utilisée |
| Ordre de basculement explicite | Aucune configuration | Carte active / carte de secours |
💡 Le LACP n'est disponible que sur un vSwitch distribué (vCenter).
Groupe de ports → Modifier les paramètres → Sécurité :
| Stratégie | Défaut | À passer sur Accepter pour… |
|---|---|---|
| Mode promiscuité | Rejeter | Sonde réseau (IDS), capture de trafic |
| Modifications d'adresse MAC | Rejeter | VM qui changent leur MAC (cluster, certains pare-feu) |
| Transmissions forgées | Rejeter | Pare-feu virtuels, ESXi imbriqué (nested) |
Ne les assouplir que sur le groupe de ports qui en a besoin.
| Adaptateur | Usage |
|---|---|
| VMXNET3 | Le plus performant, pilote fourni par les VMware Tools (inclus dans les noyaux Linux récents) |
| E1000E | Compatibilité à l'installation d'un système sans pilote VMXNET3 |
Pour le stockage (iSCSI, NFS), une MTU de 9000 peut améliorer les débits, à condition qu'elle soit identique de bout en bout : vSwitch, interface VMkernel, switch physique, NAS.
esxcli network vswitch standard set --vswitch-name=vSwitch1 --mtu=9000
esxcli network ip interface set --interface-name=vmk1 --mtu=9000
# Test sans fragmentation (8972 = 9000 - en-têtes)
vmkping -I vmk1 -d -s 8972 192.168.30.20
| Symptôme | Pistes |
|---|---|
| VM sans réseau | Groupe de ports correct ? Case Connecter de l'adaptateur cochée ? Pilote VMXNET3 présent ? |
| VM sans réseau dans un VLAN | VLAN ID du groupe ? VLAN autorisé sur le trunk ? |
| Hôte injoignable | DCUI → Test Management Network, VLAN de vmk0, Restore Network Settings en dernier recours |
| Stockage lent ou instable | MTU incohérente, VMkernel sur le mauvais réseau |
esxcli network nic list
esxcli network ip interface ipv4 get
esxcli network vswitch standard list
# Ping depuis une interface VMkernel précise
vmkping -I vmk0 192.168.4.1
# Capture du trafic d'une vmnic
pktcap-uw --uplink vmnic0 -o /tmp/capture.pcap