Localisation des VMs VMware par adresse IP ou MAC
Dans une grande infrastructure VMware vSphere, il peut arriver que vous ne connaissiez que l’adresse IP d’une machine virtuelle et que vous ayez besoin de son nom, ou inversement. Par exemple, vous pouvez disposer de l’adresse IP permettant d’accéder à distance à un système d’exploitation invité via SSH ou le protocole RDP (Remote Desktop Protocol), mais avoir besoin du nom de la machine virtuelle pour la localiser sur un hôte VMware ESXi à des fins de configuration, de migration ou de sauvegarde. Vous pouvez effectuer ces opérations avec vSphere, mais pas avec un système d’exploitation invité.
De même, vous pouvez avoir besoin d’identifier l’adresse MAC d’une carte réseau virtuelle utilisée par une machine virtuelle. Dans cet article de blog, nous expliquons comment trouver l’adresse IP ou l’adresse MAC d’une machine virtuelle, ainsi que comment découvrir le nom d’une machine virtuelle lorsque vous connaissez son adresse IP ou son adresse MAC.
Vérification d’une adresse IP dans VMware vSphere Client
La méthode la plus simple pour vérifier l’adresse IP d’une machine virtuelle dans VMware vSphere consiste à utiliser VMware vSphere Client.
- Dans un navigateur Web, saisissez l’adresse IP de votre vCenter Server dans la barre d’adresse, ouvrez VMware vSphere Client, puis saisissez vos identifiants de connexion pour vous connecter.
- Accédez à
Hosts and Clusters, sélectionnez la machine virtuelle souhaitée par son nom et consultez l’ongletSummary. Les adresses IP VMware de la machine virtuelle s’affichent dans la sectionIP addresses. Une machine virtuelle peut disposer de plusieurs réseaux virtuels et de plusieurs adresses IP. - Cliquez sur
View all N IP addressespour afficher toutes les adresses IP utilisées par la machine virtuelle. - Dans la capture d’écran ci-dessous, vous pouvez voir une adresse IPv4 et une adresse IPv6 utilisées par une machine virtuelle VMware. VMware Tools doit être installé sur un système d’exploitation invité (OS) pour afficher les adresses IP dans l’interface Web de VMware vSphere Client. La machine virtuelle doit être sous tension.

Vérification d’une adresse MAC dans VMware vSphere Client
L’adresse MAC d’une machine virtuelle peut être utilisée à des fins de diagnostic réseau et à d’autres fins.
- Pour vérifier l’adresse MAC, cliquez avec le bouton droit de la souris sur le nom de la machine virtuelle dans le volet
Navigatorde VMware vSphere Client, puis, dans le menu contextuel, cliquez surEdit Settings. - Dans l’onglet
Virtual Hardwarede la fenêtreEdit Settings, cliquez sur le nom de la carte réseau pour vérifier l’adresse MAC de la carte réseau virtuelle utilisée par la machine virtuelle.
Vérification de l’adresse IP d’une machine virtuelle dans VMware Host Client
Si vous utilisez un hôte VMware ESXi autonome sans VMware vCenter, vous ne pouvez pas utiliser VMware vSphere Client pour gérer l’environnement virtuel. C’est le cas lorsque vous utilisez ESXi Édition gratuite sur un serveur. Dans ce cas, vous pouvez utiliser VMware Host Client pour gérer un hôte VMware ESXi via une interface Web.
- Saisissez l’adresse IP de votre hôte VMware ESXi dans la barre d’adresse de votre navigateur Web, puis entrez le Nom d’utilisateur et le mot de passe d’un compte administrateur VMware ESXi.
- Dans le volet
Navigator, cliquez surVirtual Machineset sélectionnez la machine virtuelle dont vous souhaitez identifier l’adresse IP. Tout comme pour l’identification de l’adresse IP VMware d’une machine virtuelle dans VMware vSphere Client, la machine virtuelle doit être démarrée et VMware Tools doit être installé sur le système d’exploitation invité. - Sur la page contenant les informations relatives à la machine virtuelle, repérez la section intitulée «
General information» et cliquez sur «Networking» pour développer le volet et afficher les adresses IP utilisées par la machine virtuelle.
Vérification de l’adresse MAC d’une machine virtuelle dans VMware Host Client
- Pour vérifier l’adresse MAC d’une machine virtuelle dans VMware Host Client, sélectionnez la machine virtuelle comme vous le feriez pour vérifier son adresse IP.
- Faites défiler la page vers le bas jusqu’à la section
Hardware Configurationde l’interface Web. - Cliquez sur la carte réseau de la machine virtuelle concernée pour développer les options et trouver l’adresse MAC de la carte réseau virtuelle correspondante.

Remarque : Dans cet exemple, nous utilisons un hôte VMware ESXi géré par vCenter Server, mais nous sommes connectés à VMware Host Client. Les VMs ont été créées dans vCenter.
La recherche de VMs dans VMware vSphere vous permet de trouver une VM par son nom, mais pas par son adresse IP ou son adresse MAC.
Identification du VM-Name à partir de son adresse IP
Vous pouvez identifier le VM-Name si vous connaissez son adresse IP en utilisant vSphere PowerCLI.
- Connectez-vous à un hôte ESXi ou à vCenter, puis saisissez le nom d’utilisateur et le mot de passe du compte administrateur :
Connect-VIServer ESXi_or_vCenter_IP -User root - Dans notre cas, nous nous connectons à l’hôte ESXi géré par vCenter Server à l’aide de la commande :
Connect-VIServer 10.10.10.74 -User root - La commande la plus simple pour afficher une machine virtuelle ayant l’adresse IP définie est :
Où 192.168.17.137 est l’adresse IP de la machine virtuelle à identifier.Get-VM * |where-object{$_.Guest.IPAddress -match "192.168.17.137"}
Il existe une autre méthode pour identifier le VM-Name si vous connaissez son adresse IP dans PowerCLI. Dans ce cas, vous devez exécuter deux commandes.
- Définissez l’adresse IP de la machine virtuelle à identifier :
$vmIP="192.168.17.137" - Récupérez les informations sur la machine virtuelle :
Get-VM * |where-object{$_.Guest.IPAddress -eq $vmIP}|select Name, VMHost, PowerState,GuestId,@{N="IP Address";E={@($_.guest.IPAddress[0])}}|ft
- Si vous connaissez une partie de l’adresse IP, vous pouvez afficher toutes les VMs dont l’adresse IP correspond au modèle de recherche.
$vmIP="192.168."
Get-VM * |where-object{$_.Guest.IPAddress -match $vmIP}|select Name, VMHost, PowerState,@{N="IP Address";E={@($_.guest.IPAddress[0])}} ,@{N="OS";E={$_.Guest.OSFullName}},@{N="Hostname";E={$_.Guest.HostName}}|ft
- Voici une commande permettant d’obtenir la liste de toutes les VMs d’un hôte ou d’un cluster et d’afficher leurs adresses IP lorsque cela est possible :
Get-VM | Select Name, @{N="IP Address";E={@($_.guest.IPAddress[0])}}
L’inconvénient de cette méthode est que l’adresse IP n’est parfois affichée que partiellement.
- Il existe également une commande permettant d’afficher toutes les VMs d’un cluster (le nom du cluster contient la chaîne
“cluster”) et d’afficher leurs adresses IP lorsque cela est possible :
Get-Cluster "*cluster*" | Get-VM | Select Name, Host, @{N="IP Address";E={@($_.guest.IPAddress[0])}}Remplacez[0]par[1]si vous souhaitez afficher la deuxième adresse IP. Vous pouvez supprimer ces caractères de la commande pour constater la différence dans les résultats affichés.
Identification du VM-Name de la machine virtuelle par son adresse MAC
Vous pouvez également utiliser VMware PowerCLI pour identifier le VM-Name de la machine virtuelle si vous connaissez son adresse MAC.
- Connectez-vous à un hôte VMware ESXi ou à vCenter dans VMware PowerCLI. Dans mon exemple, je me connecte à l’hôte ESXi mentionné dans l’exemple précédent :
Connect-VIServer 10.10.10.74 -User root - Définissez l’adresse MAC de la machine virtuelle et recherchez le nom de cette VM :
$vmMAC="00:50:56:84:C4:5F"
Get-VM | Get-NetworkAdapter | Where-Object {$_.MacAddress -eq $vmMAC } | Select-Object Parent,Name,MacAddress
- Vous pouvez vous connecter à l’hôte ESXi via SSH et utiliser l’interface Ligne de commande ESXi pour identifier le VM-Name de la VM à partir de son adresse MAC.
find /vmfs/volumes | grep .vmx$ | while read i; do grep -i "00:50:56:84:C4:5F" "$i" && echo "$i"; done
Adresses MAC des machines virtuelles dans les environnements VMware
Les adresses MAC ne sont pas attribuées de manière aléatoire. La première moitié d’une adresse MAC est généralement associée au fabricant du matériel ou du logiciel correspondant.
Les adresses MAC commençant par 00:50:56 sont des adresses MAC VMware qui appartiennent à des machines virtuelles VMware, comme on a pu le voir dans mes exemples précédents lorsque nous avons identifié les adresses MAC de machines virtuelles VMware.
Il existe quatre types d’attribution pour les adresses MAC VMware : 00:50:56, 00:0C:29, 00:05:69, 00:1C:14. Examinons quelques catégories courantes de gammes d’adresses MAC VMware :
00:50:56– VMware Workstation, VMware vSphere, serveur VMware ESXi00:50:56:80:00:00 - 00:50:56:BF:FF:FF– vCenter, VMs VMware vSphere gérées par vCenter00:0C:29– Hôtes VMware ESXi autonomes, VMware Horizon, VMware Workstation00:05:69– VMware ESXi, VMware GSX00:1C:14– VMware
Les identifiants uniques d’organisation (OUI) sont utilisés comme préfixes pour les adresses MAC VMware, conformément au schéma d’attribution des OUI de VMware. VMware vCenter et les hôtes VMware ESXi utilisent des préfixes différents pour les adresses MAC afin d’éviter les conflits d’adresses MAC dans les situations où un hôte n’est pas connecté à vCenter Server mais peut l’être ultérieurement. Si un hôte VMware ESXi est géré par vCenter, ce dernier génère alors des adresses MAC VMware vSphere pour les VMs.
Lorsqu’une adresse MAC est définie manuellement pour une VM (dans les paramètres de celle-ci), le préfixe (les trois premiers octets) est conservé automatiquement. La seconde moitié de l’adresse MAC peut être personnalisée.
Si vous souhaitez définir manuellement une adresse MAC pour une machine virtuelle VMware, utilisez ce modèle : 00:50:56:XX:YY:ZZ
- La valeur hexadécimale recommandée à la place de
XXest un nombre compris entre00et3F. - Les nombres valides pour les champs
YYetZZse situent dans la gamme comprise entre00etFF(plage complète).
Le respect de ces recommandations vous permet d’éviter les conflits entre les adresses MAC que vous avez définies manuellement, celles générées automatiquement par VMware vCenter et celles attribuées aux adaptateurs VMkernel. Notez que la valeur maximale pour une adresse MAC VMware pouvant être définie manuellement est 00:50:56:3F:FF:FF si le préfixe 00:50:56 (OUI) est utilisé. Cette approche peut également aider à distinguer les adresses MAC VMware attribuées manuellement de celles attribuées automatiquement. N’oubliez pas que toutes les adresses MAC du réseau doivent être uniques.
Calcul de l’identifiant unique vCenter
Explorons d’autres aspects de l’identification d’une adresse MAC de VMware vCenter.
Comme expliqué ci-dessus, une adresse MAC pour vCenter est attribuée à partir de la gamme (00:50:56:80:00:00 - 00:50:56:BF:FF:FF) au format 00:50:56:XX:YY:ZZ .
Dans ce cas, la valeur XX est calculée à partir de l’identifiant unique de vCenter.
XX=80+vCenterID
Si vous connaissez l’adresse MAC de vCenter, vous pouvez calculer l’identifiant unique du serveur vCenter (qui peut être compris entre 0 et 63).
Prenons l’exemple d’un serveur vCenter déployé en tant que machine virtuelle dont l’interface réseau possède une adresse MAC VMware :
00:50:56:9B:48:55
Soustrayez 80 de 9B (en hexadécimal). Vous pouvez utiliser le calculateur disponible à l’adresse HEX .
0x9B - 0x80 = 0x1B
Convertissez la valeur HEX en valeur décimale :
0x1B = 27
L’identifiant unique du vCenter est 27 dans ce cas.
Adresses MAC VMware pour les VMs sur des hôtes autonomes
Examinons maintenant un exemple de génération d’adresse MAC pour les VMs sur un hôte VMware ESXi autonome afin de voir comment les adresses MAC des VMs sont générées sur un hôte VMware ESXi autonome et de comprendre le principe de génération. Les six derniers caractères de l’identifiant unique universel (UUID) de la machine virtuelle sont utilisés pour remplir les trois derniers octets de l’adresse MAC VMware de la machine virtuelle. Les trois premiers octets d’une adresse MAC VMware pour une machine virtuelle créée sur un hôte VMware ESXi autonome sont 00:0C:29.
Sur la capture d’écran ci-dessous, vous pouvez voir une machine virtuelle avec les paramètres suivants :
Adresse MAC : 00:0C:29:B0:3E:1D
VM-Name : Windows-VM
Vérifions l’UUID de la machine virtuelle et comparons les derniers caractères de l’UUID et de l’adresse MAC de la machine virtuelle.
Vous pouvez vérifier l’UUID d’une machine virtuelle à l’aide de cette commande dans PowerCLI :
Get-VM Windows-VM | %{(Get-View $_.Id).config.uuid}
Dans notre cas, l’UUID est 564df9a2-261e-869e-5a1d-d118abb03e1d
et l’adresse MAC est <em>00:0C:29:B0:3E:1D</em>
Comme vous pouvez le constater, la règle fonctionne. 
Conclusion
Vous pouvez vérifier l’adresse MAC et l’adresse IP d’une machine virtuelle dans l’interface utilisateur graphique de VMware vSphere Client et de VMware Host Client. Vous pouvez également utiliser la ligne de commande ESXi ou PowerCLI pour détecter l’adresse MAC d’une machine virtuelle si vous connaissez son nom. Vous pouvez également utiliser VMware PowerCLI pour identifier le VM-Name d’une machine virtuelle si vous connaissez son adresse IP ou son adresse MAC. Connaître les principes d’attribution des adresses MAC VMware aux machines virtuelles et aux autres machines d’une infrastructure virtuelle VMware peut vous aider à distinguer les machines liées à VMware des autres appliances du réseau lorsque vous vérifiez les adresses MAC des appliances connectées.
N’oubliez pas de sauvegarder vos machines virtuelles exécutées dans VMware vSphere. Utilisez un logiciel de sauvegarde VMware ESXi fiable, tel que NAKIVO Backup & Replication, pour une protection robuste des données. Cette solution prend en charge les sauvegardes de machines virtuelles, de serveurs physiques, de bases de données et de Microsoft 365.
