frankn
Goto Top

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

Content-ID: 255918

Url: https://administrator.de/contentid/255918

Ausgedruckt am: 23.11.2024 um 08:11 Uhr

Lochkartenstanzer
Lochkartenstanzer 26.11.2014 aktualisiert um 09:18:46 Uhr
Goto Top
Zitat von @FrankN:

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.

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
Gersen
Gersen 26.11.2014 um 10:15:30 Uhr
Goto Top
Hallo,
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.

Gruß,
Gersen
aqui
aqui 26.11.2014 um 19:16:44 Uhr
Goto Top
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 !
FrankN
FrankN 26.11.2014 um 21:40:30 Uhr
Goto Top
Hallo zusammen,

vielen Dank für Eure Antworten... ich bin noch etwas am Straucheln. Ich habe im Moment die "Lösung", dass die Netzwerkkarte der VM im virt-manager eingestellt ist auf "Host device em1: macvtap". Damit hat mein Host die Endung 213 im Subnetz der Fritzbox und die virtuelle Maschine die Endung 217. Von einem Rechner mit der IP 40 im letzten Oktett komme ich schmerzfrei per Ping auf beide, sowohl den Host als auch die VM. Ich kann von der Windows-VM auch die Shares anzeigen. Nur eben nicht von der VM auf den Host und auch nicht umgekehrt.

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.

Die beiden Computer (Host und VM) werden beide in der Fritzbox angezeigt, da müsste doch die Fritzbox als Default Gateway in der Lage sein, den Traffic im zweifel vom Host zur VM zu leiten und umgekehrt, so wie für jeden anderen Rechner in dem Subnetz auch, oder? Das Default-Gateway ist bei beiden richtig eingestellt.

Danke und viele Grüße,
Frank
Gersen
Lösung Gersen 26.11.2014, aktualisiert am 30.11.2014 um 22:24:30 Uhr
Goto Top
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.

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.
FrankN
FrankN 30.11.2014 um 22:12:33 Uhr
Goto Top
Das mit dem NetworkManager war ein guter Tipp, ja, der *war* drin... das hat geholfen. Ich habe alles rausgenommen und mit ein "bisschen" einlesen alles von Hand gemacht. Im Moment sieht das sehr gut aus, vielen Dank!