So erreichen Sie einen Vbox-Gast vom Host aus, wenn Sie ein NAT-Netzwerk verwenden

12

Was muss ich tun, wenn ich Fedora oder Ubuntu für den Host mit auf beiden Seiten deaktivierten Firewalls (vbox guest & host) verwende, um den Gastcomputer über eine NAT-Schnittstelle zu erreichen, wie dies bei einer Bridged-Schnittstelle der Fall wäre? (Nur vom vbox host!)

Update : ifconfigauf dem Hostrechner:

# ifconfig -a
eth0      Link encap:Ethernet  HWaddr 00:41:56:6B:78:4E  
      inet addr:192.168.1.2  Bcast:.192.168.1.255  Mask:255.255.255.0
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:271850 errors:0 dropped:0 overruns:0 frame:0
      TX packets:144494 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:256776500 (244.8 MiB)  TX bytes:10670238 (10.1 MiB)
      Interrupt:16 Memory:fc500000-fc520000 

lo        Link encap:Local Loopback  
      inet addr:127.0.0.1  Mask:255.0.0.0
      UP LOOPBACK RUNNING  MTU:16436  Metric:1
      RX packets:77698 errors:0 dropped:0 overruns:0 frame:0
      TX packets:77698 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:0 
      RX bytes:104227086 (99.3 MiB)  TX bytes:104227086 (99.3 MiB)

vboxnet0  Link encap:Ethernet  HWaddr 0A:00:27:00:00:00  
      BROADCAST MULTICAST  MTU:1500  Metric:1
      RX packets:0 errors:0 dropped:0 overruns:0 frame:0
      TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
LanceBaynes
quelle

Antworten:

12

Gemäß dieser Dokumentation machen aktuelle Versionen von VirtualBox die internen NAT-Schnittstellen nicht für den Host-Computer verfügbar. Sie können spezielle Regeln für die Portweiterleitung konfigurieren, um die Boxen zu erreichen, aber selbst der Host kann nicht die gesamte Schnittstelle erreichen. Sie sollten dafür Bridged Networking verwenden.

Caleb
quelle
Ich habe die Frage aktualisiert. Nein, ich habe keine Standard-IPs von Virtualbox.
LanceBaynes
Siehe aktualisierte Antwort. Entschuldigung, es ist schon eine Weile her, dass ich NAT in VirtualBox verwendet habe und der Computer, auf dem NAT verwendet wird, hat von mir erstellte Sub-Interfaces, anscheinend nicht VB.
Caleb
11

Dieser Befehl leitet den gesamten TCP-Verkehr, der auf der localhost-Schnittstelle (127.0.0.1) ankommt, über Port 33890 an Port 3389 im Gast weiter

$ VBoxManage modifyvm "xp" --natpf1 "guestrdp,tcp,127.0.0.1,33890,,3389"
LanceBaynes
quelle
Bitte füge dies als Kommentar zu meiner Antwort hinzu, nicht als separate Antwort.
Caleb
1
Ich habe dies zunächst in einen Kommentar umgewandelt, aber es scheint, als füge er tatsächlich einen wichtigen Teil der Antwort hinzu
Michael Mrozek
@Michael: Es ist auch nicht so wichtig, aber die Lösung ist nicht das, wonach seine Frage verlangt. Die Portweiterleitung unterscheidet sich von der Offenlegung einer Netzwerkschnittstelle auf die gleiche Weise wie die Überbrückung, sodass ich in meiner Antwort keine exakte Syntax angegeben habe. Der Befehl, den er anzeigt, stammt nur aus der Dokumentation, die ich vorgeschlagen und verlinkt habe, für den Fall, dass die Portweiterleitung eine akzeptable Alternative war.
Caleb
1

Ich habe dies nicht auf einem Linux-Host getestet.

Es hört sich so an, als ob Sie NAT verwenden möchten, damit Ihr Gast auf das Netzwerk zugreifen kann, aber auch direkt vom Host auf den Gast zugreifen möchten, ohne die Portweiterleitung zu verwenden.

Wenn Sie auf dem Gast zwei Netzwerke erstellen - eines als NAT- oder NAT-Netzwerk und das zweite als Host-Only-Adapter - können Sie dies erreichen.

Die NAT-Konfiguration ermöglicht Ihrem Gast das Aussteigen, der Host-Only-Adapter lässt Ihren Host einsteigen.

Normalerweise benutze ich NAT-Netzwerke, damit meine VMs miteinander kommunizieren können. In der Windows-Benutzeroberfläche werden beide Einstellungen unter Datei-> Einstellungen-> Netzwerk verwaltet

Registerkarte NAT-Netzwerke - NAT-Netzwerk hinzufügen. Bearbeiten Sie es und geben Sie ihm einen Namen oder einen benutzerdefinierten IP-Bereich, wenn Sie möchten.

Registerkarte Nur-Host-Netzwerk - Bearbeiten Sie die Standardschnittstelle und stellen Sie sicher, dass sich die IPv4-Adresse im selben Netzwerk befindet (jedoch nicht im DHCP-Bereich!) Wie die Registerkarte DHCP-Server. meins passte nicht sofort zusammen, also funktionierte die Vernetzung nicht.

mbrandeis
quelle