web-dev-qa-db-fra.com

Comment puis-je accéder à Apache (sur un invité VirtualBox) à partir de l'hôte?

J'ai installé Apache sur une machine virtuelle Ubuntu. Quand je vais dans l'invité et charge Firefox, je peux voir qu'Apache fonctionne bien lorsque je navigue sur localhost.

Je voudrais accéder à cette même page par le biais de l'hôte. J'ai essayé d'utiliser l'adresse IP de l'invité mais rien ne se présente.

Idéalement, j'aimerais configurer Windows 7 (hôte) pour demander http://guestserver.com du serveur Apache sur l'invité. Comment puis-je faire ceci?

139
urok93

Si vous avez besoin que d'autres machines de votre réseau physique puissent atteindre votre VM (ou si la VM a besoin d'un accès à Internet), utilisez un réseau ponté. Sinon, restez sur le réseau uniquement hôte.

  1. Arrêtez votre VM et ouvrez ses paramètres dans le VirtualBox (OSE) Manager
  2. Allez dans l'onglet Résea
  3. Sélectionnez le mode réseau de votre choix (réseau ponté ou hôte uniquement) (dans l'exemple ci-dessous, j'utilise uniquement un hôte)

    Si vous souhaitez utiliser un réseau ponté, vous devez sélectionner la carte réseau appropriée à l'emplacement Nom. Pour les connexions filaires, vous devez sélectionner un nom nommé eth0. Les connexions sans fil sont généralement nommées wlan0 (les nombres peuvent varier)

  4. Enregistrer les paramètres
  5. Démarrer la machine virtuelle Ubuntu
  6. Lorsque vous êtes opérationnel, vous pouvez collecter l'adresse IP en exécutant:

    ifconfig | grep addr
    

    Dans la sortie ci-dessous, 192.168.56.101 est l'adresse IP qui peut être utilisée dans votre système hôte Win7 pour accéder à votre machine virtuelle:

    eth0  Link encap:Ethernet  HWaddr 08:00:27:70:27:fe  
          inet addr:192.168.56.101  Bcast:192.168.56.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe7b:25fe/64 Scope:Link
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
    
  7. Dans votre système hôte Windows, éditez C:\Windows\System32\drivers\etc\hosts en tant qu'administrateur et ajoutez une ligne:

    192.168.56.101   guestserver.com
    

    Si vous avez un système hôte Ubuntu, éditez /etc/hosts en utilisant Sudo nano /etc/hosts

  8. Profit!
153
Lekensteyn

Dans mon cas, j'ai un routeur qui attribue une adresse IP statique à mon ordinateur hôte.

  1. Définissez la carte réseau en tant que pont:

    Paramètres> Réseau> Adaptateur 1 ( Activer la carte réseau )> Connecté à: ( Adaptateur de pont )> OK

  2. Démarrer la machine virtuelle> se connecter

  3. Changer l'IP de VirtualMachine de dynamique à statique

    Sudo nano/etc/network/interfaces

  4. Sous L'interface réseau principale, modifiez Word dhcp en statique et entrez votre nouvelle adresse IP statique ou commentez la ligne et ajoutez une nouvelle.

:

#iface eth0 inet dhcp
iface eth0 inet static
        address 192.168.10.110
        netmask 255.255.255.0
        gateway 192.168.10.1
        network 192.168.10.0
        broadcast 192.168.10.255

Remarquez que mon routeur fonctionne à xxx.xxx .1. X et le vôtre pourrait être à xxx.xxx .. X ou xxx.xxx .1. x ou autre.

Ensuite, vous pouvez avoir une connexion Internet dans les ordinateurs hôte et invité et taper cette adresse IP statique dans votre navigateur Web pour vérifier votre serveur Apache.

13
Nuc134rB0t

Au lieu d'essayer de définir les adaptateurs sur Adaptateur réseau ponté ou sur hôte uniquement, vous pouvez essayer la redirection de port sous Pare-feu/Autres ports, votre port no étant défini sur les connexions TCP et UDP.

8
sp123

La réponse acceptée ne fonctionnait pas pour moi (j’ai installé virutalbox dans ubuntu 12.04 LTS et dans virtualbox j’ai installé ubuntu 14.04 LTS Server). Je viens d’échanger les paramètres réseau pour Adapter1 et Adapter2, c’est-à-dire configurer Adapter1 pour "réseau ponté" et Adapter2 pour "NAT" et cela a commencé à fonctionner.

5
Gaurav Pandey

Si vous n'avez besoin que d'un port spécifique (par exemple, si vous utilisez une application Web telle que Jetty ou Tomcat), faites simplement:

Paramètres -> Réseau -> Définissez l'un des adaptateurs comme suit: NAT -> Appuyez sur 'Transfert de port' -> Définissez les ports hôte et invité appropriés.

Une fois que vous enregistrez, vous pouvez simplement passer de votre machine locale à localhost: hostport et il sera redirigé vers le port correspondant à la boîte virtuelle et vous avez terminé.

4

Si vous ne pouvez pas vous connecter via ip, vous ne rencontrerez probablement pas de noms DNS sur une installation Apache par défaut.

vérifiez les paramètres réseau de l'hôte virtuel, je le mets toujours en pont, il est accessible sur tout le réseau.

4
PvdL

En mode ponté, si votre hôte utilise une adresse IP statique, vous devez configurer manuellement votre IP invité dans la même plage que celle de l'hôte. Sinon, l'invité ne se verra pas attribuer automatiquement une adresse IP valide. HTH.

3
platinor

Si vous devez accéder à un invité dont l'adresse IP est différente en raison de l'utilisation de DHCP, je vous suggère d'accéder via son nom d'hôte. Cependant, l'accès via l'hôte lorsque l'hôte est Windows peut nécessiter un outil supplémentaire.

Le texte suivant a été copié de mon propre réponse à superutilisateur.com. :

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

Ubuntu utilise cela 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, celui-ci existe probablement déjà via un service appelé Bonjour. Toutefois, si ce n’est pas déjà installé, une petite version de Bonjour est disponible au téléchargement ici: Services d’impression Bonjour . 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. Ainsi, si votre nom d'hôte est "dev.myapp.com", le nom d'hôte réel sera "dev.myapp.com.local".

2
Spiralis

La réponse de Lekensteyn est juste. Mais si vous êtes dans un environnement d'entreprise, vous devrez peut-être désactiver le serveur proxy pour l'adresse IP de votre invité. Par exemple, si vous utilisez Mozilla Firefox sur votre ordinateur hôte et que vous essayez d'accéder à 192.168.56.101/ sur l'invité, vous devez accéder à Outils-> Options-> Avancé-> Réseau-> Paramètres de Firefox et utiliser "Non Proxy "ou" Pas de proxy pour -> 192.168.56.101 ".

2
SpaceRook