Netzwerkzugriff auf VM unter Linux
Hallo zusammen,
ich habe einen "Hänger"... weiß noch nicht genau, wie ich das folgende lösen kann.
Ich habe einen Server mit Scientific Linux aufgesetzt, darin in KVM einen Windows-Host als virtuelle Maschine für eine bestimmte Anwendung, die Windows benötigt.
MIt der Standard-Einstellung der Virtualisierung (NAT) bekommt die VM eine IP aus einem anderen Subnetz... zum Beispiel: Das eigentliche Netz ist ein 192.168.10.0/24 , die Fritzbox hat die IP 192.168.10.1 . Die VM bekommt eine IP aus dem Netz 192.168.122.0/24, z.B. die 192.168.122.161. In diesem Szenario kann ich vom Server die Windows-IP pingen und umgekehrt. Von außen (einem ganz anderen Computer, z.B. 192.168.10.20) komme ich aber nicht auf die 192.168.122.161.
Wenn ich in der VM das Netzwerk auf Host-Device ("em1" hier) umstelle, dann bekommt die VM eine IP aus dem Subnetz 192.168.10.0/24, z.B. die 192.168.10.30. Das wäre ja nicht übel, ich kann dann von außen einen Ping auf beide Maschinen machen, auf den physikalischen Host und auf die VM. ABER: ich kann dann - warum auch immer - keinen Ping von der physikalischen Maschine auf die VM mehr machen.
Ich habe es mit der ersten Einstellung (NAT) probiert, die Routing-Tabelle an der Fritzbox (dem Default-Gateway) zu ändern und auf das Netzwerk 192.168.122.0/24 eine Route aufzusetzen, so dass alle Pakete an die VM über das Netzwerk-Interface des physikalischen Hosts geleitet werden. Hat aber auch nicht geklappt. Der Ping von außen ging nicht von einem Rechner im physikalischen Subnetz über den Scientfic-Linux-Server zur VM weiter.
Wo ist mein Denkfehler? Wie kann ich es aufsetzen, dass ich vom physikalischen Netz auf die VM zugreifen kann *und* VM und Host sich erreichen?
Danke für einen Tipp im voraus und viele Grüße,
Frank
ich habe einen "Hänger"... weiß noch nicht genau, wie ich das folgende lösen kann.
Ich habe einen Server mit Scientific Linux aufgesetzt, darin in KVM einen Windows-Host als virtuelle Maschine für eine bestimmte Anwendung, die Windows benötigt.
MIt der Standard-Einstellung der Virtualisierung (NAT) bekommt die VM eine IP aus einem anderen Subnetz... zum Beispiel: Das eigentliche Netz ist ein 192.168.10.0/24 , die Fritzbox hat die IP 192.168.10.1 . Die VM bekommt eine IP aus dem Netz 192.168.122.0/24, z.B. die 192.168.122.161. In diesem Szenario kann ich vom Server die Windows-IP pingen und umgekehrt. Von außen (einem ganz anderen Computer, z.B. 192.168.10.20) komme ich aber nicht auf die 192.168.122.161.
Wenn ich in der VM das Netzwerk auf Host-Device ("em1" hier) umstelle, dann bekommt die VM eine IP aus dem Subnetz 192.168.10.0/24, z.B. die 192.168.10.30. Das wäre ja nicht übel, ich kann dann von außen einen Ping auf beide Maschinen machen, auf den physikalischen Host und auf die VM. ABER: ich kann dann - warum auch immer - keinen Ping von der physikalischen Maschine auf die VM mehr machen.
Ich habe es mit der ersten Einstellung (NAT) probiert, die Routing-Tabelle an der Fritzbox (dem Default-Gateway) zu ändern und auf das Netzwerk 192.168.122.0/24 eine Route aufzusetzen, so dass alle Pakete an die VM über das Netzwerk-Interface des physikalischen Hosts geleitet werden. Hat aber auch nicht geklappt. Der Ping von außen ging nicht von einem Rechner im physikalischen Subnetz über den Scientfic-Linux-Server zur VM weiter.
Wo ist mein Denkfehler? Wie kann ich es aufsetzen, dass ich vom physikalischen Netz auf die VM zugreifen kann *und* VM und Host sich erreichen?
Danke für einen Tipp im voraus und viele Grüße,
Frank
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 255918
Url: https://administrator.de/contentid/255918
Ausgedruckt am: 23.11.2024 um 08:11 Uhr
6 Kommentare
Neuester Kommentar
Zitat von @FrankN:
ABER: ich kann dann - warum auch immer - keinen Ping von der
physikalischen Maschine auf die VM mehr machen.
ABER: ich kann dann - warum auch immer - keinen Ping von der
physikalischen Maschine auf die VM mehr machen.
Was sagt denn tcpdump?
Ich habe es mit der ersten Einstellung (NAT) probiert, die Routing-Tabelle an der Fritzbox (dem Default-Gateway) zu ändern
und auf das Netzwerk 192.168.122.0/24 eine Route aufzusetzen, so dass alle Pakete an die VM über das Netzwerk-Interface des
physikalischen Hosts geleitet werden. Hat aber auch nicht geklappt. Der Ping von außen ging nicht von einem Rechner im
physikalischen Subnetz über den Scientfic-Linux-Server zur VM weiter.
und auf das Netzwerk 192.168.122.0/24 eine Route aufzusetzen, so dass alle Pakete an die VM über das Netzwerk-Interface des
physikalischen Hosts geleitet werden. Hat aber auch nicht geklappt. Der Ping von außen ging nicht von einem Rechner im
physikalischen Subnetz über den Scientfic-Linux-Server zur VM weiter.
Das kann gar nciht funktoinioeren. Man kann systeme hinter einem NAT-gateway nicht direkt anpinge, es sei denn, man sagt dem NAT-Gateway, daß der doch kein NAT machen soll.
oder Du routest einfach ganz normal.
Näheres gitb es hier unter iptables/routing.
lks
Hallo,
Gruß,
Gersen
Zitat von @FrankN:
Wo ist mein Denkfehler? Wie kann ich es aufsetzen, dass ich vom physikalischen Netz auf die VM zugreifen kann *und* VM und Host
sich erreichen?
Um das zu erreichen, musst Du auf dem KVM-Host eine Public Bridge einrichten.Wo ist mein Denkfehler? Wie kann ich es aufsetzen, dass ich vom physikalischen Netz auf die VM zugreifen kann *und* VM und Host
sich erreichen?
Gruß,
Gersen
NAT translated die VM IP auf das Host IPnetz. Rasu kommt man damit aber nicht aus dem Host Netz auf die VM das verhindert die NAT Firewall.
Bei host betreibst du ein isoliertes IP netz nur zw. Host und VM ohne Zugang zum Host Netzwerk wo der Router dran ist.
Du kannst dann Routen auf dem Linux Host wenn du das aktivierst.
Wie das geht und wie man es einrichtet mit statischer Route auf der FB kannst du hier nachlesen:
Routing von 2 und mehr IP Netzen mit Windows, Linux und Router
etwas dazu steht auch hier:
Netzwerk Management Server mit Raspberry Pi
In der TAT ist der Bridging Mode das einfachste. Damit realisiert der Host eine simple Layer 2 Bridge auf Basis der Mac Adressen und damit ist die VM dann im identischen IP Netzwerk wie der Host selber !
Bei host betreibst du ein isoliertes IP netz nur zw. Host und VM ohne Zugang zum Host Netzwerk wo der Router dran ist.
Du kannst dann Routen auf dem Linux Host wenn du das aktivierst.
Wie das geht und wie man es einrichtet mit statischer Route auf der FB kannst du hier nachlesen:
Routing von 2 und mehr IP Netzen mit Windows, Linux und Router
etwas dazu steht auch hier:
Netzwerk Management Server mit Raspberry Pi
In der TAT ist der Bridging Mode das einfachste. Damit realisiert der Host eine simple Layer 2 Bridge auf Basis der Mac Adressen und damit ist die VM dann im identischen IP Netzwerk wie der Host selber !
Die Einrichtung der Public Bridge wie in dem Artikel beschrieben hat nicht funktioniert, die Solution 1 habe ich probiert. Das
führte zu der Fehlermeldung: "Failed to determine virtual connections interface name"... wenn ich die Schnittstelle
br0 über die Konfig-Files einrichte und das Netzwerk neu starte... das werde ich rückgängig machen.
führte zu der Fehlermeldung: "Failed to determine virtual connections interface name"... wenn ich die Schnittstelle
br0 über die Konfig-Files einrichte und das Netzwerk neu starte... das werde ich rückgängig machen.
Nutzt Du den NetworkManager? - Der kann -glaube ich- nicht so gut mit Bridging (https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7 ..). Die Doku im Link ist vermutlich für SL deutlich besser geeignet.