OPNsense HA Erklärung
Version vom 20. Februar 2026, 15:23 Uhr von Thomas.will (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „= OPNsense HA – Funktionsweise und Zusammenspiel von CARP, pfsync und XMLRPC = == Grundprinzip == * Ein OPNsense HA-Cluster besteht aus zwei Firewalls: **…“)
OPNsense HA – Funktionsweise und Zusammenspiel von CARP, pfsync und XMLRPC
Grundprinzip
- Ein OPNsense HA-Cluster besteht aus zwei Firewalls:
- Master (aktiv)
- Backup (passiv)
- Beide Systeme besitzen:
- Eigene Interface-IP-Adressen
- Gemeinsame virtuelle IP-Adressen (VIPs)
- Die VIPs sind die produktiv genutzten Gateway-Adressen im Netz
- Clients kommunizieren ausschließlich mit diesen VIPs
CARP (Common Address Redundancy Protocol)
- CARP stellt die gemeinsame virtuelle IP-Adresse bereit
- Diese VIP wird immer nur von genau einem Knoten aktiv beantwortet
- Dieser Knoten befindet sich im Zustand MASTER
- Der andere Knoten befindet sich im Zustand BACKUP
- Die Firewalls senden CARP-Advertisements über Multicast:
- IPv4: 224.0.0.18
- IPv6: ff02::12
- Fällt der MASTER aus:
- Stoppen die Advertisements
- Der BACKUP erkennt dies
- Der BACKUP übernimmt automatisch die VIP
- Der BACKUP wird neuer MASTER
- Für die Netze bleibt die VIP weiterhin erreichbar
- Default Gateway und Dienste bleiben funktionsfähig
Virtuelle MAC-Adresse
- Jede CARP-VIP besitzt eine eigene virtuelle MAC-Adresse
- Diese MAC-Adresse „wandert“ beim Failover zwischen den Firewalls
- Switches und Clients lernen die neue Zuordnung automatisch per ARP
pfsync (State Synchronisation)
- pfsync synchronisiert die Firewall-Zustandstabelle (States)
- Laufende TCP/UDP-Verbindungen werden übertragen
- Beispiel:
- Client hat aktive HTTPS-Verbindung
- MASTER fällt aus
- BACKUP übernimmt VIP
- BACKUP kennt die Session bereits
- Verbindung bleibt bestehen
- Ohne pfsync:
- Alle Sessions würden abbrechen
Synchronisationsnetz (SYN Interface)
- Dediziertes Interface zwischen beiden Firewalls
- Wird ausschließlich für:
- pfsync (State Sync)
- XMLRPC (Config Sync)
verwendet
- Keine CARP-VIP auf diesem Interface!
XMLRPC (Configuration Synchronisation)
- Synchronisiert die Konfiguration vom MASTER zum BACKUP
Beispiele:
- Aliases
- NAT-Regeln
- Firewall-Regeln
- Virtual IPs
- VPN-Konfigurationen
- Zertifikate
- Funktioniert ausschließlich:
- MASTER → BACKUP
- Der BACKUP führt keinen aktiven Push durch
Rollenverteilung ab OPNsense 24.7
- MASTER
- Besitzt XMLRPC-Konfiguration:
- Synchronize Config
- Remote Username
- Remote Password
- Services to synchronize
- BACKUP
- Keine XMLRPC-Konfiguration
- Felder bleiben leer!
Zusammenspiel im Betrieb
- Normalbetrieb
- MASTER:
- Beantwortet VIP
- Verarbeitet Traffic
- Synchronisiert Konfiguration per XMLRPC
- Synchronisiert States per pfsync
- BACKUP:
- Lauscht auf CARP
- Empfängt Config Updates
- Empfängt State Updates
- Fehlerfall (MASTER fällt aus)
- BACKUP erkennt fehlende CARP-Advertisements
- Übernimmt VIP
- Wird MASTER
- Besitzt:
- Aktuelle Konfiguration
- Aktive Session-Zustände
- Failover erfolgt unterbrechungsfrei
Failback
- Ursprünglicher MASTER kehrt zurück
- Übernimmt VIP wieder (abhängig von advskew)
- Synchronisiert States erneut
Promiscuous Mode (Virtualisierung)
- In virtualisierten Umgebungen erforderlich
- Grund
- CARP verwendet virtuelle MAC-Adressen
- Hypervisor verwirft fremde MAC-Adressen standardmäßig
- Ohne Promiscuous Mode
- CARP-Frames erreichen den Partner nicht
- VIP wird nicht korrekt übernommen
- HA-Funktion gestört