Der Asker und jeder, der einen ähnlichen Anwendungsfall hat, arbeitet wahrscheinlich für lokale Entwicklungszwecke auf einer Workstation (nicht Windows Server Edition). In diesem Fall gibt es eine relativ einfache Lösung.
Erstellen Sie den Switch
Erstellen Sie in Hyper-V Manager einen neuen virtuellen Switch unter Actions panel -> Virtual Switch Manager... -> Create Virtual Switch
. Wenn sich die VM mit dem Internet verbinden kann, wählen Sie den External
Switch-Typ aus.
Geben Sie auf dem nächsten Bildschirm dem Switch einen Namen, z. B. internet-enabled
und wählen Sie die physische Netzwerkschnittstelle, die mit dem Internet verbunden ist.
Der resultierende Schalter sollte ungefähr so aussehen:
Hard-Code der IP-Adresse des Switches (Gateway für die VM)
Suchen Sie den Netzwerkadapter, der dem neuen Switch zugeordnet ist, dh unter Control Panel -> Network and Internet -> Network Connections
; sein Name wird den im vorherigen Schritt angegebenen Namen wiedergeben, z vEthernet (internet-enabled)
. Klicken Sie mit der rechten Maustaste auf den Adapter und wählen Sie Properties
.
Klicken Sie anschließend auf Internet Protocol Version 4 (TCP/IPv4)
und auf Properties
. Geben Sie 192.168.10.1
für das IP address
und 255.255.255.0
für das ein Subnet mask
. Die Einstellungen sollten so aussehen:
Weisen Sie der Gast-VM eine statische IP-Adresse zu
Der letzte Schritt ist das Zuweisen einer statischen IP-Adresse in der Gast-VM.
Leider unterstützt Vagrant (ab Version 2.2.1) keine statische IP-Konfiguration (siehe https://github.com/hashicorp/vagrant/issues/8384 ). Daher kann diese statische IP- Adresse vor der Bereitstellung der VM nicht zugewiesen werden.
Bis Vagrant diese Funktion unterstützt, können Sie die VM einfach normal bereitstellen und die Netzwerkkonfiguration anschließend bearbeiten.
Der Vorgang zum Festlegen einer statischen IP-Adresse variiert je nach Gastbetriebssystem. In Ubuntu 18.04 LTS ist es zum Beispiel so einfach wie das Bearbeiten /etc/netplan/01-netcfg.yaml
von Werten, die der Konfiguration des virtuellen Switches entsprechen, von oben (die Leerzeichen müssen genau sein!).
network: version: 2 ethernets: eth0: dhcp4: no addresses: [192.168.10.10/24] gateway4: 192.168.10.1 nameservers: addresses: [8.8.8.8,8.8.4.4]
Übernehmen Sie die Änderungen nach dem Speichern der Datei mit:
$ sudo netplan apply
Die VM sollte die statische IP-Adresse sofort widerspiegeln. Dies kann bestätigt werden mit ifconfig
:
$ sudo ifconfig eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.10.10 netmask 255.255.255.0 broadcast 192.168.10.255 inet6 fe80::215:5dff:fe38:12a prefixlen 64 scopeid 0x20<link> ether 00:15:5d:38:01:2a txqueuelen 1000 (Ethernet) ...
Der Host kann jetzt einen Ping an 192.168.10.10
den Gast senden und der Gast kann an den Host an pingen 192.168.10.1
.
Verweise: