Come posso ottenere l'indirizzo IP Bridged di una VM VirtualBox in esecuzione in modalità senza testa?


26

Ho VirtualBox impostato su un server. È stato impostato come VM con bridge e ha un indirizzo IP. Ora funziona in modalità senza testa, iniziata con "VBoxHeadless -s PuppetMaster".

Come posso sapere quale IP utilizza la VM usando VBoxManage?

Risposte:


20

Potrei trovare il mio Headless VB con la combinazione dei seguenti comandi:

# 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

Ma ancora più facile: in Linux, puoi connetterti al VB:

# Default VirtualBox Listening Port: 3389
rdesktop -N hostingserver:3389

Questo comando aprirà una finestra della shell e avrai accesso diretto al Headless VB, dove puoi recuperare il tuo IP Headless VB: ip addr


6

Installa aggiunte guest e (supponendo che Linux sia l'ospite) puoi eseguire quanto segue:

VBoxManage --nologo guestcontrol yourVirtualMachineName execute --image "/sbin/ifconfig"  --username yourUser --password yourPassword --wait-exit --wait-stdout -- -a

1
Il formato è cambiato un po 'adesso, ti servirà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}'

Il comando funziona per una singola macchina virtuale. - Con più filtri VM per nome VM, ad es .:VBoxManage list runningvms | grep vmname | awk ...
mschuett

Oppure possiamo informarci su una specifica VM. ad es.VBoxManage guestproperty get <vm-name> "/VirtualBox/GuestInfo/Net/0/V4/IP" | cut -f2 -d " "
Mohnish,

3

Non sono sicuro che VBoxManage possa fornirti direttamente tali informazioni. Quello che puoi fare è eseguire il comando seguente per vedere la configurazione della scheda di rete.

VBoxManage showvminfo PuppetMaster | egrep ^NIC

Questo se non altro ti fornirà l'indirizzo MAC, permettendoti di scoprire l'indirizzo IP effettivo con altri mezzi.


2
Qualche idea su come ottenere l'IP utilizzando l'indirizzo MAC dalla riga di comando?
Jon Haddad,

2

Puoi ottenerlo direttamente usando questo comando:

VBoxManage list bridgedifs

1

Dal forum virtualbox.org -

VBoxManage guestproperty get <vm-name> "/VirtualBox/GuestInfo/Net/0/V4/IP" | cut -f2 -d " "

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.