Virtualbox sur Ubuntu Host: Accédez aux invités par nom d'hôte

10

J'ai plusieurs appliances VirtualBox (Windows, Linux) chacune configurée avec deux adaptateurs réseau:

  • NAT pour accéder à Internet
  • hôte uniquement pour les hôtes <> hôtes et hôtes <> communication avec les invités

Le problème est que je ne peux communiquer que par adresse IP. Je veux communiquer par nom d'hôte, c'est-à-dire. Je veux être en mesure d'atteindre n'importe quel hôte à partir de tout autre hôte (ou invité) en utilisant le nom d'hôte. Est-ce possible?

J'ai déjà un adaptateur hôte uniquement ( vboxnet0 ) sur la machine hôte, et la mise en réseau est très bien, mais je voudrais éviter d'attribuer des adresses IP statiques à chaque appliance.

Miguel Ping
la source

Réponses:

3

Je vous suggère d'utiliser le DNS multidiffusion pour résoudre ce problème.

Ubuntu l'utilise par défaut via Avahi .

L'hôte Windows a besoin d'un client Avahi pour pouvoir découvrir d'autres services Avahi. Si votre hôte utilise déjà un logiciel Apple, il est probablement déjà disponible via un service appelé Bonjour. Cependant, si ce n'est pas déjà installé, une petite version de Bonjour est disponible en téléchargement ici: Bonjour Print Services . Après l'installation, vous devriez pouvoir accéder à votre invité via .local.

Remarque: Le système mDNS semble utiliser le suffixe .local par défaut. Donc, si votre nom d'hôte est "dev.myapp.com", alors le nom d'hôte réel sera "dev.myapp.com.local".

Copié de ma propre réponse sur superuser.com.

Spiralis
la source
2
mDNS est en effet un bon moyen d'aller ici. Je voulais souligner cette réponse Ubuntu que j'ai publiée sur UL: Détecter l'adresse d'une autre machine dans le lien local?
gertvdijk
2

Selon le manuel (légèrement sur un sujet différent ):

il n'y a pas de résolveur DNS pour les réseaux internes

Par conséquent, vous devrez en installer un dans l'un de vos hôtes virtuels.

Connexes: VB Forum

lgarzo
la source
Cela ne fonctionnera pas car l'hôte VBox agit comme un serveur DHCP et le serveur DNS virtuel ne pourra pas non plus résoudre les noms. Je pense que les adresses IP statiques sont le seul moyen de le faire.
StarNamer
Je sais que je peux désactiver le serveur DHCP de VBox, alors c'est peut-être possible.
Miguel Ping
@StarNamer Vous avez absolument raison, le serveur DNS ne résoudra pas les problèmes causés par le serveur DHCP en VB. Cependant, bien que ce ne soit pas pratique, le serveur DNS peut être configuré pour utiliser les adresses actuellement attribuées, mais cela ne ferait pas mieux que de modifier des /etc/hostsfichiers. Ce que @Miguel peut faire est de désactiver le serveur DHCP VB et d'en installer un sur une machine virtuelle. Je vous suggère de consulter le Guide du serveur Ubuntu sous Networking and Domain Name Service (DNS).
lgarzo
@Igarzo Cela pourrait fonctionner. Je suggère en fait quelque chose comme dnsmasqun serveur DNS et DHCP combiné. La question est de savoir où le mettre; si c'est sur une des machines virtuelles invitées, alors celle-ci devient spéciale et je ne suis pas sûr qu'il soit facile de mettre un serveur DHCP sur l'hôte et de le faire servir les invités. Je ne l'ai jamais essayé.
StarNamer du
@StarNamer Je ne pense pas qu'un serveur DHCP hôte puisse servir les hôtes du réseau interne. Les hôtes du réseau interne VB ne communiquent pas avec le monde extérieur, autres que les hôtes connectés au même réseau interne. Dnsmasqressemble cependant à un bon choix. J'ai tendance à suggérer des solutions Ubuntu Server Guide, par sécurité.
lgarzo
1

Vous avez besoin d'un serveur DNS pour convertir l'ip en un nom d'hôte et vice versa et malheureusement ce n'est pas pris en charge dans Vbox


la source
0

POUR PERMETTRE À D'AUTRES (CLIENT WINDOWS, CLIENTS LINUX CONFIGURÉS) D'ATTEINDRE VOTRE HÔTE PAR NOM D'HÔTE:

  • Installer / configurer / démarrer le service nmbd , fourni par samba .

    nmbd - Serveur de noms NetBIOS pour fournir des services de dénomination NetBIOS sur IP aux clients

POUR PERMETTRE À VOTRE HÔTE DE COMMUNIQUER AVEC D'AUTRES (CLIENTS WINDOWS, CLIENTS LINUX CONFIGURÉS) PAR NOM D'HÔTE:

  • Éditer /etc/nsswitch.conf

Changer la ligne

hosts: files dns

à

hosts: files dns wins
  • installer winbind

    apt-get install winbind

Marco Rossi
la source