Wie greife ich vom Gastcomputer auf den Hostcomputer zu? [geschlossen]

124

Ich habe gerade mit VMware Fusion eine neue Windows XP-VM auf meinem Mac erstellt. Die VM verwendet NAT, um die Internetverbindung des Hosts freizugeben.

Wie greife ich auf eine Rails-Anwendung zu, auf die auf dem Mac selbst zugegriffen werden kann http://localhost:3000?

John Topley
quelle

Antworten:

134

Suchen Sie auf dem XP-Computer Ihre IP-Adresse, indem Sie zur Eingabeaufforderung gehen und eingeben ipconfig. Versuchen Sie, die letzte Nummer durch 1 oder 2 zu ersetzen. Wenn Ihre IP-Adresse beispielsweise 192.168.78.128 lautet, verwenden Sie http://192.168.78.1:3000 .

JW.
quelle
3
hat mir stundenlanges Faff erspart - klopfen Sie sich auf den Rücken, Sir!
iancrowther
Ich verwende Lion als Host und Win7 als Gast, konnte aber meine Rails-App auf meinem Mac damit nicht besuchen. Warum?
Larryzhao
1
Wenn Ihre lokale Netzwerk-IP-Adresse lautet: 192.168.1.122, sollten Sie 192.168.1.122:3000 verwenden, und das sollte funktionieren
dbslone
6
Wichtiger Hinweis: Diese Lösungen funktionieren nicht, wenn Sie über VPN verbunden sind.
Harshay Buradkar
80

Sie können den lokalen Namen Ihres Host-Mac (oder eines anderen Mac im Netzwerk) verwenden:

http: //macname.local: 3000 /

Dabei ist Macname der Netzwerkname Ihres Hosts (oder eines anderen gewünschten Mac).

Michael Larocque
quelle
1
Hervorragend. Ich wusste nichts über das .local-Bit. Vielen Dank!
rückwärts
Ist dies nur verfügbar, wenn die VM auf diesem Mac konfiguriert wurde? Ich habe eine andere VM von einem anderen Ort portiert und computername.local funktioniert nicht für mich
spankmaster79
7
Die ".local" ist eine reine Mac-Sache. Wenn Sie Systemeinstellungen / Freigabe öffnen, wird Ihnen tatsächlich der Computername
angezeigt. Darunter wird darauf hingewiesen,
1
Dies scheint zu erfordern, dass das VMWare-Netzwerk so konfiguriert ist, dass es NATted (oder vermutlich überbrückt) ist. Die Konfiguration "Nur Host" führt zu einem Zeitlimit für die Netzwerkverbindung. Mir ist nicht klar, warum dies der Fall sein sollte, aber ...
Norman Gray
Ich habe diese Methode verwendet und sie hat großartig funktioniert! Aber vor kurzem hat es aufgehört zu funktionieren, und ich bin mir nicht sicher warum. Vielleicht hörte es mit einem Update von Snow Leopard auf, oder vielleicht hörte es mit einem Update von Fusion auf. Jetzt wird mein machostname.local in eine öffentliche Adresse im Internet aufgelöst.
Jason
14

Für zukünftige Besucher: Sobald Sie die IP-Adresse herausgefunden haben, können Sie der Windows-Hosts-Datei unter C: \ Windows \ system32 \ drivers \ etc \ hosts einen Eintrag hinzufügen, um die IP-Adresse einer zuzuordnen (virtueller) Servername. Fügen Sie eine Zeile wie folgt hinzu:

192.168.78.1   myrubyapp

Jetzt können Sie auf die Site im IE unter der Adresse http: // myrubyapp: 3000 zugreifen

Wenn Sie virtuelle Hosts unter Apache verwenden, benötigen Sie diese, um den richtigen Servernamen anzugeben.

J. Perkins
quelle
Soll die IP über Sitzungen auf einem NAT hinweg fest bleiben? Ich bezweifle das.
Lothar
10

Da diese Frage ziemlich alt ist und sich auf XP bezieht, finden Sie hier eine Alternative für neue Betriebssysteme.


Wenn Sie Vista oder Windows 7 als Gastbetriebssystem verwenden und Virtual Hosts über Apache auf dem Host eingerichtet haben, gehen Sie wie folgt vor:

Im Host-Betriebssystem müssen Sie sicherstellen, dass die Netzwerkverbindung über NAT erfolgt.

  1. Klicken Sie mit der rechten Maustaste auf das Netzwerksymbol im VM-Fenster (unten rechts).
  2. Wählen Sie "NAT"
  3. Wählen Sie "Verbinden"
  4. Warten Sie, bis sich das Gastbetriebssystem wieder mit dem Netzwerk verbunden hat

Dann im Gastbetriebssystem;

  1. Klicken Sie auf Start> Netzwerk> Netzwerk- und Freigabecenter
  2. Klicken Sie neben der Netzwerkverbindung auf "Status anzeigen"
  3. Klicken Sie auf "Details"
  4. Suchen Sie "IPv4-Standardgateway"
  5. Öffnen Sie das Wordpad
  6. Bearbeiten Sie C: \ Windows \ System32 \ drivers \ etc \ hosts
  7. Fügen Sie der Datei eine Zeile hinzu, z.

    [default-gateway-IP] www.example.com
    [default-gateway-IP] example.com
    
  8. sparen

  9. Versuchen Sie es mit Öffnen http://www.example.comoder http://example.comim IE

Jess Telford
quelle
Es ist sehr seltsam, aber ich musste 1 von der Gateway-IP abziehen. Eigentlich hat es für mich funktioniert, das herauszufinden, indem ich den Host anpingte ping <my-mac-host>.localund diese IP in die Hosts-Datei legte
Cristian
1
Anstelle der Schritte 1 bis 4 im Gastbetriebssystem können Sie auch den Dialog "Ausführen" öffnen, cmd+ <Eingabe> eingeben, dann: ipconfig /all+ <Eingabe> eingeben und dort das "Standard-Gateway" suchen.
Jess Telford
Danke Jess!. ipconfig /allwar auch schneller
Emerson Rocha
9
  1. Starten Sie auf dem XP-Computer Start -> Verbinden mit -> Alle Verbindungen anzeigen.
  2. Doppelklicken Sie auf LAN-Verbindung.
  3. Klicken Sie auf die Registerkarte Support.
  4. Nehmen Sie die Standard-Gateway-IP <gateway-ip> und klicken Sie <gateway-ipin Ihrem Browser auf http: // >: 3000.

Gotcha: Sie müssen http: // in der Adresse haben, sonst gibt Ihnen der IE "Die Webseite kann nicht angezeigt werden".

Richard Poirier
quelle
6

Für Django ist es wichtig, Folgendes zu tun:

./manage.py runserver [Standard-Gateway-IP]: 8000

weil

https://docs.djangoproject.com/de/dev/ref/django-admin/

Beachten Sie, dass auf die Standard-IP-Adresse 127.0.0.1 von anderen Computern in Ihrem Netzwerk nicht zugegriffen werden kann. Verwenden Sie eine eigene IP-Adresse (z. B. 192.168.2.1) oder 0.0.0.0 oder :: (mit aktiviertem IPv6), um Ihren Entwicklungsserver für andere Computer im Netzwerk sichtbar zu machen.

Googol
quelle
5

Ich habe gerade eine Stunde damit verbracht, dies nach den Schritten auf SO zum Laufen zu bringen, aber meine war etwas anders.

VMWare-Einstellungen

1.)
Stellen Sie die VMWare-Verbindung auf NAT ein. 2.) Führen Sie> cmd> ipconfig> Kopieren des Standard-Gateway-Werts aus.
3.) Bearbeiten Sie die Hosts-Datei (c: / Windows / System32 / drivers / etc / hosts).

  • Fügen Sie dies Ihrer Hosts-Datei hinzu:

<gateway-ip> yourserver.local

OS X-Einstellungen

1.) Bearbeiten Sie die Apache-Konfiguration (z. B. sudo vim /etc/apache2/httpd.conf).

  • Fügen Sie diesen vhost-Eintrag zu Ihrer httpd.conf-Datei hinzu:
NameVirtualHost 127.0.0.1
<VirtualHost 127.0.0.1>
    DocumentRoot "/ path / to / your / project"
    Servername yourserver.local

    <Verzeichnis "/ path / to / your / project">
        AllowOverride All
        Optionen Alle
    </ Directory>
</ VirtualHost>
  • Speichern & Beenden (: wq)

2.) Bearbeiten Sie Ihre Hosts-Datei (sudo vim / etc / hosts)

  • Fügen Sie diese Zeile Ihrer Hosts-Datei hinzu

127.0.0.1 yourserver.local

3.) Starten Sie Apache neu (sudo apachectl restart)

Ich stellte fest, dass ich die Verbindungseinstellung auf VMWare ändern musste, um die Verbindung neu zu starten, bevor diese Einstellungen für mich funktionierten. Ich hoffe das hilft.

Dennis Plucinik
quelle