Wie kann ich vom Host auf Apache (auf VirtualBox-Gast) zugreifen?

132

Ich habe Apache auf einer Ubuntu-VM installiert. Wenn ich in den Gast gehe und Firefox lade, kann ich sehen, dass Apache gut funktioniert, wenn ich nach localhost suche.

Ich möchte auf diese Seite über den Host zugreifen. Ich habe versucht, die IP-Adresse des Gastes zu verwenden, aber nichts kommt auf.

Idealerweise würde ich gerne meinen Windows 7 (Host) einrichten, um http://guestserver.com des Apache-Servers auf dem Gast anzufordern. Wie kann ich das tun?

    
urok93 07.07.2011, 12:27
quelle

9 Antworten

145

Wenn Sie andere Computer in Ihrem physischen Netzwerk benötigen, um Ihre VM erreichen zu können (oder wenn die VM einen Internetzugang benötigt), verwenden Sie ein Bridged-Netzwerk. Andernfalls bleiben Sie beim Host-Only-Networking.

  1. Stoppen Sie Ihre VM und öffnen Sie ihre Einstellungen im VirtualBox (OSE) Manager
  2. Gehen Sie zum Tab Netzwerk
  3. Wählen Sie den Netzwerkmodus Ihrer Wahl (Bridged-Netzwerk oder Host-Only) (im folgenden Beispiel verwende ich nur Host)

    Wenn Sie überbrückte Netzwerke verwenden möchten, müssen Sie den richtigen Netzwerkadapter unter Name auswählen. Für kabelgebundene Verbindungen würden Sie einen Namen wie eth0 auswählen. Drahtlose Verbindungen heißen normalerweise wlan0 (die Zahlen können variieren)

  4. Speichern Sie die Einstellungen
  5. Starten Sie die Ubuntu-VM
  6. Wenn diese Option aktiviert ist, können Sie die IP-Adresse abrufen, indem Sie Folgendes ausführen:

    ifconfig | grep addr
    

    In der folgenden Ausgabe ist 192.168.56.101 die IP-Adresse, die in Ihrem Win7-Hostsystem für den Zugriff auf Ihre VM verwendet werden kann:

    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. Bearbeiten Sie in Ihrem Windows-Hostsystem C:\Windows\System32\drivers\etc\hosts als Administrator und fügen Sie eine Zeile hinzu:

    192.168.56.101   guestserver.com
    

    Wenn Sie ein Ubuntu-Hostsystem haben, bearbeiten Sie /etc/hosts mit sudo nano /etc/hosts

  8. Gewinn!
Lekensteyn 07.07.2011, 12:58
quelle
12

In meinem Fall habe ich einen Router, der meinem Host-PC eine statische IP zuweist.

  1. Legen Sie den Netzwerkadapter als Bridge fest:

    Einstellungen & gt; Netzwerk & gt; Adapter 1 ( Netzwerkadapter aktivieren ) & gt; Angeschlossen an: ( Bridge Adapter ) & gt; OK

  2. Starten Sie die virtuelle Maschine & gt; einloggen

  3. Ändern Sie die IP-Adresse der VirtualMachine von dynamisch zu statisch

    sudo nano / etc / Netzwerk / Schnittstellen

  4. Ändern Sie unter der primären Netzwerkschnittstelle das Wort dhcp in static und geben Sie Ihre neue statische IP ein oder kommentieren Sie die Zeile und fügen Sie eine neue hinzu

:

#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

Beachten Sie, dass mein Router arbeitet xxx.xxx. 10 .x und deiner könnte es sein xxx.xxx. 0 .x oder xxx.xxx. 1 .x oder etwas anderes.

Nachdem Sie das getan haben, können Sie sowohl im Host- als auch im Gastcomputer eine Internetverbindung herstellen und diese statische IP-Adresse in Ihren Webbrowser eingeben, um Ihren Apache-Server zu überprüfen.

    
Nuc134rB0t 30.06.2012 01:04
quelle
7

Anstatt zu versuchen, die Adapter auf Bridged oder Host Only Network Adapter zu setzen, können Sie Port Forwarding unter Firewall / Andere Ports versuchen, wobei Ihr Port nicht auf tcp- und udp-Verbindungen eingestellt ist.

    
sp123 03.10.2014 17:27
quelle
4

Die angenommene Antwort funktionierte nicht für mich (Ich installierte virutalbox innerhalb von ubuntu 12.04 LTS und innerhalb von virtualbox installierte ich ubuntu 14.04 LTS Server). Ich habe gerade die Netzwerkeinstellungen für Adapter1 und Adapter2 getauscht, also Adapter1 für "Bridged Networing" und Adapter2 für "NAT" eingerichtet und es hat angefangen zu arbeiten.

    
Gaurav Pandey 22.06.2014 12:34
quelle
3

Wenn Sie keine Verbindung über ip herstellen können, haben Sie wahrscheinlich keinen Erfolg mit DNS-Namen auf einer Standard-Apache-Installation.

überprüfe die Netzwerkeinstellungen des virtuellen Hosts, ich putte ihn immer überbrückt, damit kann im gesamten Netzwerk darauf zugegriffen werden.

    
PvdL 07.07.2011 12:47
quelle
2

Wenn Ihr Host im Bridged-Modus eine statische IP-Adresse verwendet, sollten Sie Ihre Gast-IP im selben Bereich mit der Host-IP manuell konfigurieren. Andernfalls wird dem Gast nicht automatisch eine gültige IP-Adresse zugewiesen. HTH.

    
platinor 08.02.2012 06:47
quelle
2

Wenn Sie nur einen bestimmten Port benötigen (sagen Sie, wenn Sie eine Webanwendung wie Jetty oder Tomcat ausführen), tun Sie einfach:

Einstellungen - & gt; Netzwerk - & gt; Setzen Sie einen der Adapter als NAT - & gt; Drücken Sie "Port forwarding" - & gt; Legen Sie den relevanten Host- und Gast-Port fest.

Sobald Sie speichern, können Sie einfach von Ihrem lokalen Rechner zu localhost: hostport gehen und es wird zum relevanten Port der virtuellen Box umgeleitet und Sie sind fertig.

    
StationaryTraveller 01.08.2017 14:25
quelle
1

Lekensteyns Antwort ist richtig. Wenn Sie sich jedoch in einer Unternehmensumgebung befinden, müssen Sie möglicherweise den Proxy-Server für die IP-Adresse Ihres Gasts deaktivieren. Wenn Sie beispielsweise Mozilla Firefox auf Ihrem Host-Computer verwenden und versuchen, auf den Gast auf 192.168.56.101 zuzugreifen, müssen Sie in Firefox auf Extras- & gt; Optionen- & gt; Erweitert- & gt; Netzwerk- & gt; Einstellungen gehen und verwende "Kein Proxy" oder "Kein Proxy für - & gt; 192.168.56.101".

    
SpaceRook 27.11.2012 03:00
quelle
1

Wenn Sie auf einen Gast zugreifen müssen, der aufgrund der Verwendung von DHCP eine andere IP erhält, empfehle ich den Zugriff über seinen Hostnamen. Der Zugriff über den Hostnamen, wenn der Host Windows ist, erfordert jedoch möglicherweise ein zusätzliches Tool.

Der folgende Text wurde von meiner eigenen Antwort auf superuser.com kopiert. :

Ich schlage vor, dass Sie Multicast-DNS verwenden, um dies zu beheben.

Ubuntu verwendet dies standardmäßig über Avahi .

Der Windows-Host benötigt einen Avahi-Client, um andere Avahi-Dienste zu finden. Wenn Ihr Host bereits einige Apple-Software verwendet, ist dies wahrscheinlich bereits über einen Service namens Bonjour. Wenn dies jedoch noch nicht installiert ist, können Sie hier eine kleine Version von Bonjour herunterladen: Bonjour Print Services . Nach der Installation sollten Sie über .local auf Ihren Gast zugreifen können.

Hinweis: Das mDNS-System scheint standardmäßig den .local-Postfix zu verwenden. Wenn Ihr Hostname "dev.myapp.com" lautet, lautet der tatsächliche Hostname "dev.myapp.com.local".

    
Spiralis 29.01.2013 23:45
quelle

Tags und Links