# OPNsense LAGG: Link Aggregation & Physisches Load Balancing
TL;DR / Management Summary Während wir in Artikel 549 bereits die Grundlagen von LACP behandelt haben, fokussiert sich dieser Artikel auf die strategische Einbettung von Link Aggregation Groups (LAGG) in die RZ-Infrastruktur. Wir nutzen LAGG nicht nur für Redundanz, sondern als skalierbaren Backbone für inter-VLAN Routing. Ein Senior Admin kombiniert LAGG mit Flow-Hashing-Optionen, um den I/O-Durchsatz für hunderte parallele VM-Sessions in einem Proxmox-Cluster zu optimieren.
# 1. Einführung & LAGG-Modi
Teamwork auf Layer 2.
OPNsense (FreeBSD) unterstützt verschiedene Aggregations-Mechanismen:
- LACP (802.3ad): Dynamisch. Empfohlen für Switche, die LACP unterstützen.
- Loadbalance: Statisch. Verteilt Pakete auf alle Karten (kein Support am Switch nötig, oft instabil).
- Failover: Nur eine Karte ist aktiv (Ideal für Billig-Switche ohne Management).
- Roundrobin: Reihum (Nur in isolierten Lab-Netzen nutzen!).
# 2. LAGG Design-Szenarien
Wo man bündeln sollte.
# 1. Der Core-Trunk (Firewall zu Switch)
Verbinden Sie die OPNsense mit zwei 10G Ports an Ihren Core-Switch.
- Vorteil: Erhöht das Limit von 10G auf 20G für parallele Transfers.
- Vorteil: Schützt vor dem Ausfall eines Transceivers oder Kabels.
# 2. Der DMZ-Aggregator
Fassen Sie 4x 1G Ports zusammen, um bandbreitenstarke DMZ-Server (z.B. Proxy-Cluster) anzubinden.
# 3. Deep Dive: Hashing Algorithmen
Wie wird verteilt?
Der LAGG-Treiber entscheidet bei jedem Paket, über welchen physischen Port es geht.
- Standard: Layer 2 (MAC) + Layer 3 (IP) Hash.
- Problem: Wenn nur zwei Server miteinander sprechen (z.B. Backup), wird immer nur ein Link des Teams genutzt.
- Lösung: Stellen Sie den Hash-Algorithmus (falls vom Switch unterstützt) auf Layer 4 (Ports) um, um auch parallele Verbindungen zwischen den gleichen zwei IPs zu verteilen.
# 4. Day-2 Operations: LAGG & VLANs
Die logische Schichtung.
In 99% der professionellen Setups ist ein LAGG die Basis für VLANs.
- Reihenfolge:
- Physische Interfaces (
igb0,igb1). - LAGG Interface erstellen (
lagg0). - VLANs auf
lagg0anlegen (vlan0.10,vlan0.20).
- Physische Interfaces (
- Wichtig: Weisen Sie niemals IPs direkt dem
lagg0zu, wenn Sie VLANs nutzen.
# 5. Troubleshooting & “War Stories”
Wenn das Team nicht harmoniert.
# Top 3 Fehlerbilder
-
Symptom: LACP-Status
DEGRADED.- Ursache: Eine Karte hat nur 100 Mbit statt 1 Gbit ausgehandelt. LACP deaktiviert den langsameren Link oft automatisch.
- Lösung:
ifconfig lagg0prüfen und Kabel tauschen.
-
Symptom: Paketverluste bei hohem Traffic.
- Ursache: “Out-of-Order” Pakete durch falsch konfiguriertes Load Balancing am Switch.
- Lösung: Stellen Sie sicher, dass der Switch den gleichen Hash-Algorithmus nutzt wie die OPNsense.
-
Symptom: OPNsense friert beim Booten ein.
- Ursache: Zirkuläre Abhängigkeit (LACP auf dem Management-Interface).
# “War Story”: Der “Zufalls-Giga”
Ein Admin bündelte 4x 1G NICs für einen Backup-Server. Er wunderte sich, warum das Backup trotzdem nur mit 110 MB/s (1G) lief.
Die Entdeckung: Er startete nur einen einzigen rsync Prozess. LACP schickt eine einzelne TCP-Sitzung immer über das gleiche Kabel, um Paket-Reihenfolge-Fehler zu vermeiden.
Lösung: Wir stellten das Backup auf parallel-rsync mit 8 Streams um. Plötzlich stieg der Durchsatz auf 400 MB/s.
Lehre: LAGG ist kein Zaubermittel für Single-Stream Performance. Es skaliert nur über die Breite (viele Sessions).
# 6. Monitoring & Reporting
Link-Failure Monitoring.
# SNMP & If-Mib
Überwachen Sie die OIDs der einzelnen physischen Member-Interfaces.
- KPI:
ifOperStatus. Ein Alarm muss ausgelöst werden, wennigb1Down geht, auch wennlagg0noch Up ist.
# 7. Fazit & Empfehlung
LAGG ist die Basis für ein robustes Datacenter-Gateway.
- Empfehlung: Nutzen Sie LACP wann immer möglich. Es ist das einzige Protokoll, das Fehler auf beiden Seiten aktiv erkennt.
- Strategie: Wenn Sie eine VM-Umgebung (Proxmox) nutzen, lassen Sie Proxmox das LAGG-Handling übernehmen (Linux Bond) und reichen Sie der OPNsense nur die fertige Bridge (
vmbrX) rein.
# Anhang: Cheatsheet
| Aufgabe | Pfad / Befehl |
|---|---|
| LAGG Konsole | Interfaces -> Other Types -> LAGG |
| Status Shell | ifconfig lagg0 |
| Member-Übersicht | netstat -i |
| Debugging | `dmesg |