J'exécute mon instance Ubuntu depuis Virtual Box en arrière-plan à l'aide de la commande suivante:
VBoxManage startvm ${VM_NAME} --type headless
La principale différence entre cela et son exécution via l'interface graphique est que, lorsque je suis dans l'interface graphique après son démarrage, je peux vérifier ifconfig
quelle est l'adresse IP afin que je puisse y ssh
entrer depuis mon terminal sur l'hôte et, évidemment , je peux '' t faire cela en arrière-plan.
En supposant une attribution dynamique des adresses IP sur le réseau, existe-t-il un moyen d'extraire l'adresse IP attribuée à l'instance nouvellement créée à des fins ssh OU y a-t-il un moyen de s'y connecter sans connaître l'IP (par exemple via un port de porte dérobée sur l'hôte) )?
la source
VBoxManage guestproperty get <vmname> "/VirtualBox/GuestInfo/Net/0/V4/IP"
.Tout d'abord, assurez-vous d'avoir installé VirtualBox Extension Pack ou installez-le sinon.
Par exemple (pour Ubuntu)
ou de
https://www.virtualbox.org/wiki/Downloads
Après cela, vous pouvez obtenir l'IP de VM
la source
Je sais que je suis en retard à cette fête, mais cela fonctionnera avec VirtualBox 5.0.6.
Cela utilise VBoxManage pour récupérer une liste de machines virtuelles en cours d'exécution, interroge leurs propriétés dans une boucle et affiche les adresses IP d'une manière jolie.
la source
Vous pouvez consulter la table DHCP dans le routeur, avant le démarrage et après et les comparer. Si le routeur affiche le nom de l'ordinateur, cela le rend bien sûr beaucoup plus facile. Ce n'est peut-être pas une solution sophistiquée, mais cela fonctionne.
La plupart des routeurs attribuent des adresses dynamiques, mais ils continuent de donner à une machine ou une machine virtuelle (le routeur ne connaît pas la différence) la même IP la plupart du temps. Si vous copiez une VM dans Virtualbox, vous pouvez choisir de définir une nouvelle adresse MAC, qui est la façon dont le routeur identifie la VM.
la source
J'ai eu une tâche similaire en python. Ce serait probablement utile.
puis en python:
la source
J'ai utilisé l'option controlvm pour démarrer une trace de paquet sur le NIC actif de l'invité et j'ai ouvert le fichier local avec Wireshark. L'adresse IP des invités sera là-dedans.
N'oubliez pas de désactiver la trace lorsque vous avez terminé.
la source
la source