diff --git a/security/netbird/src/etc/inc/plugins.inc.d/netbird.inc b/security/netbird/src/etc/inc/plugins.inc.d/netbird.inc
index 1d6b7fce09..0910e15fab 100644
--- a/security/netbird/src/etc/inc/plugins.inc.d/netbird.inc
+++ b/security/netbird/src/etc/inc/plugins.inc.d/netbird.inc
@@ -34,6 +34,13 @@ function netbird_enabled()
return !(new \OPNsense\Netbird\Settings())->general->enable->isEmpty();
}
+function netbird_carp_enabled()
+{
+ $settings = new \OPNsense\Netbird\Settings();
+ return (string)$settings->general->enable == '1' &&
+ (string)$settings->general->enablecarp == '1';
+}
+
function netbird_services()
{
$services = [];
diff --git a/security/netbird/src/etc/rc.syshook.d/carp/50-netbird b/security/netbird/src/etc/rc.syshook.d/carp/50-netbird
new file mode 100644
index 0000000000..d002cd8c71
--- /dev/null
+++ b/security/netbird/src/etc/rc.syshook.d/carp/50-netbird
@@ -0,0 +1,59 @@
+#!/usr/local/bin/php
+configdRun("netbird up");
+ break;
+ case 'BACKUP':
+ log_msg("NetBird CARP: Transitioning to BACKUP state, stopping NetBird interfaces");
+ $backend->configdRun("netbird down");
+ break;
+ }
+}
diff --git a/security/netbird/src/opnsense/mvc/app/controllers/OPNsense/Netbird/forms/settings.xml b/security/netbird/src/opnsense/mvc/app/controllers/OPNsense/Netbird/forms/settings.xml
index 2f5f4224fc..4f7f6d8b1e 100644
--- a/security/netbird/src/opnsense/mvc/app/controllers/OPNsense/Netbird/forms/settings.xml
+++ b/security/netbird/src/opnsense/mvc/app/controllers/OPNsense/Netbird/forms/settings.xml
@@ -9,6 +9,12 @@
checkbox
Enable NetBird
+
+ settings.general.enablecarp
+
+ checkbox
+ When enabled, NetBird interfaces will start on MASTER state and stop on BACKUP state.
+
settings.general.wireguardPort
diff --git a/security/netbird/src/opnsense/mvc/app/models/OPNsense/Netbird/Settings.xml b/security/netbird/src/opnsense/mvc/app/models/OPNsense/Netbird/Settings.xml
index a99ce9985a..53a725792c 100644
--- a/security/netbird/src/opnsense/mvc/app/models/OPNsense/Netbird/Settings.xml
+++ b/security/netbird/src/opnsense/mvc/app/models/OPNsense/Netbird/Settings.xml
@@ -8,6 +8,10 @@
0
Y
+
+ 0
+ Y
+
51820
Y