diff --git a/net/quagga/Makefile b/net/quagga/Makefile
index a4ab858a0..13d73aef8 100644
--- a/net/quagga/Makefile
+++ b/net/quagga/Makefile
@@ -1,7 +1,7 @@
-PLUGIN_NAME= quagga
-PLUGIN_VERSION= 1.4.1
-PLUGIN_COMMENT= Quagga Routing Suite
-PLUGIN_DEPENDS= quagga ruby
-PLUGIN_MAINTAINER= franz.fabian.94@gmail.com
+PLUGIN_NAME= quagga
+PLUGIN_VERSION= 1.4.2
+PLUGIN_COMMENT= Quagga Routing Suite
+PLUGIN_DEPENDS= quagga ruby
+PLUGIN_MAINTAINER= franz.fabian.94@gmail.com
.include "../../Mk/plugins.mk"
diff --git a/net/quagga/src/opnsense/mvc/app/controllers/OPNsense/Quagga/forms/ospf.xml b/net/quagga/src/opnsense/mvc/app/controllers/OPNsense/Quagga/forms/ospf.xml
index 66b13f763..e4e5a9567 100644
--- a/net/quagga/src/opnsense/mvc/app/controllers/OPNsense/Quagga/forms/ospf.xml
+++ b/net/quagga/src/opnsense/mvc/app/controllers/OPNsense/Quagga/forms/ospf.xml
@@ -5,6 +5,13 @@
checkbox
This will activate the OSPF service if routing protocols are enabled in "General".
+
+ ospf.routerid
+
+ text
+ true
+ If you have a CARP setup, you may want to configure a router id in case of a conflict.
+
ospf.passiveinterfaces
diff --git a/net/quagga/src/opnsense/mvc/app/models/OPNsense/Quagga/OSPF.xml b/net/quagga/src/opnsense/mvc/app/models/OPNsense/Quagga/OSPF.xml
index e139712ca..06c636764 100644
--- a/net/quagga/src/opnsense/mvc/app/models/OPNsense/Quagga/OSPF.xml
+++ b/net/quagga/src/opnsense/mvc/app/models/OPNsense/Quagga/OSPF.xml
@@ -6,6 +6,11 @@
0
Y
+
+
+ N
+ /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/
+
0
Y
diff --git a/net/quagga/src/opnsense/service/templates/OPNsense/Quagga/ospfd.conf b/net/quagga/src/opnsense/service/templates/OPNsense/Quagga/ospfd.conf
index 0f2b9faed..a594490ec 100644
--- a/net/quagga/src/opnsense/service/templates/OPNsense/Quagga/ospfd.conf
+++ b/net/quagga/src/opnsense/service/templates/OPNsense/Quagga/ospfd.conf
@@ -37,6 +37,9 @@ interface {{ physical_interface(interface.interfacename) }}
{% endif %}
!
router ospf
+{% if helpers.exists('OPNsense.quagga.ospf.routerid') and OPNsense.quagga.ospf.routerid != '' %}
+ ospf router-id {{ OPNsense.quagga.ospf.routerid }}
+{% endif %}
{% if helpers.exists('OPNsense.quagga.ospf.redistribute') and OPNsense.quagga.ospf.redistribute != '' %}
{% for line in OPNsense.quagga.ospf.redistribute.split(',') %}
redistribute {{ line }}