Instalei o Ubuntu Desktop 14.04 (Trusty) em um cliente VirtualBox (conexão de rede em ponte, Guest Additions instalado). Às vezes, executo o cliente no modo sem cabeça (em vez de usar a GUI do VirtualBox) e o acesso via SSH. Para iniciar um cliente desse tipo e obter seu endereço de rede, normalmente:
nohup VBoxHeadless --startvm <VM_NAME> & #start as background process
#wait a bit for it to start up
VBoxManage guestproperty get <VM_NAME> "/VirtualBox/GuestInfo/Net/0/V4/IP"
Isso funciona para a maioria dos clientes (Debian, Windows, não me lembro se funcionou para o meu cliente Ubuntu 13.10). Se isso falhar, posso solicitar todos os detalhes, mas mesmo aqui o endereço de rede não aparece.
VBoxManage guestproperty enumerate <VM_NAME>
As minhas propriedades do cliente 14.04 são as seguintes:
Name: /VirtualBox/GuestInfo/OS/Product, value: Linux, timestamp: 1402485749624026000, flags:
Name: /VirtualBox/HostInfo/GUI/LanguageID, value: en_US, timestamp: 1402652779530499000, flags:
Name: /VirtualBox/HostInfo/VBoxVerExt, value: 4.3.12, timestamp: 1402652779119725000, flags: TRANSIENT, RDONLYGUEST
Name: /VirtualBox/GuestAdd/Vbgl/Video/SavedMode, value: 1366x722x32, timestamp: 1402485750186131000, flags:
Name: /VirtualBox/GuestInfo/OS/Version, value: #53-Ubuntu SMP Wed Jun 4 21:02:19 UTC 2014, timestamp: 1402485749625558000, flags:
Name: /VirtualBox/GuestAdd/VersionExt, value: 4.3.12, timestamp: 1402485749627827000, flags:
Name: /VirtualBox/GuestAdd/Revision, value: 93733, timestamp: 1402485749628338000, flags:
Name: /VirtualBox/HostGuest/SysprepExec, value: , timestamp: 1402652779118360000, flags: TRANSIENT, RDONLYGUEST
Name: /VirtualBox/HostGuest/SysprepArgs, value: , timestamp: 1402652779118595000, flags: TRANSIENT, RDONLYGUEST
Name: /VirtualBox/GuestAdd/Version, value: 4.3.12, timestamp: 1402485749627214000, flags:
Name: /VirtualBox/HostInfo/VBoxRev, value: 93733, timestamp: 1402652779119840000, flags: TRANSIENT, RDONLYGUEST
Name: /VirtualBox/HostInfo/VBoxVer, value: 4.3.12, timestamp: 1402652779119633000, flags: TRANSIENT, RDONLYGUEST
Name: /VirtualBox/GuestInfo/OS/Release, value: 3.13.0-29-generic, timestamp: 1402485749624971000, flags:
Name: /VirtualBox/GuestAdd/HostVerLastChecked, value: 4.3.12, timestamp: 1402485781945719000, flags:
Minha solução é iniciar o cliente com a GUI do VBox, efetuar login e digitar ifconfig
para obter o endereço, encerrá-lo e iniciá-lo novamente sem cabeça, mas prefiro evitar isso. Como posso obter o endereço de rede de um cliente Trusty VirtualBox sem cabeça?