Tengo VirtualBox configurado en un servidor. Se configuró como una VM en puente y tiene una dirección IP. Ahora se ejecuta en modo sin cabeza, comenzó con "VBoxHeadless -s PuppetMaster".
¿Cómo puedo averiguar qué IP está usando la VM VBoxManage?
Tengo VirtualBox configurado en un servidor. Se configuró como una VM en puente y tiene una dirección IP. Ahora se ejecuta en modo sin cabeza, comenzó con "VBoxHeadless -s PuppetMaster".
¿Cómo puedo averiguar qué IP está usando la VM VBoxManage?
Respuestas:
Podría encontrar mi Headless VB con la combinación de los siguientes comandos:
# Update arp table
for i in {1..254}; do ping -c 1 192.168.178.$i & done
# Find vm name
VBoxManage list runningvms
# Find MAC: subsitute vmname with your vm's name
VBoxManage showvminfo vmname
# Find IP: substitute vname-mac-addr with your vm's mac address in ':' notation
arp -a | grep vmname-mac-addr
Pero aún más fácil: en Linux, puede conectarse a VB:
# Default VirtualBox Listening Port: 3389
rdesktop -N hostingserver:3389
Este comando abrirá una ventana de shell y tendrá acceso directo a Headless VB, donde puede recuperar su IP de Headless VB: ip addr
Instale adiciones de invitados y (suponiendo que Linux es el invitado) puede ejecutar lo siguiente:
VBoxManage --nologo guestcontrol yourVirtualMachineName execute --image "/sbin/ifconfig" --username yourUser --password yourPassword --wait-exit --wait-stdout -- -a
VBoxManage guestproperty enumerate {`VBoxManage list runningvms | awk -F"{" '{print $2}'` | grep IP | awk -F"," '{print $2}' | awk '{print $2}'
VBoxManage list runningvms | grep vmname | awk ...
VBoxManage guestproperty get <vm-name> "/VirtualBox/GuestInfo/Net/0/V4/IP" | cut -f2 -d " "
No estoy seguro si VBoxManage puede darle esa información directamente. Lo que puede hacer es ejecutar el siguiente comando para ver la configuración de la tarjeta de red.
VBoxManage showvminfo PuppetMaster | egrep ^NIC
Eso, si nada más, le proporcionará la dirección MAC, lo que le permitirá averiguar la dirección IP real por otros medios.
Del foro virtualbox.org -
VBoxManage guestproperty get <vm-name> "/VirtualBox/GuestInfo/Net/0/V4/IP" | cut -f2 -d " "
VBoxManage --nologo guestcontrol yourVirtualMachineName --username yourUser --password yourPassword run -- /sbin/ifconfig -a