Question VirtualBox invité OS accédant au serveur local sur le système d'exploitation hôte


Sur mon hôte Ubuntu, j'ai mon serveur Web local. J'ai installé VirtualBox et Debian en tant qu'invité.

Je voudrais que l'invité Debian soit capable de frapper mon serveur web en cours d'exécution sur mon hôte Ubuntu (par exemple, je tape juste http://localhost:8080/ dans le navigateur sous Debian).

Comment cela peut-il être fait?


93
2018-05-22 09:55


origine




Réponses:


Activer un adaptateur réseau. Réglez-le sur NAT et démarrez votre machine. Pas besoin de configurer quoi que ce soit.

Sur le type de navigateur de la machine invité http://10.0.2.2 qui vous montrera le même contenu que "localhost" dans l'OS hôte.

10.0.2.2 est la "passerelle par défaut" pour les connexions NAT et l'IP de votre OS invité est 10.0.2.15

Bien sûr, vous pouvez définir un "HOST-ONLY" ou un "Internal Network" qui vous permettra une autre configuration avancée. Je recommande de rester avec NAT.

Prendre plaisir

M.


153
2018-05-25 06:33



OK merci! Ça a marché! Merci beaucoup! C'était le moyen le plus simple pour moi car je suis débutant et que je ne peux pas saisir efficacement des solutions plus avancées. - Maxim
Merci pour cette réponse. Cela m'a permis de sortir du lot. - kingkool68
"Activer un adaptateur de réseau". Où est-ce fait? - jshen
Remarque: Si vous avez configuré des hôtes virtuels basés sur des noms dans Apache sur votre ordinateur hôte, vous pouvez y accéder en créant simplement un mappage dans le fichier hôte des ordinateurs de l'invité. 10.0.2.2 yourvirtualhostname.local (or whatever) - User
@ ТомицаКораћ ça marche. Par exemple voir: askubuntu.com/questions/36183/... Cependant, vous devriez probablement ouvrir une question distincte pour que cela soit résolu. - User


Un autre point à prendre en compte lorsque vous utilisez l’adresse IP de 10.0.2.2 est que si vous utilisez MAMP par exemple, ajoutez le numéro de port: 8888 pour que l’adresse complète http://10.0.2.2:8888


5
2018-02-11 11:00





Le moyen le plus simple de permettre un accès ininterrompu à votre ordinateur VirtualBox Guest est de définir le périphérique réseau comme un «pont» vers votre eth0 sur votre réseau local.

La machine Invité prend une IP LAN via DHCP de votre routeur.


3
2018-05-25 06:09



Pour clarifier: Ceci est un paramètre dans l'application client. Cela a fonctionné pour moi, il m'a fallu un certain temps pour le réaliser, car IE était trop stupide pour supposer que je voulais une connexion HTTP lorsque je tapais une adresse IP et un port dans la barre d'adresse. - Michael Scheper


Ce que j'ai trouvé corrigé pour moi, c'était de m'assurer que l'adaptateur Windows VirtualHost-Only était défini sur l'adresse .1 pour la plage ip afin que mon adaptateur d'hôte virtuel soit 192.168.58.20 mais que l'IP pour l'adaptateur Windows soit 192.168. 58,1


2
2018-02-22 15:17





Si la solution par @Melvyn ne fonctionne pas, vous pouvez également configurer votre carte réseau pour qu'elle soit pontée.
Aller à Settings -> Network -> puis change Attached to vers un adaptateur ponté.

enter image description here

Vous devriez être capable d'appeler le parent par son nom d'hôte ou son adresse IP externe, vous pouvez l'obtenir en allant à l'invite de commande et en tapant ipconfig /all enter image description here

enter image description here

Mettre à jour Si vous déboguez avec Visual Studio et utilisez IIS Express.

aller à C:\Users\[uesername]\Documents\IISExpress\config\applicationhost.config

trouvez votre site dans <configuration>/<system.applicationHost>/<sites>/<site>  (nom peut être trompeur essayez de vérifier l'emplacement sur le disque dans physicalPath attribut)

puis ajouter dans <bindings> section nouvelle liaison

<bindings>
    <binding protocol="http" bindingInformation="*:50766:localhost" />
    <binding protocol="http" bindingInformation="*:50766:48qzr12" />
</bindings>

où liaisonInformation est *:[port]:[machineName]

J'espère que cela vous fera gagner du temps.


2
2018-06-17 10:08





Eh bien, vous pouvez demander à Debian de frapper votre serveur Web, mais sans utiliser localhost. Vous devrez utiliser l'adresse IP de l'hôte Ubuntu.

En supposant que l'OS invité est connecté au réseau, pour saisir l'IP, ouvrez un terminal et tapez ifconfig. Devrait ressembler à quelque chose 192.168.0.2.


0
2018-05-22 10:08



Salut! Désolé pour la réponse trop tardive. ifconfig sur mon hôte affiche 192.168.0.102 pour eth0. Lorsque j'entre cette adresse IP dans Firefox, l'invite tente de se connecter pendant un moment, puis la connexion est terminée: "Le serveur à 192.168.0.102 prend trop de temps pour répondre" ... Alors, que dois-je essayer ensuite? Merci d'avance. - Maxim