fenris14
Goto Top

OPNsense APU6B4 Routing und VPN Performance

Hallo,

ich habe hier zwei APU6B4 im HA-Cluster unter OPNsense laufen. Die DSL-Anbindung (16Mbit/s) sind sowieso nicht so schnell als das es auffallen würde, aber derzeit habe ich unter Iperf3 einen maximal Durchsatz von 200Mbit/s. Ansonsten läuft der Rest ordentlich.

Hier wird von diversen Optimierungen gesprochen:

https://teklager.se/en/knowledge-base/opnsense-performance-optimization/

Hier wird allerdings davon gesprochen, das die Optimierungen ab den neueren Versionen (selbst ist OPNsense 23.1.3 installiert) nicht mehr greifen:

https://forum.opnsense.org/index.php?topic=27676.0

Was ist den nun richtig? Was kann man noch optimieren oder ist das das Ende der Fahnenstange?

Bisher habe ich noch keine weiteren Einstellungen im Bezug auf Perfomance-Tuning vorgenommen. OpenVPN Site-2-Site geht ordentlich und wie erwartet bei 16Mbit/s. Allerdings hatte ich bei IPSec (AES256, SHA256, DH31 Curve 25519) VTI Probleme sobald die APU etwas forwarden musste. Dann traten immense Paketverluste auf. Sobald aber nur gegenseitig die VTI angepingt wurden, war alles prima. Die Frage generell: Ist IPsec+VTI+BGP+HA-Failover schon zu hart für die APU?

Grüße

Content-ID: 6310177630

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

Ausgedruckt am: 21.11.2024 um 21:11 Uhr

Philippe27
Lösung Philippe27 11.03.2023 um 09:50:15 Uhr
Goto Top
Hallo

Für ein HA System habe ich die APU nur als Test verwendet, was aber schon etwas träge war. Paketfehler sind mir aber nicht aufgefallen.

Ich bin Fan von APU's für kleinere Umgebungen, aber beachte immer:
- BIOS Update der APU ausführen (Werkszustand hat den CPU Boost auf 1,4GHz nicht freigeschalten)
- AES NI in der OpnSense noch manuell aktivieren. Hier ein guter Link -> https://forum.opnsense.org/index.php?topic=3881.0

Aktiviere auch den Temperatur Sensor der CPU und schau ob, vor allem bei selbst gebauten APU's, der CPU Metallklotz sauber montiert wurde. (50 - 60°C sind normal bei der APU)

Gruss
Philippe
Fenris14
Fenris14 11.03.2023 aktualisiert um 10:50:03 Uhr
Goto Top
Zitat von @Philippe27:

Hallo

Für ein HA System habe ich die APU nur als Test verwendet, was aber schon etwas träge war. Paketfehler sind mir aber nicht aufgefallen.

Ich bin Fan von APU's für kleinere Umgebungen, aber beachte immer:
- BIOS Update der APU ausführen (Werkszustand hat den CPU Boost auf 1,4GHz nicht freigeschalten)
- AES NI in der OpnSense noch manuell aktivieren. Hier ein guter Link -> https://forum.opnsense.org/index.php?topic=3881.0

Aktiviere auch den Temperatur Sensor der CPU und schau ob, vor allem bei selbst gebauten APU's, der CPU Metallklotz sauber montiert wurde. (50 - 60°C sind normal bei der APU)

Gruss
Philippe

Es ist im Endeffekt für eine kleine Umgebung. Auch wenn der Bedarf an BGP was anderes suggerieren mag. In erster Linie geht es um Automatisierung in der Standortvernetzung und Bequemlichkeit... denn niemand hat Lust bei einem neuen Subnetz durch alle Router zu rennen und manuell das Routing anzupassen.

Da steht ein kleiner Server und vielleicht vier Arbeitsplätze. Mir geht es nur darum keine Leistung sinnlos liegen zu lassen auch wenn man davon, mangels ordentlicher DSL-Anbindung, erstmal nicht profitieren kann.

BIOS-Update werde ich mal die Tage machen. Ist das für alle APUs gleich? Auch für die neueren Modelle?

So wie hier beschrieben...

https://teklager.se/en/knowledge-base/apu-bios-upgrade/

Zum Thema AESNI: Soweit ich das deinem Link entnehmen konnte, wird es automatisch gesetzt. In den älteren Versionen war das wohl nicht der Fall. Bei aktivieren des Moduls, wird auch angezeigt das es bereits geladen ist. Siehe hier:

screenshot 2023-03-11 104127

screenshot 2023-03-11 103346

Mein Datendurchsatz-Test war allerdings sinnlos wie ich feststellen musste. Da Iperf3 sehr CPU-lastig ist und single-threaded die APU nicht genügend Leistung erbringen kann um den Traffic zu bewältigen. Man müsste eher einen Rechner vor NAT, also am WAN, und einen Rechner im LAN verwenden und dann den Durchsatz testen.
commodity
commodity 11.03.2023 um 13:00:32 Uhr
Goto Top
Man müsste eher einen Rechner vor NAT, also am WAN, und einen Rechner im LAN verwenden und dann den Durchsatz testen.
Das wäre auch die korrekte Vorgehensweise. Den Durchsatz von Routern misst man grundsätzlich mit Endgeräten hinter dem Router, nicht auf dem Router selbst. Egal, ob innerhalb des LAN oder von WAN zu LAN - je nachdem, was man wissen möchte. Den Grund dafür hast Du ja herausgefunden, +1

Viele Grüße, commodity
aqui
aqui 11.03.2023 aktualisiert um 16:42:25 Uhr
Goto Top
VTI Probleme sobald die APU etwas forwarden musste.
MSS Clamping hast du für VPN aktiviert?
Habe hier VTIs mit OSPF laufen (IKEv2, AES256-GCM, SHA2, DH14) und keinerlei Probleme sowohl auf einem APU1 als auch APU4 mit recommendetem 4.17.03er BIOS was auch den 1,4GHz Burst Mode freischaltet. TSO und LRO sind auf den Interfaces aktiv.
Fenris14
Fenris14 11.03.2023 um 17:08:55 Uhr
Goto Top
Zitat von @aqui:

VTI Probleme sobald die APU etwas forwarden musste.
MSS Clamping hast du für VPN aktiviert?
Habe hier VTIs mit OSPF laufen (IKEv2, AES256-GCM, SHA2, DH14) und keinerlei Probleme sowohl auf einem APU1 als auch APU4 mit recommendetem 4.17.03er BIOS was auch den 1,4GHz Burst Mode freischaltet. TSO und LRO sind auf den Interfaces aktiv.

Gibt es da eine extra Einstellung für IPsec? Wenn ja, wo? Kann da nichts entdecken.

Kenne nur die Option unter Firewall>Settings>Normalization "Disable interface scrub". Oder soll ich da eine Extra Rule unter "Detailed Settings" erstellen?
aqui
aqui 11.03.2023 um 17:30:30 Uhr
Goto Top
Gibt es da eine extra Einstellung für IPsec?
Bei pfSense ja...
vpnmss
Bei der OPNsense ist das unter Firewall: Settings: Normalisation
Fenris14
Fenris14 11.03.2023 um 17:38:19 Uhr
Goto Top
Zitat von @aqui:

Gibt es da eine extra Einstellung für IPsec?
Bei pfSense ja...
vpnmss
Bei der OPNsense ist das unter Firewall: Settings: Normalisation

Das habe ich ebenfalls gefunden. Danke. Man muss da nochmal ein extra Setting für das jeweilige Interface anlegen.

Nochmal eine Frage zum Flashen:

Was hat es hiermit aufsich? Kenne das nur von der APU1. Was wäre hier auszuwählen und wo kann ich Informationen dazu finden?

screenshot 2023-03-11 173636
aqui
aqui 12.03.2023 aktualisiert um 12:09:12 Uhr
Goto Top
Man muss da nochmal ein extra Setting für das jeweilige Interface anlegen.
Bahnhof, Ägypten??
Was meinst du damit und WO sollte das denn sein?? TCO und LRO muss man in der Tat in der pfSense aktivieren wenn man Bare Metal nutzt (APU etc.) weil das im Default deaktiviert ist (nur pfSense). Das sollte nur dann deaktiviert werden wenn so eine Firewall in einer VM rennt und die virtuellen NICs nicht mit Offloading umgehen können. Z.B. vmxnet3 vNICs können damit umgehen, viele andere aber leider nicht was dann zu massiven Performance Verlusten führen kann in einer VM Umgebung.
Bei OPNsense sind diese Features aber immer out of the Box aktiv. Was also meinst du mit deinem geheimnisvollen "Setting"? face-wink
Was hat es hiermit aufsich? Kenne das nur von der APU1.
Das zeigt klar das deine HW definitiv ein APU1 ist.
Alles was APU2 und höher ist erkennt das flashrom Kommando ohne spezifische Angabe der Flashchips!
Fenris14
Fenris14 13.03.2023 um 09:24:53 Uhr
Goto Top
Es ging mir darum wo die Einstellung in der GUI ist. Das "geheimnisvolle Setting" wird hier gesetzt:

screenshot 2023-03-13 090347

Danach hat man auch die Einstellung

screenshot 2023-03-13 090441

Statt über irgendwas zu schwadronieren wie es sonst hätte sein können, wäre ein kurzer Hinweis ausreichend und zielführender gewesen. ;)

Bei der pfSense ist es unter System>Advanced>Firewall&NAT zu finden. Bei der OPNsense ist es unter der "Firewall" angeordnet und kann pro Interface separat gesetzt werden. Heißt bei der pfSense wird es global für alle VPN-Interfaces gesetzt. Nur darum ging es und nicht mehr.

Zur Firmware: Wäre mir neu das es eine APU1 mit SFP-Anschluss gibt und schwer zu glauben das mich ein relativ bekannter Versand (Varia-Store) mich in dieser Sache be###en sollte. Es wurde explizit eine APU6B4 bestellt. Auch per dmidecode wird einem eine APU6 gezeigt.

Da ich alles doppelt habe, werde ich auf Gutglück mal den ersten Vorschlag verwenden. Sollte es schief gehen kann man mit entsprechenden Adapter das BIOS überbrücken und wieder neu bespielen.
aqui
aqui 13.03.2023 aktualisiert um 09:51:44 Uhr
Goto Top
Das "geheimnisvolle Setting" wird hier gesetzt:
Ist aber bei der OPNsense gar nicht nötig weil der erste Eintrag ja schon sagt das MSS Clamping per Default aktiv ist bei VPNs. 😉
Keine Ahnung warum du jetzt etwas ausfallend wirst, denn diese Hinweise stehen doch oben alle inklusive Screenshot und keinesfalls war das "schwadronierend" gemeint.
Mit dem Flash ist sehr verwunderlich.
Führe das Flashrom Kommando einfach ohne Schnickschnack mit
flashrom -w <dateiname.rom> -p internal
aus dann sollte es sofort klappen und die Flash Chips automatisch erkannt werden.
Fenris14
Fenris14 13.03.2023 um 10:13:14 Uhr
Goto Top
Keine Ahnung warum du jetzt etwas ausfallend wirst, denn diese Hinweise stehen doch oben alle inklusive Screenshot und keinesfalls war das "schwadronierend" gemeint.

Das war nur eine kleine Spitze auf:

Bahnhof, Ägypten??

Was also meinst du mit deinem geheimnisvollen "Setting"?

Ich will mich hier nicht streiten. Ich erwarte konstruktive und knackige Antworten, genauso wie es von mir ebenfalls erwartet wird und ich mich nach Bestem Wissen darum bemühe. Ich schätze dein Wissen sehr und du hast dich hier seit Jahren als Instanz etabliert. Aber manchmal kommen da schon leicht herablassende Elemente in deinen Texten, die ich zwar meistens ignoriere, aber eigentlich fehl am Platz sind.

Mit dem Flash ist sehr verwunderlich.
Führe das Flashrom Kommando einfach ohne Schnickschnack mit
flashrom -w <dateiname.rom> -p internal
aus dann sollte es sofort klappen und die Flash Chips automatisch erkannt werden.

Das habe ich so bereits, wie gewohnt mehrmals an mehreren APU6-Boards genauso probiert. Immer der gleiche Hinweis. Ich stehe gerade in Kontakt mit PCengines und hoffe um Aufklärung. Sollte ich eine Antwort erhalten, lasse ich euch das wissen.
Fenris14
Fenris14 13.03.2023 aktualisiert um 12:33:46 Uhr
Goto Top
Mit dem TinyCore-Image und dem dort angepassten flashrom geht es problemlos. Scheinbar wird der Hinweis nur getriggert, wenn man das flashrom aus den offiziellen Paketquellen verwendet. Das ist leider nicht optimal. Da man nicht immer vor Ort sein kann um ein BIOS Upgrade durchzuführen. Da die Boards als VPN-Gateway verwendet werden und einige 100 Kilometer entfernt liegen... nicht gerade schön.

Die Frage ist halt wie oft man ein Bios Upgrade braucht. Muss man vielleicht für das eine Mal dann in den sauren Apfel beißen und hinfahren.

Alternativ: Risiko in Kauf nehmen und mit "-c" eine der beiden Definitionen auswählen. Soweit ich da den PCengines Support verstanden habe, sind die genannten alle untereinander äquivalent/gleichwertig.

Edit: Gerade nochmal die Bestätigung erhalten. Bei Flashrom aus den offiziellen Paketquellen muss bei einer APU4B6 folgender Befehl verwendet werden...

flashrom -w apu6_v4.17.0.3.rom -p internal -c W25Q64BV/W25Q64CV/W25Q64FV