
Ich habe eine Vagrant-konfigurierte VM, die auf einem Windows 10-Rechner in meinem Heimnetzwerk läuft. Ich habe die öffentlichen Vagrant-Bridge-Netzwerkeinstellungen erfolgreich konfiguriert, sodass ich von anderen Rechnern in diesem Netzwerk auf diese Gast-VM zugreifen kann, nicht nur vom Host. Ich arbeite beispielsweise an meinem Laptop und kann problemlos per SSH auf die IP der Gast-VM zugreifen.
Das funktioniert alles prima, bis ich versuche, dasselbe zu tun, indem ich von außerhalb des Netzwerks darauf zugreife. Mein Router unterstützt VPN-Verbindungen, also richte ich das ein und kann alle anderen Geräte in meinem Netzwerk über private IPs erreichen (z. B. ist ein lokaler Webserver, den ich außerhalb einer VM laufen lasse, zugänglich). Ich kann den Windows 10-Hostcomputer erreichen, aber wenn ich versuche, die IP der Gast-VM zu erreichen, hängt sie sich auf.
Ich denke, es könnte daran liegen, dass das VPN mich in ein separates Subnetz bringt (z. B. ist die IP der Gast-VM 192.168.29.125
und wenn ich im VPN bin, wird meinem Laptop so etwas wie zugewiesen 192.168.0.35
). Hat jemand eine Idee, wie man einem Gerät, das über eine VPN-Verbindung im Netzwerk ist, den Zugriff auf eine Gast-VM im überbrückten Netzwerk ermöglichen kann? Ich kann auf den Hostcomputer zugreifen, aber nicht auf die Gast-VM, die auf diesem Host läuft.
Relevante Vagrant-Datei
# Set up shared folders for local syncing
override.vm.network 'private_network', :ip => IP_ADDRESS[:rails]
# Windows and accessible on the network
override.vm.network 'public_network'
Antwort1
Falls das noch jemand findet: Ich habe das Problem letztendlich gelöst, indem ich Verbindungen an den Host umgeleitet und die Portweiterleitung in der Vagrant-Datei aktiviert habe.
Ich wollte beispielsweise SSH und den SSL-Port unserer App öffnen (22 und 3443).
Meine Host-IP war so etwas wie 192.168.29.125
Mein Vagrant hat eine IP wie 192.168.29.130
Ich habe zuvor versucht, VPN zu verwenden und über diese Ports eine Verbindung zu 192.168.29.130 herzustellen, aber es kam einfach zu einer Zeitüberschreitung. Ich habe Zeilen wie diese hinzugefügt:
config.vm.network "forwarded_port", guest: 22, host: 22
config.vm.network "forwarded_port", guest: 3443, host: 3443
Dann leite ich meine Verbindungen an den Host-PC weiter, der diese Verbindungen dann an die VM weiterleitet. Anstatt also zu wird die Verbindung dann an 192.168.29.130 weitergeleitetssh [email protected]
ssh [email protected]