In una grande infrastruttura VMware vSphere, potresti conoscere solo l’indirizzo IP di una VM e avere bisogno del nome o viceversa. Ad esempio, potresti avere l’indirizzo IP con accesso remoto a un sistema operativo guest tramite SSH o Protocollo Desktop Remoto (RDP) ma avere bisogno del nome della VM per individuare quella VM su un host ESXi per configurazione, migrazione o backup. Puoi completare queste operazioni con vSphere ma non con un sistema operativo guest.
Inoltre, potresti aver bisogno di identificare un indirizzo MAC di un adattatore di rete virtuale che una VM utilizza. In questo post sul blog, spieghiamo come trovare l’indirizzo IP o MAC di una macchina virtuale e come scoprire il nome di una VM quando si conosce l’indirizzo IP o MAC.
Verifica di un indirizzo IP in VMware vSphere Client
Il modo più diretto per verificare l’indirizzo IP di una VM in VMware vSphere è utilizzare VMware vSphere Client.
- In un browser web, inserisci l’indirizzo IP del tuo server vCenter nella barra degli indirizzi, apri vSphere Client e inserisci le tue credenziali per accedere.
- Vai su Host e Cluster, seleziona la VM necessaria per nome e controlla la scheda Riepilogo. Gli indirizzi IP VMware della macchina virtuale sono visualizzati nella sezione Indirizzi IP. Una VM può avere più adattatori di rete virtuali e più indirizzi IP.
- Clicca su Visualizza tutti N indirizzi IP per visualizzare tutti gli indirizzi IP utilizzati dalla VM.
- Nello screenshot qui sotto, puoi vedere un indirizzo IPv4 e un indirizzo IPv6 utilizzati da una VM VMware. È necessario installare VMware Tools su un sistema operativo (OS) guest per visualizzare gli indirizzi IP nell’interfaccia web del client VMware vSphere. La VM deve essere accesa.
Verifica di un indirizzo MAC in vSphere Client
A VM’s MAC address can be used for network diagnostics and other purposes.
- Per controllare l’indirizzo MAC, fai clic con il pulsante destro del mouse sul nome della VM nel riquadro Navigatore del client VMware vSphere e nel menu contestuale fai clic su Modifica impostazioni.
- Nella scheda Hardware virtuale della finestra Modifica impostazioni, fai clic sul nome dell’adattatore di rete per controllare l’indirizzo MAC dell’adattatore di rete virtuale utilizzato dalla VM.
Verifica dell’indirizzo IP di una VM in VMware Host Client
Se stai utilizzando un host ESXi autonomo senza VMware vCenter, non puoi utilizzare VMware vSphere Client per gestire l’ambiente virtuale. Questo accade quando si utilizza la Edizione gratuita di ESXi su un server. In questa situazione, puoi utilizzare VMware Host Client per gestire un host ESXi in un’interfaccia web.
- Inserisci l’indirizzo IP del tuo host ESXi nella barra degli indirizzi del tuo browser web e inserisci un nome utente e una password dell’amministratore ESXi.
- Nella finestra di navigazione, fai clic su Macchine virtuali e seleziona la VM con l’indirizzo IP che deve essere identificato. Come per l’identificazione dell’indirizzo IP di VMware di una VM in vSphere Client, la VM deve essere avviata e VMware Tools deve essere installato sul sistema operativo guest.
- Sulla pagina con le informazioni sulla VM, individua la sezione con Informazioni generali e fai clic su Networking per espandere la finestra e visualizzare gli indirizzi IP utilizzati dalla VM.
Verifica dell’indirizzo MAC di una VM in VMware Host Client
- Per verificare l’indirizzo MAC di una VM in VMware Host Client, seleziona la VM come faresti quando verifichi l’indirizzo IP.
Scorri verso il basso della pagina fino alla sezione Configurazione hardware nell’interfaccia web. - Scorri la pagina fino alla sezione Configurazione Hardware nell’interfaccia web.
- Clicca sull’adattatore di rete VM necessario per espandere le opzioni e trovare l’indirizzo MAC dell’adattatore di rete virtuale corrispondente.
Nota: In questo esempio, utilizziamo un host ESXi gestito da vCenter Server, ma siamo connessi a VMware Host Client. Le VM sono state create in vCenter.
La ricerca VM in VMware vSphere ti consente di trovare una VM per nome ma non per indirizzo IP o indirizzo MAC.
Identificare il Nome della VM tramite l’Indirizzo IP
Puoi identificare il nome della VM se conosci l’indirizzo IP utilizzando vSphere PowerCLI.
- Connettiti a un host ESXi o vCenter e inserisci il nome utente e la password per l’account amministrativo:
Connect-VIServer ESXi_or_vCenter_IP -User root - Nel nostro caso, ci colleghiamo all’host ESXi gestito da vCenter Server con il comando:
Connect-VIServer 10.10.10.74 -User root - Il comando più semplice per visualizzare una VM che ha l’indirizzo IP definito è:
Get-VM * | where-object{$_.Guest.IPAddress -match “192.168.17.137”}Dove 192.168.17.137 è l’indirizzo IP della VM da identificare.
C’è un altro metodo per identificare il nome di una VM se si conosce l’indirizzo IP di una VM in PowerCLI. In questo caso, è necessario eseguire due comandi.
- Definire l’indirizzo IP della VM da identificare:
$vmIP=”192.168.17.137″ - Ottenere informazioni sulla VM:
Get-VM * | where-object{$_.Guest.IPAddress -eq $vmIP} | select Name, VMHost, PowerState, GuestId, @{N=”Indirizzo IP”; E={@($_.guest.IPAddress[0])}} | ft - Se conosci parte dell’indirizzo IP, puoi visualizzare tutte le VM con indirizzi IP che corrispondono al modello di ricerca.
$vmIP=”192.168.”
Get-VM * | where-object{$_.Guest.IPAddress -match $vmIP} | select Name, VMHost, PowerState, @{N=”Indirizzo IP”; E={@($_.guest.IPAddress[0])}} ,@{N=”OS”; E={$_.Guest.OSFullName}}, @{N=”Hostname”; E={$_.Guest.HostName}} | ft - Ecco un comando per ottenere un elenco di tutte le VM su un host o cluster e mostrare gli indirizzi IP dove è possibile:
Get-VM | Select Name, @{N=”Indirizzo IP”; E={@($_.guest.IPAddress[0])}}
Lo svantaggio di questo metodo è che a volte l’indirizzo IP viene visualizzato solo parzialmente.
- C’è anche un comando per visualizzare tutti i VM in un cluster (il nome del cluster contiene la stringa “cluster”) e visualizzare gli indirizzi IP dove possibile:
Get-Cluster “*cluster*” | Get-VM | Select Name, Host, @{N=”IP Address”;E={@($_.guest.IPAddress[0])}}Cambia [0] in [1] se vuoi visualizzare il secondo indirizzo IP. Puoi eliminare questi caratteri dal comando per vedere la differenza nei risultati visualizzati.
Identificare il nome del VM tramite indirizzo MAC
Puoi anche utilizzare VMware PowerCLI per identificare il nome di un VM se conosci l’indirizzo MAC di un VM.
- Connetti a un host ESXi o vCenter in VMware PowerCLI. Nel mio esempio, mi connetto all’host ESXi menzionato nell’esempio precedente:
Connect-VIServer 10.10.10.74 -User root - Definisci l’indirizzo MAC del VM e trova il nome di questo VM:
$vmMAC=”00:50:56:84:C4:5F”
Get-VM | Get-NetworkAdapter | Where-Object {$_.MacAddress -eq $vmMAC } | Select-Object Parent,Name,MacAddress - Puoi connetterti all’host ESXi tramite SSH e utilizzare l’interfaccia della riga di comando ESXi per identificare il nome di una VM dal suo indirizzo MAC virtuale.
find /vmfs/volumes | grep .vmx$ | while read i; do grep -i “00:50:56:84:C4:5F” “$i” && echo “$i”; done
Indirizzi MAC delle macchine virtuali negli ambienti VMware
Gli indirizzi MAC non vengono assegnati casualmente. La prima metà di un indirizzo MAC è in genere associata al produttore di hardware o software appropriato.
Gli indirizzi MAC che iniziano con 00:50:56 sono indirizzi MAC VMware che appartengono alle macchine virtuali VMware, come si può vedere nei miei esempi precedenti quando abbiamo identificato gli indirizzi MAC delle VMware VMs.
Ci sono quattro assegnazioni per gli indirizzi MAC VMware: 00:50:56, 00:0C:29, 00:05:69, 00:1C:14. Esaminiamo alcune categorie comuni di intervalli di indirizzi MAC VMware:
- 00:50:56 – VMware Workstation, VMware vSphere, server VMware ESXi
- 00:50:56:80:00:00 – 00:50:56:BF:FF:FF – vCenter, VMware vSphere VMs gestite da vCenter
- 00:0C:29 – Host ESXi autonomi, VMware Horizon, VMware Workstation
- 00:05:69 – VMware ESXi, VMware GSX
- 00:1C:14 – VMware
Gli identificatori univoci dell’organizzazione (OUI) vengono utilizzati come prefissi per gli indirizzi MAC VMware secondo lo schema di allocazione OUI VMware. VMware vCenter e gli host ESXi utilizzano prefissi diversi per gli indirizzi MAC per evitare conflitti di indirizzi MAC in situazioni in cui un host non è collegato a vCenter Server ma può essere collegato a vCenter successivamente. Se un host ESXi è gestito da vCenter, allora vCenter genera indirizzi MAC VMware vSphere per le VM VMware.
Quando un indirizzo MAC per una VM viene impostato manualmente (nelle impostazioni della VM), il prefisso (primi tre ottetti) viene preservato automaticamente. La seconda metà dell’indirizzo MAC può essere personalizzata.
Se desideri impostare manualmente un indirizzo MAC per una VM VMware, utilizza questo modello:
00:50:56:XX:YY:ZZ
- Il valore esadecimale consigliato al posto di XX è un numero compreso tra 00 e 3F.
- I numeri validi per i campi YY e ZZ sono compresi nell’intervallo tra 00 e FF (l’intero intervallo).
Utilizzare queste raccomandazioni ti aiuta a evitare conflitti tra gli indirizzi MAC che hai impostato manualmente con quelli generati automaticamente da VMware vCenter e gli indirizzi MAC assegnati agli adattatori VMkernel. Nota che il valore massimo per un indirizzo MAC VMware che può essere impostato manualmente è 00:50:56:3F:FF:FF se viene utilizzato il prefisso 00:50:56 (OUI). Questo approccio può anche aiutare a identificare gli indirizzi MAC VMware assegnati manualmente e automaticamente. Non dimenticare che tutti gli indirizzi MAC nella rete devono essere univoci.
Calcolo dell’ID univoco di vCenter
Esploriamo altri aspetti dell’identificazione di un indirizzo MAC di VMware vCenter.
Come spiegato sopra, un indirizzo MAC per vCenter viene assegnato dall’intervallo (00:50:56:80:00:00 – 00:50:56:BF:FF:FF) nel formato 00:50:56:XX:YY:ZZ.
In questo caso, il valore XX viene calcolato in base all’ID unico di vCenter.
XX=80+vCenterID
Se conosci l’indirizzo MAC di vCenter, puoi calcolare l’ID unico del server vCenter (può essere 0 a 63).
Esaminiamo un esempio in cui il server vCenter è stato distribuito come VM la cui interfaccia di rete ha un indirizzo MAC VMware:
00:50:56:9B:48:55
Sottrai 80 da 9B (esadecimale). Puoi utilizzare la calcolatrice HEX.
0x9B – 0x80 = 0x1B
Converti il valore HEX in un valore decimale:
0x1B = 27
L’ID unico di vCenter è 27 in questo caso.
Indirizzi MAC VMware per VM su host autonomi
Ora esaminiamo un esempio di generazione di indirizzi MAC per VM su un host ESXi autonomo per capire come vengono generati gli indirizzi MAC delle VM su un host ESXi autonomo e comprendere il principio di generazione. Gli ultimi sei caratteri dell’identificatore univoco universale (UUID) della VM vengono utilizzati per riempire gli ultimi tre ottetti dell’indirizzo MAC VMware della VM. I primi tre ottetti di un indirizzo MAC VMware per una VM creata su un host ESXi autonomo sono 00:0C:29.
Nello screenshot qui sotto, puoi vedere una VM con i parametri:
Indirizzo MAC: 00:0C:29:B0:3E:1D
Nome VM: Windows-VM
Verifichiamo l’UUID della VM e confrontiamo gli ultimi caratteri dell’UUID con l’indirizzo MAC della VM.
Puoi verificare l’UUID di una VM con questo comando in PowerCLI:
Get-VM Windows-VM | %{(Get-View $_.Id).config.uuid}
Nel nostro caso l’UUID è 564df9a2-261e-869e-5a1d-d118abb03e1d
e l’indirizzo MAC è 00:0C:29:B0:3E:1D
Come puoi vedere, la regola funziona.
Conclusione
Puoi controllare un indirizzo MAC e un indirizzo IP di una VM nell’interfaccia grafica di VMware vSphere Client e VMware Host Client. Come alternativa, utilizza la riga di comando di ESXi o PowerCLI per individuare un indirizzo MAC di una VM se conosci il nome della VM. Puoi anche utilizzare VMware PowerCLI per identificare un nome VM se conosci un indirizzo IP o MAC della VM. Conoscere i principi dell’assegnazione degli indirizzi MAC di VMware alle macchine virtuali e ad altre macchine in un’infrastruttura virtuale VMware può aiutarti a identificare le macchine correlate a VMware da altri dispositivi nella rete durante la verifica degli indirizzi MAC dei dispositivi connessi.
Non dimenticare di eseguire il backup delle tue VM in esecuzione in VMware vSphere. Utilizza un software affidabile di backup di VMware ESXi come NAKIVO Backup & Replication per una robusta protezione dei dati. La soluzione supporta backup di VM, backup di server fisici, backup di database e backup di Microsoft 365.
Source:
https://www.nakivo.com/blog/locating-vmware-vms-by-ip-or-mac-address/