Maschine 62: Ubuntu 16.04, hat Internetzugang, kann über das Internet aufgerufen werden. Auf der Maschine 62 befindet sich VirtualBox mit einer VM (auch Ubuntu).
Ich möchte, dass sich die VM wie eine „normale“ Maschine verhält (IP-Anfragen). Ich habe eine statische IP dafür reserviert, bin mir aber jetzt nicht sicher, wie ich die Schnittstellen des Hosts und des Gasts so konfigurieren soll, dass ich den Gastcomputer so anpingen kann, wie ich es normalerweise beim Hostcomputer tue (über die reservierte IP statt 62 ...).
ReverseProxy hat eine Weile funktioniert, aber dann brauchte ich Websockets über Ports, die ich im Voraus nicht kannte. Meine nächste Vermutung ist also NAT? IP-Weiterleitung? Überbrückte Netzwerke? Masquerading?
Antwort1
Sie müssen ein überbrücktes Netzwerk zwischen Host und VM erstellen. Die Konfiguration variiert je nach Hypervisor-Anbieter.
Falls Sie Oracle Virtual Box verwenden
- Öffnen Sie
Oracle VM VirtualBox Manager
, wählen Sie die VM aus und gehen Sie zum Netzwerkbereich. - Ändern Sie auf
Adopter 1
der Registerkarte die StandardeinstellungNAT
und wählen Sie aus der Dropdown-ListeBridged Adopter
den Netzwerkadapter des Hosts aus . Wenden Sie ihn an.Name
- Konfigurieren Sie jetzt das Netzwerk in VirtualBox gemäß der Konfiguration Ihres ISPs, etwa statisch, dynamisch usw.
Wenn SieQEMU-KVM
- Öffnen Sie
Virtual Machine Manager
das GUI-Tool (falls Sie die GUI verwenden) - Wählen Sie die entsprechende virtuelle Maschine aus und
Open
klicken Sie aufNIC
- Ändern Sie die Standardeinstellung,
NAT
umHost Device xxxxxx: macvtap
das Netzwerk innerhalb der virtuellen Maschine entsprechend der ISP-Konfiguration anzuwenden, und konfigurieren Sie es dann. - Wenn Sie kein GUI-Tool haben, verwenden
virsh edit virtual-machine-name
und ändern Sie die Konfiguration wie zuvor beschrieben.
Eine dritte Alternative ist das Erstellen iptable
NAT
einer Regel im Host. Leiten Sie dann den gesamten Datenverkehr zu dieser IP (die Sie der VM zuweisen möchten) an die interne IP-Adresse der VM weiter. Sie müssen ein paar iptables
Zeilen schreiben, googeln Sie bitte danach. Aber für mich ist das die am wenigsten bevorzugte Methode.
ANMERKUNG 1 Bridged Network
und macvtap
funktioniert nicht mit den meisten WiFi
Adoptern im Host.
ANMERKUNG 2Falls macvtap
Ihr Host von der VM aus nicht erreichbar ist und umgekehrt, sind beide von einem externen Netzwerk aus erreichbar. Wenn Sie mehrere VMs haben, bleiben diese außerdem füreinander erreichbar. So macvtap
funktioniert es. Um von einem Host aus auf VMs zuzugreifen und umgekehrt, erstellen Sie im Fall von Oracle VirtualBox einen weiteren NAT-Adapter und für QEMU-KVM eine weitere Netzwerkkarte mit NAT.
NOTIZ 3Für beide Bridged Network
und macvtap
den Netzwerkadapter des Hosts muss eine IP-Adresse pro VM reserviert sein, wie in der Frage bereits erwähnt.