KVM - Bridge Interface , kein VM Zugriff
HAllo zusammen,
ich jage leider ein kleinen Rätsel nach.
Folgendes:
Nachdem bei mienem Dedi Server der Raid Controller kaputt gegangen ist lief erstmal nichts mehr.
MEin PRovider hat mir dann ein Ersatz System zur verfügung gestellt.
Der Server lief bisher immer auf Ubuntu 16.04 LTS.
Also dachte ich mir, warum nicht gleich auf 18.04 gehen. Das war ein Fehler... Dachte ich.
ICh habe den Host installiert und eine neue Brücke gebaut. Das lief nicht sauber, da Netplan irgendwie voller Bugs ist.
Manuell deinstalliert und Ifupdown installiert lief dann auch die Brücke.
MEine zweite IP Adresse habe ich dann auch bekommen. Allerdings bekam ich über die VM keinen Internet Zugriff, obwohl die VM über die Brücke angesteuert wurde und die Feste IP eingetragen ist.
ICh hatte den Fehler beim PRovider gesehen , was aber niht der Fall war. Füge ich die zweite IP Adresse dem Host System als zweite Adresse hinzu, so funktioniert es.
Den Host habe ich dann auf Debian 9 neu installiert.
Dort gibt es ja noch ifupdown vorinstalliert.
Die Brücke lief dort von Anfang an einwandfrei.
Allerding auch hier das gleiche Phänomen.
Die VM, bekam keinen Zugriff ins Netz , mit dem Host als zweiter Adresse klappts.
Ich vermute entweder MAC Filter oder das interne Routing klappt nicht. Der Provider sagt alles gut.
Die zweite Adresse ist eine Failover Adresse also insofern nicht an eine MAC gebunden oder?
Pinge ich von der VM nach draussen kann ich den Ping auf dem Host sehen wie er die Brücke passiert.
Insofern denke ich eher ein Routing problem des Providers.
Wie bekomme ich raus, es hängt ?
/etc/network/interfaces ( vom Host )
auto lo
iface lo inet loopback
auto br1
iface br1 inet static
address X.X.X.X/24
gateway X.X.X.1
dns-nameservers 1.1.1.1
bridge_ports eno1
bridge_stp on
bridge_fd 0.0
/etc/network/interfaces ( VM)
auto lo
iface lo inet loopback
auto ens3
iface ens3 inet static
address Y.Y.Y.Y/32
gateway X.X.X.1 ( das gleiche wie vom Host Server)
dns-nameservers 1.1.1.1
Vielen Dank.
Christian
ich jage leider ein kleinen Rätsel nach.
Folgendes:
Nachdem bei mienem Dedi Server der Raid Controller kaputt gegangen ist lief erstmal nichts mehr.
MEin PRovider hat mir dann ein Ersatz System zur verfügung gestellt.
Der Server lief bisher immer auf Ubuntu 16.04 LTS.
Also dachte ich mir, warum nicht gleich auf 18.04 gehen. Das war ein Fehler... Dachte ich.
ICh habe den Host installiert und eine neue Brücke gebaut. Das lief nicht sauber, da Netplan irgendwie voller Bugs ist.
Manuell deinstalliert und Ifupdown installiert lief dann auch die Brücke.
MEine zweite IP Adresse habe ich dann auch bekommen. Allerdings bekam ich über die VM keinen Internet Zugriff, obwohl die VM über die Brücke angesteuert wurde und die Feste IP eingetragen ist.
ICh hatte den Fehler beim PRovider gesehen , was aber niht der Fall war. Füge ich die zweite IP Adresse dem Host System als zweite Adresse hinzu, so funktioniert es.
Den Host habe ich dann auf Debian 9 neu installiert.
Dort gibt es ja noch ifupdown vorinstalliert.
Die Brücke lief dort von Anfang an einwandfrei.
Allerding auch hier das gleiche Phänomen.
Die VM, bekam keinen Zugriff ins Netz , mit dem Host als zweiter Adresse klappts.
Ich vermute entweder MAC Filter oder das interne Routing klappt nicht. Der Provider sagt alles gut.
Die zweite Adresse ist eine Failover Adresse also insofern nicht an eine MAC gebunden oder?
Pinge ich von der VM nach draussen kann ich den Ping auf dem Host sehen wie er die Brücke passiert.
Insofern denke ich eher ein Routing problem des Providers.
Wie bekomme ich raus, es hängt ?
/etc/network/interfaces ( vom Host )
auto lo
iface lo inet loopback
- The primary network interface
auto br1
iface br1 inet static
address X.X.X.X/24
gateway X.X.X.1
dns-nameservers 1.1.1.1
bridge_ports eno1
bridge_stp on
bridge_fd 0.0
/etc/network/interfaces ( VM)
auto lo
iface lo inet loopback
- The primary network interface
auto ens3
iface ens3 inet static
address Y.Y.Y.Y/32
gateway X.X.X.1 ( das gleiche wie vom Host Server)
dns-nameservers 1.1.1.1
Vielen Dank.
Christian
Please also mark the comments that contributed to the solution of the article
Content-ID: 441401
Url: https://administrator.de/contentid/441401
Printed on: October 9, 2024 at 22:10 o'clock
14 Comments
Latest comment
Und Spanning Tree auf dem Host Interface zu aktivieren ist nicht ganz unproblematisch. Du hast keinerlei Ahnung welches STP Protokoll der Hoster extern verwendet. Hat er Cisco im Umfeld kommt es zum Chaos, denn die sprechen PVSTP was inkompatibel zu deinem STP ist und der externe Switch setzt den Port dann in Error Disable.
Sowas unabgestimmt mit dem Provider zu machen ist gefährlich. Kollege @certifiedit.net hat da Recht.
Sowas unabgestimmt mit dem Provider zu machen ist gefährlich. Kollege @certifiedit.net hat da Recht.
Scheint als käme ich nicht raus.
Was dann auch klar zeigt das die Bridge NICHT funktioniert !Wie grundsätzlich ein Bridge Interface einzurichten ist bei unixoiden OS kannst du hier nachlesen:
Netzwerk Management Server mit Raspberry Pi
Zitat von @LordGurke:
Kann es schlicht sein, dass dein Hoster fremde MAC-Adressen ingress am Switchport filtert und die MAC-Adresse deiner VM noch erlaubt werden muss?
Kann es schlicht sein, dass dein Hoster fremde MAC-Adressen ingress am Switchport filtert und die MAC-Adresse deiner VM noch erlaubt werden muss?
Oder daß vielleicht noch andere Kunden kvm nutzen und daher die MAC-Adresse schon "auf einem anderen Porr" des Providerswitches benutzt wird.
Ich würde mal eine zufällig gewählte MAC-Adresse benutzen.
lks
Alternativ kannst du auch versuchen, ein Routed Setup auzusetzen, sofern die zweite IP geroutet wird.
Auf dem Host musst du dafür das IP-Forwarding per sysctl auf eno0 deines Hosts aktivieren.
Dann legst du eine statische Route an, die auf das Interface deiner VM zeigt:
A.B.C.D ist deine zusätzliche IP-Adresse, die für die VM genutzt werden soll.
br0 muss natürlich der Name deiner Bridge sein, an der die VM hängt.
Deiner VM konfigurierst du dann die IP des Hosts, die er auf ens0 hat, als Default-Gateway.
Dann sieht dein Hoster für jedes Paket die MAC-Adresse deines Hosts (denn er ist ja der Router) und das Problem sollte weg sein.
Auf dem Host musst du dafür das IP-Forwarding per sysctl auf eno0 deines Hosts aktivieren.
Dann legst du eine statische Route an, die auf das Interface deiner VM zeigt:
ip -4 route add A.B.C.D/32 dev br0
br0 muss natürlich der Name deiner Bridge sein, an der die VM hängt.
Deiner VM konfigurierst du dann die IP des Hosts, die er auf ens0 hat, als Default-Gateway.
Dann sieht dein Hoster für jedes Paket die MAC-Adresse deines Hosts (denn er ist ja der Router) und das Problem sollte weg sein.