<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://techcorner.max-it.de/index.php?action=history&amp;feed=atom&amp;title=OPNsense_-_Hochverf%C3%BCgbarkeit_mit_CARP_und_pfsync</id>
	<title>OPNsense - Hochverfügbarkeit mit CARP und pfsync - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://techcorner.max-it.de/index.php?action=history&amp;feed=atom&amp;title=OPNsense_-_Hochverf%C3%BCgbarkeit_mit_CARP_und_pfsync"/>
	<link rel="alternate" type="text/html" href="https://techcorner.max-it.de/index.php?title=OPNsense_-_Hochverf%C3%BCgbarkeit_mit_CARP_und_pfsync&amp;action=history"/>
	<updated>2026-10-09T00:57:51Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in maxTechCorner</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://techcorner.max-it.de/index.php?title=OPNsense_-_Hochverf%C3%BCgbarkeit_mit_CARP_und_pfsync&amp;diff=3918&amp;oldid=prev</id>
		<title>imported&gt;TechCorner-Redaktion: Neuer Artikel: HA-Cluster mit CARP, pfsync und Konfigurationssynchronisation, Stand OPNsense 26.7</title>
		<link rel="alternate" type="text/html" href="https://techcorner.max-it.de/index.php?title=OPNsense_-_Hochverf%C3%BCgbarkeit_mit_CARP_und_pfsync&amp;diff=3918&amp;oldid=prev"/>
		<updated>2026-10-08T00:00:00Z</updated>

		<summary type="html">&lt;p&gt;Neuer Artikel: HA-Cluster mit CARP, pfsync und Konfigurationssynchronisation, Stand OPNsense 26.7&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Steckbrief&lt;br /&gt;
| gilt_fuer   = OPNsense 26.1 und 26.7 (Interfaces → Virtual IPs, System → High Availability)&lt;br /&gt;
| bereich     = IT-Security&lt;br /&gt;
| dauer       = ca. 60–90 Minuten (Cluster aus zwei Firewalls mit WAN und LAN)&lt;br /&gt;
| rechte      = Administrator (OPNsense-WebUI) auf beiden Firewalls, Zugriff auf die Switch-Konfiguration&lt;br /&gt;
| stand       = Oktober 2026 (OPNsense 26.7.5)&lt;br /&gt;
}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Hochverfügbarkeit mit CARP in OPNsense&amp;#039;&amp;#039;&amp;#039; macht aus zwei Firewalls einen ausfallsicheren [[Cluster]]: Fällt die aktive Firewall (Master) aus oder verliert sie eine Schnittstelle, übernimmt die zweite (Backup) automatisch die gemeinsamen virtuellen IP-Adressen – bestehende Verbindungen laufen dank &amp;#039;&amp;#039;&amp;#039;pfsync&amp;#039;&amp;#039;&amp;#039; weiter. Drei Bausteine greifen dabei ineinander: &amp;#039;&amp;#039;&amp;#039;CARP&amp;#039;&amp;#039;&amp;#039; für die virtuellen Adressen, &amp;#039;&amp;#039;&amp;#039;pfsync&amp;#039;&amp;#039;&amp;#039; für die Zustandstabelle der Firewall und die &amp;#039;&amp;#039;&amp;#039;Konfigurationssynchronisation&amp;#039;&amp;#039;&amp;#039; (XMLRPC) vom Master zum Backup.&lt;br /&gt;
&lt;br /&gt;
Dieser Artikel zeigt Aufbau und Einrichtung eines Active/Passive-Clusters mit OPNsense 26.7, die Anforderungen an das Netzwerk, die Integration weiterer Dienste (DHCP, VPN, Routing), Wartung und Updates ohne Ausfall sowie die Fehlersuche bei Split-Brain und Co.&lt;br /&gt;
&lt;br /&gt;
== Bausteine der OPNsense-Hochverfügbarkeit ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Baustein !! Aufgabe !! Konfiguration&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;CARP&amp;#039;&amp;#039;&amp;#039; (Common Address Redundancy Protocol) || Virtuelle IP-Adressen, die immer auf der aktiven Firewall liegen. Der Master sendet Ankündigungen (IP-Protokoll 112, standardmäßig Multicast); bleiben sie aus, übernimmt der Backup. Vergleichbar mit [[VRRP]]. || &amp;#039;&amp;#039;Interfaces → Virtual IPs&amp;#039;&amp;#039;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;pfsync&amp;#039;&amp;#039;&amp;#039; || Repliziert die Zustandstabelle (States) der Firewall, damit bestehende Verbindungen den Wechsel überstehen || &amp;#039;&amp;#039;System → High Availability → Settings&amp;#039;&amp;#039;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Konfigurationssynchronisation&amp;#039;&amp;#039;&amp;#039; (XMLRPC) || Überträgt ausgewählte Konfigurationsbereiche (Regeln, NAT, Aliase, VIPs, Dienste) vom Master zum Backup – nur auf Befehl || &amp;#039;&amp;#039;System → High Availability → Settings&amp;#039;&amp;#039; und &amp;#039;&amp;#039;Status&amp;#039;&amp;#039;&lt;br /&gt;
|}&lt;br /&gt;
Wichtige Begriffe:&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;VHID&amp;#039;&amp;#039;&amp;#039; – Kennung einer CARP-Gruppe; pro Netz eine eigene, auf beiden Firewalls identisch.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Advbase / Advskew&amp;#039;&amp;#039;&amp;#039; – Ankündigungsintervall (Standard 1 Sekunde) und Verzögerung; die Firewall mit dem &amp;#039;&amp;#039;&amp;#039;niedrigeren Skew&amp;#039;&amp;#039;&amp;#039; wird Master (Master 0, der Backup erhält nach der Synchronisation automatisch einen höheren Wert).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Preempt&amp;#039;&amp;#039;&amp;#039; – sorgt dafür, dass alle CARP-Adressen einer Firewall gemeinsam Master bzw. Backup sind.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Demotion&amp;#039;&amp;#039;&amp;#039; – Zähler, der eine Firewall für CARP unattraktiver macht (z. B. bei Dienstausfällen oder im Wartungsmodus).&lt;br /&gt;
&lt;br /&gt;
[[Datei:OPNsense-HA-CARP.png|thumb|center|750px|OPNsense-Cluster mit CARP: Master und Backup teilen sich je Netz eine virtuelle CARP-Adresse (VHID); über eine direkte Sync-Schnittstelle laufen pfsync (Zustandstabelle) und die Konfigurationssynchronisation. Clients nutzen ausschließlich die CARP-Adressen als Gateway und DNS.]]&lt;br /&gt;
&lt;br /&gt;
== Voraussetzungen und Planung ==&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Identische Schnittstellen-Zuordnung&amp;#039;&amp;#039;&amp;#039; auf beiden Firewalls (LAN = gleicher Port und gleicher interner Name wie &amp;#039;&amp;#039;opt1&amp;#039;&amp;#039; usw. – prüfen unter &amp;#039;&amp;#039;Interfaces → Overview&amp;#039;&amp;#039;), idealerweise identische Hardware bzw. Netzwerktreiber. Bei unterschiedlichen Treibern (z. B. physischer Master, virtueller Backup) funktioniert pfsync nicht, da sich die Schnittstellennamen unterscheiden.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Drei Adressen pro Netz&amp;#039;&amp;#039;&amp;#039;: eine je Firewall plus die gemeinsame CARP-Adresse – auch auf dem WAN. Vom Provider werden daher mindestens drei feste Adressen bzw. ein kleines Netz benötigt.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Eigene Sync-Schnittstelle&amp;#039;&amp;#039;&amp;#039; (direktes Kabel zwischen beiden Firewalls) für pfsync und Konfigurationssynchronisation – aus Sicherheitsgründen (Manipulation von States) und für die Leistung.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Switch-Infrastruktur&amp;#039;&amp;#039;&amp;#039;: beide Firewalls in derselben Layer-2-Domäne, möglichst an einem Switch, einem Stack oder einem [[MLAG]]-Verbund (siehe unten).&lt;br /&gt;
&lt;br /&gt;
=== Beispiel-Szenario ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Netz !! Master (fw1) !! Backup (fw2) !! CARP-Adresse !! VHID&lt;br /&gt;
|-&lt;br /&gt;
| WAN &amp;lt;code&amp;gt;172.18.0.0/24&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;172.18.0.101&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;172.18.0.102&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;172.18.0.100&amp;lt;/code&amp;gt; || 1&lt;br /&gt;
|-&lt;br /&gt;
| LAN &amp;lt;code&amp;gt;192.168.1.0/24&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;192.168.1.10&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;192.168.1.20&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;192.168.1.1&amp;lt;/code&amp;gt; || 3&lt;br /&gt;
|-&lt;br /&gt;
| PFSYNC &amp;lt;code&amp;gt;10.0.0.0/30&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;10.0.0.1&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;10.0.0.2&amp;lt;/code&amp;gt; || – || –&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Einrichtung Schritt für Schritt ==&lt;br /&gt;
=== Schritt 1: Schnittstellen und Grundregeln (beide Firewalls) ===&lt;br /&gt;
* Physische Adressen wie in der Tabelle vergeben.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Firewall → Rules&amp;#039;&amp;#039;&amp;#039;: Auf allen Schnittstellen mit CARP-Adressen Pakete des Protokolls &amp;#039;&amp;#039;&amp;#039;CARP&amp;#039;&amp;#039;&amp;#039; erlauben (auf LAN deckt die Standardregel das meist ab, auf WAN ist eine Regel nötig).&lt;br /&gt;
* Auf der PFSYNC-Schnittstelle eine Regel, die den Verkehr vom Partner erlaubt (mindestens pfsync und den Zugriff auf die Weboberfläche für die Synchronisation).&lt;br /&gt;
&lt;br /&gt;
=== Schritt 2: CARP-Adressen (nur auf dem Master) ===&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Interfaces → Virtual IPs → Settings&amp;#039;&amp;#039;&amp;#039; → &amp;#039;&amp;#039;&amp;#039;+&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Feld !! WAN !! LAN&lt;br /&gt;
|-&lt;br /&gt;
| Mode || CARP || CARP&lt;br /&gt;
|-&lt;br /&gt;
| Interface || WAN || LAN&lt;br /&gt;
|-&lt;br /&gt;
| Network / Address || &amp;lt;code&amp;gt;172.18.0.100/24&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;192.168.1.1/24&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Password || langes, zufälliges Kennwort || eigenes Kennwort&lt;br /&gt;
|-&lt;br /&gt;
| VHID Group || 1 || 3&lt;br /&gt;
|-&lt;br /&gt;
| Advbase / Advskew || 1 / 0 || 1 / 0&lt;br /&gt;
|-&lt;br /&gt;
| Description || VIP WAN || VIP LAN&lt;br /&gt;
|}&lt;br /&gt;
CARP-Adressen immer mit &amp;#039;&amp;#039;&amp;#039;derselben Netzmaske wie die Schnittstelle&amp;#039;&amp;#039;&amp;#039; anlegen (bei &amp;lt;code&amp;gt;/24&amp;lt;/code&amp;gt; also &amp;lt;code&amp;gt;/24&amp;lt;/code&amp;gt;, nicht &amp;lt;code&amp;gt;/32&amp;lt;/code&amp;gt;). Für weitere Adressen im selben Netz (z. B. zusätzliche öffentliche IPs) statt neuer VHIDs &amp;#039;&amp;#039;&amp;#039;IP-Aliase&amp;#039;&amp;#039;&amp;#039; mit der VHID der vorhandenen CARP-Adresse verwenden – das reduziert den CARP-Verkehr. IP-Aliase werden nicht synchronisiert und müssen auf beiden Firewalls angelegt werden.&lt;br /&gt;
&lt;br /&gt;
=== Schritt 3: Source NAT auf die CARP-Adresse ===&lt;br /&gt;
Ausgehender Verkehr muss die &amp;#039;&amp;#039;&amp;#039;CARP-Adresse&amp;#039;&amp;#039;&amp;#039; des WAN als Absender verwenden, sonst brechen Verbindungen beim Wechsel ab. &amp;#039;&amp;#039;&amp;#039;Firewall → NAT → Source NAT&amp;#039;&amp;#039;&amp;#039;: Modus &amp;#039;&amp;#039;Manual&amp;#039;&amp;#039; oder &amp;#039;&amp;#039;Hybrid&amp;#039;&amp;#039; und eine Regel &amp;#039;&amp;#039;Interface WAN, Quelle LAN-Netz (bzw. die internen RFC-1918-Netze), Übersetzung 172.18.0.100&amp;#039;&amp;#039;. Als Quelle &amp;#039;&amp;#039;&amp;#039;nicht&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;any&amp;#039;&amp;#039; wählen – sonst würde auch Verkehr der Firewall selbst übersetzt, und der Backup erreicht das Internet nicht mehr (z. B. für Updates).&lt;br /&gt;
&lt;br /&gt;
=== Schritt 4: pfsync und Konfigurationssynchronisation ===&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;System → High Availability → Settings&amp;#039;&amp;#039;&amp;#039; auf dem &amp;#039;&amp;#039;&amp;#039;Master&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Einstellung !! Wert&lt;br /&gt;
|-&lt;br /&gt;
| Synchronize all states via || PFSYNC-Schnittstelle&lt;br /&gt;
|-&lt;br /&gt;
| Synchronize Peer IP || &amp;lt;code&amp;gt;10.0.0.2&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Sync compatibility || auf beiden Firewalls gleich (Standard)&lt;br /&gt;
|-&lt;br /&gt;
| Synchronize Config || &amp;lt;code&amp;gt;10.0.0.2&amp;lt;/code&amp;gt; (Sync-Adresse des Backups)&lt;br /&gt;
|-&lt;br /&gt;
| Remote System Username / Password || Benutzer mit Administratorrechten auf dem Backup (am besten ein eigener Sync-Benutzer)&lt;br /&gt;
|-&lt;br /&gt;
| Services || zu übertragende Bereiche, z. B. Firewall-Regeln, NAT, Aliase, Virtual IPs, Zertifikate, Dienste wie Kea DHCP, Unbound, IPsec, WireGuard, FRR&lt;br /&gt;
|-&lt;br /&gt;
| Disable preempt || aus (Standard) – Preempt aktiv lassen&lt;br /&gt;
|}&lt;br /&gt;
Auf dem &amp;#039;&amp;#039;&amp;#039;Backup&amp;#039;&amp;#039;&amp;#039; nur pfsync einrichten (Schnittstelle PFSYNC, Peer IP &amp;lt;code&amp;gt;10.0.0.1&amp;lt;/code&amp;gt;). Die Felder für die Konfigurationssynchronisation bleiben auf dem Backup &amp;#039;&amp;#039;&amp;#039;leer&amp;#039;&amp;#039;&amp;#039; – sonst könnte versehentlich der Backup den Master überschreiben. Tipp aus der OPNsense-Dokumentation: Master und Backup mit unterschiedlichen Themes versehen, um sie in der Oberfläche sicher zu unterscheiden.&lt;br /&gt;
&lt;br /&gt;
=== Schritt 5: Synchronisieren und testen ===&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;System → High Availability → Status&amp;#039;&amp;#039;&amp;#039; auf dem Master: Verbindung zum Backup prüfen und &amp;#039;&amp;#039;&amp;#039;Synchronize and reconfigure all&amp;#039;&amp;#039;&amp;#039; ausführen. Die CARP-Adressen erscheinen auf dem Backup mit höherem Skew.&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;Interfaces → Virtual IPs → Status&amp;#039;&amp;#039;&amp;#039;: Master zeigt &amp;#039;&amp;#039;MASTER&amp;#039;&amp;#039;, Backup &amp;#039;&amp;#039;BACKUP&amp;#039;&amp;#039; für alle VHIDs.&lt;br /&gt;
# Beide Firewalls einmal neu starten.&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;Test:&amp;#039;&amp;#039;&amp;#039; Von einem Client eine SSH-Verbindung nach außen aufbauen, unter &amp;#039;&amp;#039;Firewall → Diagnostics → States&amp;#039;&amp;#039; auf beiden Firewalls denselben State sehen und dann beim Master das Kabel ziehen bzw. den Wartungsmodus aktivieren – die SSH-Verbindung muss bestehen bleiben.&lt;br /&gt;
&lt;br /&gt;
{{Hinweis|Die Konfigurationssynchronisation erfolgt bewusst &amp;#039;&amp;#039;&amp;#039;nur auf Befehl&amp;#039;&amp;#039;&amp;#039;: Änderungen werden zuerst auf dem Master getestet, der Backup bleibt bis zur Synchronisation in einem bekannt guten Zustand. Wer automatisch synchronisieren möchte, legt auf dem Master unter &amp;#039;&amp;#039;System → Settings → Cron&amp;#039;&amp;#039; einen Job mit dem Befehl &amp;#039;&amp;#039;&amp;#039;HA update and reconfigure backup&amp;#039;&amp;#039;&amp;#039; an (z. B. täglich nachts); er läuft nur, wenn alle CARP-Adressen des Masters im Zustand &amp;#039;&amp;#039;MASTER&amp;#039;&amp;#039; sind.}}&lt;br /&gt;
&lt;br /&gt;
== Wie schnell schaltet CARP um? ==&lt;br /&gt;
Der Backup übernimmt, wenn er etwa drei Ankündigungsintervalle lang nichts vom Master hört – bei &amp;#039;&amp;#039;Advbase 1&amp;#039;&amp;#039; also nach rund &amp;#039;&amp;#039;&amp;#039;drei Sekunden&amp;#039;&amp;#039;&amp;#039;. Dank pfsync laufen bestehende TCP-Verbindungen weiter; kurze Unterbrechungen im Sekundenbereich sind normal. Mit &amp;#039;&amp;#039;Preempt&amp;#039;&amp;#039; (Standard) wechseln alle CARP-Adressen gemeinsam, damit nicht eine Firewall für WAN und die andere für LAN zuständig ist.&lt;br /&gt;
&lt;br /&gt;
Neben einem Totalausfall führt auch der &amp;#039;&amp;#039;&amp;#039;Ausfall einer einzelnen Schnittstelle&amp;#039;&amp;#039;&amp;#039; (Link down) zum Wechsel. Zusätzlich können Dienste per &amp;#039;&amp;#039;&amp;#039;Demotion&amp;#039;&amp;#039;&amp;#039; einen Wechsel auslösen – etwa OSPF über &amp;#039;&amp;#039;CARP demote&amp;#039;&amp;#039; im Plugin [[OPNsense - OSPF und OSPFv3 mit FRR|os-frr]].&lt;br /&gt;
&lt;br /&gt;
== Weitere Dienste im Cluster ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Dienst !! Hinweis !! Artikel&lt;br /&gt;
|-&lt;br /&gt;
| DHCP || Gateway und DNS als Option auf die &amp;#039;&amp;#039;&amp;#039;CARP-Adresse&amp;#039;&amp;#039;&amp;#039;; Kea mit Lease-Synchronisation (hot-standby) oder Dnsmasq mit getrennten Pools || [[OPNsense - Kea DHCP mit Hochverfügbarkeit]], [[OPNsense - Dnsmasq DHCP-Server]]&lt;br /&gt;
|-&lt;br /&gt;
| DNS (Unbound) || Clients nutzen die CARP-Adresse; Konfiguration per Synchronisation übertragen || [[OPNsense - Unbound DNS Resolver]]&lt;br /&gt;
|-&lt;br /&gt;
| WireGuard || in jeder Instanz &amp;#039;&amp;#039;&amp;#039;Depend on (CARP)&amp;#039;&amp;#039;&amp;#039; setzen; Gegenstellen verwenden die CARP-Adresse als Endpoint || [[OPNsense - WireGuard Site-to-Site und Road Warrior]]&lt;br /&gt;
|-&lt;br /&gt;
| IPsec || Local Address = CARP-Adresse des WAN || [[OPNsense - IPsec Site-to-Site route-based]]&lt;br /&gt;
|-&lt;br /&gt;
| Dynamisches Routing (FRR) || CARP Failover, CARP demote oder CARP-abhängige OSPF-Kosten || [[OPNsense - FRR Dynamisches Routing]]&lt;br /&gt;
|-&lt;br /&gt;
| PPPoE/Einwahl || Option &amp;#039;&amp;#039;Disconnect dialup interfaces&amp;#039;&amp;#039;: der Backup trennt PPP-Verbindungen und baut sie als Master neu auf || –&lt;br /&gt;
|}&lt;br /&gt;
Einträge, die auf einer Firewall bewusst anders bleiben sollen, lassen sich mit &amp;#039;&amp;#039;&amp;#039;No XMLRPC Sync&amp;#039;&amp;#039;&amp;#039; bzw. &amp;#039;&amp;#039;Disable HA sync&amp;#039;&amp;#039; (bei einzelnen Diensten) von der Synchronisation ausnehmen.&lt;br /&gt;
&lt;br /&gt;
== Netzwerk und Switches ==&lt;br /&gt;
Laut OPNsense-Dokumentation ist die Switch-Infrastruktur entscheidend für einen zuverlässigen Failover:&lt;br /&gt;
* Beide Firewalls &amp;#039;&amp;#039;&amp;#039;im selben VLAN und an derselben Switching-Fabric&amp;#039;&amp;#039;&amp;#039; – ein Switch, ein Stack oder ein MLAG-Verbund. Hängen die Firewalls an getrennten, nicht gekoppelten Switches, drohen Split-Brain, MAC-Flapping-Warnungen und langsame Umschaltungen.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;IGMP Snooping&amp;#039;&amp;#039;&amp;#039; ohne IGMP-Querier kann die CARP-Multicasts (Protokoll 112) blockieren.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Port Security / Sticky MAC&amp;#039;&amp;#039;&amp;#039; können die virtuellen CARP-MAC-Adressen (&amp;lt;code&amp;gt;00:00:5e:00:01:xx&amp;lt;/code&amp;gt;) sperren.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;MAC-Flapping-Erkennung&amp;#039;&amp;#039;&amp;#039; und &amp;#039;&amp;#039;&amp;#039;Storm Control&amp;#039;&amp;#039;&amp;#039; können CARP-Wechsel als Angriff werten bzw. Ankündigungen verwerfen.&lt;br /&gt;
* Wo Multicast nicht möglich ist (z. B. in manchen Cloud- und Virtualisierungsumgebungen), kann pro CARP-Adresse ein &amp;#039;&amp;#039;&amp;#039;Peer&amp;#039;&amp;#039;&amp;#039; für &amp;#039;&amp;#039;&amp;#039;Unicast CARP&amp;#039;&amp;#039;&amp;#039; eingetragen werden. Viele Cloud-Plattformen unterstützen die Übernahme virtueller MAC-Adressen jedoch grundsätzlich nicht – CARP ist dort oft keine verlässliche Lösung.&lt;br /&gt;
&lt;br /&gt;
== Wartung und Updates ohne Ausfall ==&lt;br /&gt;
Vorgehen laut OPNsense-Dokumentation:&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;Backup aktualisieren&amp;#039;&amp;#039;&amp;#039; und warten, bis er wieder online ist.&lt;br /&gt;
# Auf dem Master unter &amp;#039;&amp;#039;&amp;#039;Interfaces → Virtual IPs → Status&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;&amp;#039;Enter Persistent CARP Maintenance Mode&amp;#039;&amp;#039;&amp;#039; wählen – der Backup wird Master (der Wartungsmodus übersteht auch einen Neustart).&lt;br /&gt;
# Prüfen, ob DHCP, VPN, NAT und alle anderen Dienste auf dem Backup korrekt laufen.&lt;br /&gt;
# Den Master aktualisieren und anschließend &amp;#039;&amp;#039;&amp;#039;Leave Persistent CARP Maintenance Mode&amp;#039;&amp;#039;&amp;#039; wählen.&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Neue Adresse in eine laufende VHID aufnehmen:&amp;#039;&amp;#039;&amp;#039; Auf einer Firewall unter &amp;#039;&amp;#039;Virtual IPs → Status&amp;#039;&amp;#039; &amp;#039;&amp;#039;&amp;#039;Disable CARP&amp;#039;&amp;#039;&amp;#039; (nicht den Wartungsmodus) wählen, den IP-Alias auf beiden Firewalls identisch anlegen und CARP wieder aktivieren. Wird der Alias nur auf einer Seite ergänzt, passt die Prüfsumme der VHID nicht mehr, und beide Firewalls werden Master (Split-Brain).&lt;br /&gt;
&lt;br /&gt;
== Typische Probleme und Lösungen ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Symptom !! Ursache und Lösung&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Split-Brain&amp;#039;&amp;#039;&amp;#039;: beide Firewalls zeigen MASTER || CARP-Pakete erreichen den Partner nicht (Firewall-Regel für Protokoll CARP fehlt, IGMP Snooping, getrennte Switches) oder die VIP-Konfiguration einer VHID weicht ab (Kennwort, Adressen, IP-Aliase). Mit &amp;#039;&amp;#039;tcpdump&amp;#039;&amp;#039; auf dem Backup prüfen, ob die Ankündigungen mit der Adresse des Masters ankommen; testweise Unicast CARP nutzen.&lt;br /&gt;
|-&lt;br /&gt;
| Gemischte Rollen: WAN auf fw1, LAN auf fw2 || &amp;#039;&amp;#039;Disable preempt&amp;#039;&amp;#039; aktiv oder Schnittstellenproblem auf einer Seite – Preempt aktivieren, Links prüfen.&lt;br /&gt;
|-&lt;br /&gt;
| Backup erreicht das Internet nicht (z. B. für Updates) || Source-NAT-Regel mit Quelle &amp;#039;&amp;#039;any&amp;#039;&amp;#039; übersetzt auch den Verkehr der Firewall selbst – Quelle auf die internen Netze beschränken.&lt;br /&gt;
|-&lt;br /&gt;
| Verbindungen brechen beim Failover ab || pfsync nicht aktiv, unterschiedliche &amp;#039;&amp;#039;Sync compatibility&amp;#039;&amp;#039;, unterschiedliche Netzwerktreiber/Schnittstellennamen oder Source NAT nicht auf der CARP-Adresse.&lt;br /&gt;
|-&lt;br /&gt;
| Firewall bleibt dauerhaft Backup („CARP has detected a problem“) || Demotion-Wert erhöht (z. B. durch Schnittstellenfehler oder einen ausgefallenen Dienst). Ursache im Systemlog prüfen; der Wert lässt sich durch zweimaliges Betätigen von &amp;#039;&amp;#039;Enter Persistent CARP Maintenance Mode&amp;#039;&amp;#039; auf 0 zurücksetzen.&lt;br /&gt;
|-&lt;br /&gt;
| Backup wird nach Synchronisation falsch konfiguriert || Konfigurationssynchronisation auch auf dem Backup eingetragen oder Schnittstellenzuordnung unterschiedlich.&lt;br /&gt;
|}&lt;br /&gt;
CARP-Ereignisse stehen im allgemeinen Systemlog (&amp;#039;&amp;#039;System → Log Files → General&amp;#039;&amp;#039;).&lt;br /&gt;
&lt;br /&gt;
== Sicherheitsempfehlungen ==&lt;br /&gt;
* pfsync und Konfigurationssynchronisation nur über eine &amp;#039;&amp;#039;&amp;#039;dedizierte Schnittstelle&amp;#039;&amp;#039;&amp;#039; bzw. ein direktes Kabel.&lt;br /&gt;
* Für die Synchronisation einen &amp;#039;&amp;#039;&amp;#039;eigenen Benutzer&amp;#039;&amp;#039;&amp;#039; mit starkem Kennwort anlegen; &amp;#039;&amp;#039;Verify peer&amp;#039;&amp;#039; aktivieren, wenn der Backup ein vertrauenswürdiges Zertifikat besitzt.&lt;br /&gt;
* Lange, zufällige &amp;#039;&amp;#039;&amp;#039;VHID-Kennwörter&amp;#039;&amp;#039;&amp;#039; verwenden.&lt;br /&gt;
* Den Backup regelmäßig synchronisieren und Failover-Tests einplanen (z. B. vor Updates).&lt;br /&gt;
* CARP-Zustand und Demotion überwachen, z. B. mit dem [[OPNsense - Zabbix-Agent|Zabbix-Agent]] oder per Log-Auswertung mit dem [[OPNsense - Wazuh-Agent|Wazuh-Agent]].&lt;br /&gt;
&lt;br /&gt;
== Fazit ==&lt;br /&gt;
Mit CARP, pfsync und Konfigurationssynchronisation baut OPNsense einen Active/Passive-Cluster, der bei Hardware-, Link- oder Dienstausfällen in wenigen Sekunden umschaltet, ohne dass bestehende Verbindungen abbrechen. Entscheidend für den Erfolg sind identische Schnittstellen auf beiden Firewalls, Source NAT auf die CARP-Adresse, eine dedizierte Sync-Verbindung, eine geeignete Switch-Infrastruktur und Dienste, die konsequent auf die CARP-Adressen ausgerichtet sind.&lt;br /&gt;
&lt;br /&gt;
== Unterstützung von m.a.x. it ==&lt;br /&gt;
Sie planen einen hochverfügbaren OPNsense-Cluster oder möchten bestehende Firewalls redundant ausbauen? m.a.x. it unterstützt Sie als OPNsense-Gold-Partner mit [https://www.max-it.de/it-services/opnsense/ OPNsense-Firewall-Services von m.a.x. it] und einer [https://www.max-it.de/it-services/managed-firewall/ Managed Firewall von m.a.x. it] inklusive Betrieb und Updates des Clusters.&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[Hochverfügbarkeit]]&lt;br /&gt;
* [[Failover]]&lt;br /&gt;
* [[Redundanz]]&lt;br /&gt;
* [[VRRP]]&lt;br /&gt;
* [[MLAG]]&lt;br /&gt;
* [[OPNsense - Kea DHCP mit Hochverfügbarkeit]]&lt;br /&gt;
* [[OPNsense - FRR Dynamisches Routing]]&lt;br /&gt;
* [[OPNsense - WireGuard Site-to-Site und Road Warrior]]&lt;br /&gt;
* [[OPNsense - Eine kurze Einführung]]&lt;br /&gt;
&lt;br /&gt;
== Links und Quellen ==&lt;br /&gt;
* [https://docs.opnsense.org/manual/hacarp.html OPNsense-Doku – High Availability]&lt;br /&gt;
* [https://docs.opnsense.org/manual/how-tos/carp.html OPNsense-Doku – Configure CARP]&lt;br /&gt;
* [https://docs.opnsense.org/manual/firewall_vip.html OPNsense-Doku – Virtual IPs]&lt;br /&gt;
* [https://www.max-it.de/it-services/opnsense/ m.a.x. it – OPNsense-Firewall-Services]&lt;br /&gt;
&lt;br /&gt;
{{Uebermax}}&lt;br /&gt;
[[Kategorie:IT-Security]]&lt;br /&gt;
&lt;/div&gt;</summary>
		<author><name>imported&gt;TechCorner-Redaktion</name></author>
	</entry>
</feed>