Em uma grande infraestrutura VMware vSphere, você pode apenas conhecer o endereço IP de uma VM e precisar do nome ou vice-versa. Por exemplo, você pode ter o endereço IP com acesso remoto a um sistema operacional convidado via SSH ou Protocolo de Desktop Remoto (RDP), mas precisar do nome da VM para localizar essa VM em um host ESXi para configuração, migração ou backup. Você pode realizar essas operações com o vSphere, mas não com um sistema operacional convidado.
Também pode ser necessário identificar um endereço MAC de um adaptador de rede virtual que uma VM usa. Neste post do blog, explicamos como encontrar o endereço IP ou MAC de uma máquina virtual e como descobrir o nome de uma VM quando você conhece o endereço IP ou MAC.
Verificando um Endereço IP no Cliente VMware vSphere
A maneira mais direta de verificar o endereço IP de uma VM no VMware vSphere é usar o Cliente VMware vSphere.
- Em um navegador da web, insira o endereço IP do seu servidor vCenter na barra de endereço, abra o Cliente vSphere e insira suas credenciais para fazer login.
- Vá para Hosts e Clusters, selecione a VM necessária pelo nome e verifique a guia Resumo. Os endereços IP da VMware da máquina virtual são exibidos na seção Endereços IP. Uma VM pode ter vários adaptadores de rede virtual e vários endereços IP.
- Clique em Ver todos os N endereços IP para exibir todos os endereços IP usados pela VM.
- Na captura de tela abaixo, você pode ver um endereço IPv4 e um endereço IPv6 usados por uma VM do VMware. O VMware Tools deve estar instalado em um sistema operacional convidado (SO) para visualizar os endereços IP na interface web do VMware vSphere Client. A VM deve estar ligada.
Verificando um endereço MAC no vSphere Client
A VM’s MAC address can be used for network diagnostics and other purposes.
- Para verificar o endereço MAC, clique com o botão direito do mouse no nome da VM no painel Navegador do VMware vSphere Client e, no menu de contexto, clique em Editar Configurações.
- Na guia Hardware Virtual da janela Editar Configurações, clique no nome do adaptador de rede para verificar o endereço MAC do adaptador de rede virtual usado pela VM.
Verificando o endereço IP de uma VM no VMware Host Client
Se estiver usando um host ESXi autônomo sem o VMware vCenter, você não pode usar o Cliente VMware vSphere para gerenciar o ambiente virtual. Isso ocorre quando você usa a Edição Gratuita do ESXi em um servidor. Nessa situação, você pode usar o Cliente Host VMware para gerenciar um host ESXi em uma interface web.
- Insira o endereço IP do seu host ESXi na barra de endereço do seu navegador da web e insira um nome de usuário e senha da conta de administrador do ESXi.
- No painel Navegador, clique em Máquinas Virtuais e selecione a VM com o endereço IP que precisa ser identificado. Assim como ao identificar o endereço IP do VMware de uma VM no Cliente vSphere, a VM deve estar iniciada e as VMware Tools devem estar instaladas no sistema operacional convidado.
- Na página com as informações da VM, localize a seção com Informações Gerais e clique em Rede para expandir o painel e visualizar os endereços IP usados pela VM.
Verificando o Endereço MAC de uma VM no Cliente Host VMware
- Para verificar o endereço MAC de uma VM no Cliente Host VMware, selecione a VM como faria ao verificar o endereço IP.
Role a página para baixo até a seção de Configuração de Hardware na interface web. - Role até a seção de Configuração de Hardware na interface da web.
- Clique no adaptador de rede VM necessário para expandir as opções e encontrar o endereço MAC do adaptador de rede virtual correspondente.
Nota: Neste exemplo, estamos usando um host ESXi gerenciado pelo vCenter Server, mas estamos conectados ao Cliente do Host VMware. As VMs foram criadas no vCenter.
A pesquisa de VM no VMware vSphere permite que você encontre uma VM pelo nome, mas não pelo endereço IP ou endereço MAC.
Identificando o Nome da VM pelo Endereço IP
Você pode identificar o nome da VM se souber o endereço IP usando vSphere PowerCLI.
- Conecte-se a um host ESXi ou vCenter e insira o nome de usuário e senha da conta administrativa:
Connect-VIServer ESXi_or_vCenter_IP -User root - No nosso caso, conectamos ao host ESXi gerenciado pelo vCenter Server com o comando:
Connect-VIServer 10.10.10.74 -User root - O comando mais simples para exibir uma VM que possui o endereço IP definido é:
Get-VM * | where-object{$_.Guest.IPAddress -match “192.168.17.137”}Onde 192.168.17.137 é o endereço IP da VM a ser identificada.
Há outro método para identificar um nome de VM se você conhece o endereço IP de uma VM no PowerCLI. Nesse caso, você deve executar dois comandos.
- Defina o endereço IP da VM a ser identificada:
$vmIP=”192.168.17.137″ - Obtenha informações sobre a VM:
Get-VM * |where-object{$_.Guest.IPAddress -eq $vmIP}|select Name, VMHost, PowerState,GuestId,@{N=”Endereço IP”;E={@($_.guest.IPAddress[0])}}|ft - Se você conhece parte do endereço IP, pode exibir todas as VMs com endereços IP que correspondem ao padrão de pesquisa.
$vmIP=”192.168.”
Get-VM * |where-object{$_.Guest.IPAddress -match $vmIP}|select Name, VMHost, PowerState,@{N=”Endereço IP”;E={@($_.guest.IPAddress[0])}} ,@{N=”SO”;E={$_.Guest.OSFullName}},@{N=”Hostname”;E={$_.Guest.HostName}}|ft - Aqui está um comando para obter uma lista de todas as VMs em um host ou cluster e mostrar os endereços IP, quando possível:
Get-VM | Select Name, @{N=”Endereço IP”;E={@($_.guest.IPAddress[0])}}
A desvantagem desse método é que às vezes o endereço IP é exibido apenas parcialmente.
- Também há um comando para visualizar todas as VMs em um cluster (o nome do cluster contém a string “cluster”) e exibir endereços IP, quando possível:
Get-Cluster “*cluster*” | Get-VM | Select Name, Host, @{N=”IP Address”;E={@($_.guest.IPAddress[0])}}Altere [0] para [1] se você deseja exibir o segundo endereço IP. Você pode excluir esses caracteres do comando para ver a diferença nos resultados exibidos.
Identificando o Nome da VM pelo Endereço MAC
Você também pode usar o VMware PowerCLI para identificar o nome de uma VM se você conhecer o endereço MAC de uma VM.
- Conecte-se a um host ESXi ou vCenter no VMware PowerCLI. No meu exemplo, eu me conecto ao host ESXi mencionado no exemplo anterior:
Connect-VIServer 10.10.10.74 -User root - Defina o endereço MAC da máquina virtual e encontre o nome dessa VM:
$vmMAC=”00:50:56:84:C4:5F”
Get-VM | Get-NetworkAdapter | Where-Object {$_.MacAddress -eq $vmMAC } | Select-Object Parent,Name,MacAddress - Você pode se conectar ao host ESXi via SSH e usar a interface de linha de comando do ESXi para identificar um nome de VM pelo seu endereço MAC da máquina virtual.
find /vmfs/volumes | grep .vmx$ | while read i; do grep -i “00:50:56:84:C4:5F” “$i” && echo “$i”; done
Endereços MAC das Máquinas Virtuais em Ambientes VMware
Os endereços MAC não são atribuídos aleatoriamente. A primeira metade de um endereço MAC geralmente está associada ao fabricante de hardware ou software apropriado.
Os endereços MAC que começam com 00:50:56 são endereços MAC da VMware que pertencem às máquinas virtuais VMware, como pode ser visto nos exemplos anteriores quando identificamos os endereços MAC das VMs VMware.
Existem quatro atribuições para os endereços MAC da VMware: 00:50:56, 00:0C:29, 00:05:69, 00:1C:14. Vamos ver algumas categorias comuns de intervalos de endereços MAC da VMware:
- 00:50:56 – VMware Workstation, VMware vSphere, servidor VMware ESXi
- 00:50:56:80:00:00 – 00:50:56:BF:FF:FF – vCenter, VMs VMware vSphere gerenciadas pelo vCenter
- 00:0C:29 – Hosts ESXi autônomos, VMware Horizon, VMware Workstation
- 00:05:69 – VMware ESXi, VMware GSX
- 00:1C:14 – VMware
Os Identificadores Únicos de Organização (OUI) são usados como prefixos para endereços MAC da VMware de acordo com o esquema de alocação de OUI da VMware. O VMware vCenter e os hosts ESXi usam prefixos diferentes para endereços MAC para evitar conflitos de endereços MAC em situações em que um host não está conectado ao vCenter Server, mas pode ser conectado ao vCenter posteriormente. Se um host ESXi é gerenciado pelo vCenter, então o vCenter gera endereços MAC do VMware vSphere para as VMs da VMware.
Quando um endereço MAC para uma VM é definido manualmente (nas configurações da VM), o prefixo (primeiros três octetos) é preservado automaticamente. A segunda metade do endereço MAC pode ser personalizada.
Se você deseja definir manualmente um endereço MAC para uma VM da VMware, utilize este modelo:
00:50:56:XX:YY:ZZ
- O valor hexadecimal recomendado em vez de XX é um número entre 00 e 3F.
- Os números válidos para os campos YY e ZZ estão no intervalo entre 00 e FF (o intervalo completo).
O uso dessas recomendações ajuda a evitar conflitos entre os endereços MAC que você definiu manualmente com aqueles endereços MAC da VMware gerados automaticamente pelo VMware vCenter e endereços MAC atribuídos aos adaptadores VMkernel. Observe que o valor máximo para um endereço MAC da VMware que pode ser definido manualmente é 00:50:56:3F:FF:FF se o prefixo 00:50:56 (OUI) for usado. Essa abordagem também pode ajudar a identificar endereços MAC da VMware atribuídos manualmente e automaticamente. Não se esqueça de que todos os endereços MAC na rede devem ser únicos.
Cálculo do ID exclusivo do vCenter
Vamos explorar outros aspectos de identificação de um endereço MAC do VMware vCenter.
Como explicado acima, um endereço MAC para o vCenter é atribuído na faixa (00:50:56:80:00:00 – 00:50:56:BF:FF:FF) no formato 00:50:56:XX:YY:ZZ.
Neste caso, o valor XX é calculado com base no ID único do vCenter.
XX=80+vCenterID
Se você conhece o endereço MAC do vCenter, pode calcular o ID Único do Servidor vCenter (pode ser de 0 a 63).
Vamos ver um exemplo em que o Servidor vCenter é implantado como uma VM cuja interface de rede tem um endereço MAC do VMware:
00:50:56:9B:48:55
Subtraia 80 de 9B (hexadecimal). Você pode usar a calculadora HEX.
0x9B – 0x80 = 0x1B
Converta o valor HEX em um valor decimal:
0x1B = 27
O ID Único do vCenter é 27 neste caso.
Endereços MAC do VMware para VMs em hosts autônomos
Agora vamos ver um exemplo de geração de endereço MAC para VMs em um host ESXi autônomo para entender como os endereços MAC das VMs são gerados em um host ESXi autônomo e compreender o princípio de geração. Os últimos seis caracteres do identificador universalmente único (UUID) da VM são usados para preencher os três últimos octetos do endereço MAC do VMware da VM. Os três primeiros octetos de um endereço MAC do VMware para uma VM criada em um host ESXi autônomo são 00:0C:29.
Na captura de tela abaixo, você pode ver uma VM com os parâmetros:
Endereço MAC: 00:0C:29:B0:3E:1D
Nome da VM: Windows-VM
Vamos verificar o UUID da VM e comparar os últimos caracteres do UUID com o endereço MAC da VM.
Você pode verificar o UUID de uma VM com este comando no PowerCLI:
Get-VM Windows-VM | %{(Get-View $_.Id).config.uuid}
No nosso caso, o UUID é 564df9a2-261e-869e-5a1d-d118abb03e1d
e o endereço MAC é 00:0C:29:B0:3E:1D
Como você pode ver, a regra funciona.
Conclusão
Você pode verificar um endereço MAC e um endereço IP de uma VM na interface gráfica do usuário do VMware vSphere Client e do VMware Host Client. Como alternativa, use a linha de comando do ESXi ou o PowerCLI para detectar um endereço MAC de uma VM se você souber o nome da VM. Você também pode usar o VMware PowerCLI para identificar um nome de VM se souber o IP ou o endereço MAC de uma VM. Conhecer os princípios de atribuição de endereços MAC da VMware a máquinas virtuais e outras máquinas em uma infraestrutura virtual da VMware pode ajudá-lo a identificar máquinas relacionadas à VMware de outros dispositivos na rede ao verificar os endereços MAC dos dispositivos conectados.
Não se esqueça de fazer backup de suas VMs em execução no VMware vSphere. Use um software de backup confiável do VMware ESXi como o NAKIVO Backup & Replication para uma proteção robusta de dados. A solução suporta backups de VMs, backup de servidores físicos, backup de banco de dados e backup do Microsoft 365.
Source:
https://www.nakivo.com/blog/locating-vmware-vms-by-ip-or-mac-address/