net/frr - BFD for OSPF (#3488)

* BFD for OSPF/OSPF6
This commit is contained in:
MarkStitson
2023-07-02 18:30:06 +02:00
committed by GitHub
parent f37375f4b8
commit 14dda8a1d3
7 changed files with 28 additions and 2 deletions
@@ -63,6 +63,12 @@
<label>Priority</label>
<type>text</type>
</field>
<field>
<id>interface.bfd</id>
<label>BFD</label>
<type>checkbox</type>
<help>You can enable BFD support for this interface. You will also need to configure BFD peers.</help>
</field>
<field>
<id>interface.networktype</id>
<label>Network Type</label>
@@ -74,6 +74,12 @@
<label>Priority</label>
<type>text</type>
</field>
<field>
<id>interface.bfd</id>
<label>BFD</label>
<type>checkbox</type>
<help>You can enable BFD support for this interface. You will also need to configure BFD peers.</help>
</field>
<field>
<id>interface.networktype</id>
<label>Network Type</label>
@@ -217,6 +217,10 @@
<MaximumValue>4294967295</MaximumValue>
<ValidationMessage>Priority must be between 0 and 4294967295.</ValidationMessage>
</priority>
<bfd type="BooleanField">
<default>0</default>
<Required>N</Required>
</bfd>
<networktype type="OptionField">
<Required>N</Required>
<multiple>N</multiple>
@@ -102,6 +102,10 @@
<MaximumValue>4294967295</MaximumValue>
<ValidationMessage>Priority must be between 0 and 4294967295.</ValidationMessage>
</priority>
<bfd type="BooleanField">
<default>0</default>
<Required>N</Required>
</bfd>
<networktype type="OptionField">
<Required>N</Required>
<multiple>N</multiple>
@@ -60,7 +60,7 @@ router bgp {{ OPNsense.quagga.bgp.asnumber }}
{% for neighbor in helpers.toList('OPNsense.quagga.bgp.neighbors.neighbor') %}
{% if neighbor.enabled == '1' %}
neighbor {{ neighbor.address }} remote-as {{ neighbor.remoteas }}
{% if 'bfd' in neighbor and neighbor.bfd == '1' %}
{% if neighbor.bfd|default('') == '1' %}
neighbor {{ neighbor.address }} bfd
{% endif %}
{% if 'password' in neighbor and neighbor.password != '' %}
@@ -107,7 +107,7 @@ router bgp {{ OPNsense.quagga.bgp.asnumber }}
network {{ network }}
{% endfor %}
{% for neighbor in neighbors[addressFamily] %}
neighbor {{ neighbor.address }} activate
neighbor {{ neighbor.address }} activate
{% if 'nexthopself' in neighbor and neighbor.nexthopself == '1' %}
neighbor {{ neighbor.address }} next-hop-self {% if 'nexthopselfall' in neighbor and neighbor.nexthopselfall == '1' %}all{% endif %}
@@ -25,6 +25,9 @@ agentx
{% for interface in helpers.toList('OPNsense.quagga.ospf6.interfaces.interface') %}
{% if interface.enabled == '1' %}
interface {{ physical_interface(interface.interfacename) }}
{% if interface.bfd|default('') == '1' %}
ipv6 ospf6 bfd
{% endif %}
{% if interface.networktype %}
ipv6 ospf6 network {{ interface.networktype }}
{% endif %}
@@ -25,6 +25,9 @@ agentx
{% for interface in helpers.toList('OPNsense.quagga.ospf.interfaces.interface') %}
{% if interface.enabled == '1' %}
interface {{ physical_interface(interface.interfacename) }}
{% if interface.bfd|default('') == '1' %}
ip ospf bfd
{% endif %}
{% if interface.networktype %}
{{ cline("network",interface.networktype)
}}{% endif %}