c.r.s.
Goto Top

Welche eierlegende Wollmilchsau aus der Dose für ECMP?

Hallo zusammen,

bei einem Netzwerkprojekt hat sich ein Bug in FreeBSD bemerkbar gemacht, den ich nicht auf dem Schirm hatte: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=225792

Die für ECMP zuständige Kernel-Option RADIX_MPATH ist standardmäßig deaktiviert, weil sie wohl bei Aktivierung nicht funktioniert und nur Probleme macht.

ECMP ist damit auf keiner FreeBSD-basierten Router-Lösung verfügbar. Die geliebten OPNsense und pfSense sind damit um ein interessantes Feature ärmer.
Für die Vernetzung untereinander z.B. mit OSPF ist das bestenfalls lästig (Failover funktioniert ja), eine redundante Vernetzung mit Azure/BGP fällt dadurch aber komplett flach (dabei ist es mir aufgefallen): https://docs.microsoft.com/de-de/azure/vpn-gateway/vpn-gateway-highlyava ...

Ich habe zwar jetzt den OPNsense-Kernel mit RADIX_MPATH kompiliert und will bei Gelegenheit mal ausprobieren, was passiert, weil die Aussagen im Netz dazu doch unterschiedlich sind (crasht, macht überhaupt nichts, erfolgreich im Einsatz). Grundsätzlich wird man dafür aber vorerst eine andere Plattform brauchen.

Habt ihr Ideen, was man Freies oder Günstiges als Ersatz nehmen könnte? Wirklich interessant sieht für mich nur VyOS aus, ist aber ein reines Routing-Projekt. Ich hätte natürlich gerne eine einheitliche Lösung für mehrere Router (Server-Hardware und Cloud/virtualisiert) die an manchen Stellen auch ein IDS oder einen Proxy trägt. Das auf Linux-Basis selbst zusammen zu bauen, würde ich gern vermeiden.

Danke!
Richard

Content-Key: 453681

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

Printed on: April 16, 2024 at 09:04 o'clock

Member: falscher-sperrstatus
falscher-sperrstatus May 19, 2019 at 12:53:38 (UTC)
Goto Top
Moin Richard,

kommt immer auf Projektumfang und Budget an. Günstig können 10€ bei einem 1000€ Projekt oder 1.000.000 bei nem 10Mia Projekt sein. Alles Relativ, was aber die Definition nicht her gibt.

VG
Member: aqui
aqui May 20, 2019 at 14:33:41 (UTC)
Goto Top
Bei freien Tools sind Bird oder Quagga wie immer deine besten Freunde ! Die können auch ECMP. Bird ganz sicher.
Besser noch du nutzt einen dedizierten Router dafür.
Mikrotik Router können allesamt auch BGP und ECMP sowieso !
Member: C.R.S.
C.R.S. May 20, 2019 at 19:45:20 (UTC)
Goto Top
Hallo Aqui,

Mikrotik da zu limitiert, wie VyOS. Dediziert ist immer besser, aber in dem Fall muss Hardware mit bis zu 64 GB RAM auch mal andere Funktionen mit erfüllen. Eben ein Heimspiel für die Sense-Projekte, wenn dieser Bug nicht wäre.

Bird und Quagga unterstützen das schon, aber die verwalten ja nur die Routen. ECMP ist ein Kernel-Feature, das auf Linux funktioniert, auf FreeBSD nicht.
Es gibt offenbar kein gleichwertiges Projekt zu pfSense auf Linux-Basis. GUI ist bei triftigen Gründen kein Muss, aber die Administrations-Hürden müssen schon ziemlich niedrig bleiben. Endian schaue ich mir wahrscheinlich noch an, aber das bringt die Routing-Funktionen wohl nicht mit. Bevor ich die in so einer Lösung nachrüste, würde ich das dann doch auf ein blankes Linux aufsetzen und hoffen, dass die Config-Files überschaubar bleiben.

Grüße
Richard
Member: aqui
aqui May 21, 2019 at 07:08:17 (UTC)
Goto Top
Bird und Quagga gibt es ja auch als Erweiterung in pfSense über die Package Verwaltung. Ist die Frage ob sich das anders verhält.
Member: C.R.S.
C.R.S. May 21, 2019 at 07:16:36 (UTC)
Goto Top
Nein, wie gesagt, es geht auf FreeBSD nicht. Du hast natürlich in deren Tables mehrere Routen zum selben Ziel, entsprechend deiner OSPF/BGP-Konfiguration, aber der Kernel ignoriert die und kann nur eine zu einer Zeit nutzen. Metriken werden beachtet; bei "equal cost" hingegen, wird immer die erste Route von mehreren verwendet. Das ist reines Failover.
Member: aqui
aqui May 21, 2019 at 07:18:15 (UTC)
Goto Top
Ist der Fehler im BSD irgendwo dokumentiert oder beschrieben ?
Member: C.R.S.
C.R.S. May 21, 2019 at 17:30:30 (UTC)
Goto Top
Ja, erster Link im Thema.

Dass es auf BSD nicht geht, liegt ja erst mal daran, dass die Kernel-Option nicht genutzt wird:
https://github.com/pfsense/FreeBSD-src/blob/RELENG_2_4_4/sys/amd64/conf/ ...
https://github.com/opnsense/core/issues/2752

Aus dem Thread, auf den der Bug-Report oben verweist, ging ein Patch-Vorschlag hervor, den ich noch ausprobieren will:
http://freebsd.1045724.x6.nabble.com/How-to-enable-ECMP-flow-based-forw ...
Member: C.R.S.
C.R.S. May 30, 2019 at 18:24:47 (UTC)
Goto Top
Es funktioniert im Prinzip, wobei man nicht nur den Kernel, sondern auch FRR dafür anpassen muss, da die offiziellen Pakete nur für einen Pfad kompiliert sind.
Für pfSense 2.5.0 ist es geplant: https://redmine.pfsense.org/issues/9544