¿Cómo puedo obtener la dirección IP en puente de una VM VirtualBox que se ejecuta en modo sin cabeza?


26

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:


20

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


6

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

1
El formato ha cambiado un poco ahora, lo necesitaráVBoxManage --nologo guestcontrol yourVirtualMachineName --username yourUser --password yourPassword run -- /sbin/ifconfig -a
mike.dld

4
VBoxManage guestproperty enumerate {`VBoxManage list runningvms | awk -F"{" '{print $2}'` | grep IP | awk -F"," '{print $2}' | awk '{print $2}'

El comando funciona para una sola VM. - Con múltiples filtros de VM por nombre de VM, por ejemplo:VBoxManage list runningvms | grep vmname | awk ...
mschuett

O podemos preguntar sobre una máquina virtual específica. Por ejemploVBoxManage guestproperty get <vm-name> "/VirtualBox/GuestInfo/Net/0/V4/IP" | cut -f2 -d " "
Mohnish

3

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.


2
¿Alguna idea sobre cómo obtener la IP utilizando la dirección MAC de la línea de comando?
Jon Haddad

2

Puede obtenerlo directamente con este comando:

VBoxManage list bridgedifs

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.