From 1b489c0a68e4c432208a518e5fb5cb59c2096679 Mon Sep 17 00:00:00 2001 From: Monviech <79600909+Monviech@users.noreply.github.com> Date: Fri, 31 Oct 2025 11:21:40 +0100 Subject: [PATCH] net/frr: Add BFD configuration detect-multiplier, transmit-interval, receive-interval (#5000) * net/frr: Add BFD configuration detect-multiplier, transmit-interval, receive-interval * Hide in advanced mode --- .../Quagga/forms/dialogEditBFDNeighbor.xml | 30 +++++++++++++++++++ .../mvc/app/models/OPNsense/Quagga/BFD.xml | 23 +++++++++++++- .../templates/OPNsense/Quagga/bfdd.conf | 3 ++ 3 files changed, 55 insertions(+), 1 deletion(-) diff --git a/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/forms/dialogEditBFDNeighbor.xml b/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/forms/dialogEditBFDNeighbor.xml index fbaeabcd7..c9bf3bfb3 100644 --- a/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/forms/dialogEditBFDNeighbor.xml +++ b/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/forms/dialogEditBFDNeighbor.xml @@ -31,4 +31,34 @@ boolean + + neighbor.detect_multiplier + + text + true + Configures the detection multiplier to determine packet loss. The remote transmission interval will be multiplied by this value to determine the connection loss detection timer. The default value is 3. + + false + + + + neighbor.receive_interval + + text + true + Configures the minimum interval that this system is capable of receiving control packets. The default value is 300 milliseconds. + + false + + + + neighbor.transmit_interval + + text + true + The minimum transmission interval (less jitter) that this system wants to use to send BFD control packets. Defaults to 300ms. + + false + + diff --git a/net/frr/src/opnsense/mvc/app/models/OPNsense/Quagga/BFD.xml b/net/frr/src/opnsense/mvc/app/models/OPNsense/Quagga/BFD.xml index 4986cc173..962ff08e6 100644 --- a/net/frr/src/opnsense/mvc/app/models/OPNsense/Quagga/BFD.xml +++ b/net/frr/src/opnsense/mvc/app/models/OPNsense/Quagga/BFD.xml @@ -1,7 +1,7 @@ //OPNsense/quagga/bfd BFD configuration - 1.0.1 + 1.0.2 0 @@ -21,6 +21,27 @@ 0 Y + + 3 + Y + 1 + 255 + Value must be between 1 and 255. + + + 300 + Y + 10 + 4294967 + Value must be between 10 and 4294967. + + + 300 + Y + 10 + 4294967 + Value must be between 10 and 4294967. + diff --git a/net/frr/src/opnsense/service/templates/OPNsense/Quagga/bfdd.conf b/net/frr/src/opnsense/service/templates/OPNsense/Quagga/bfdd.conf index e4e3d832c..58db29a33 100644 --- a/net/frr/src/opnsense/service/templates/OPNsense/Quagga/bfdd.conf +++ b/net/frr/src/opnsense/service/templates/OPNsense/Quagga/bfdd.conf @@ -5,6 +5,9 @@ bfd {% for neighbor in helpers.toList('OPNsense.quagga.bfd.neighbors.neighbor') %} {% if neighbor.enabled == '1' %} peer {{ neighbor.address }} {% if neighbor.multihop|default('0') == '1' %}multihop{% endif +%} + detect-multiplier {{ neighbor.detect_multiplier }} + receive-interval {{ neighbor.receive_interval }} + transmit-interval {{ neighbor.transmit_interval }} {% endif %} {% endfor %} {% endif %}