mirror of
https://github.com/opnsense/plugins.git
synced 2026-04-15 22:20:31 -04:00
net/frr: add BGP maximum-paths support for ECMP
This commit is contained in:
parent
8788b22a16
commit
bf424afb33
5 changed files with 35 additions and 1 deletions
|
|
@ -1,5 +1,5 @@
|
|||
PLUGIN_NAME= frr
|
||||
PLUGIN_VERSION= 1.51
|
||||
PLUGIN_VERSION= 1.52
|
||||
PLUGIN_COMMENT= The FRRouting Protocol Suite
|
||||
PLUGIN_DEPENDS= frr10-pythontools
|
||||
PLUGIN_MAINTAINER= ad@opnsense.org
|
||||
|
|
|
|||
|
|
@ -12,6 +12,10 @@ WWW: https://frrouting.org/
|
|||
Plugin Changelog
|
||||
================
|
||||
|
||||
1.52
|
||||
|
||||
* Add BGP maximum-paths support for ECMP multipath (contributed by maxfield-allison) (opnsense/plugins#4878)
|
||||
|
||||
1.51
|
||||
|
||||
* Add per-neighbor local-as option for BGP (contributed by danohn) (opnsense/plugins/pull/5308)
|
||||
|
|
|
|||
|
|
@ -67,4 +67,18 @@
|
|||
<type>checkbox</type>
|
||||
<help>Enable extended logging of BGP neighbor changes.</help>
|
||||
</field>
|
||||
<field>
|
||||
<id>bgp.maximumpaths</id>
|
||||
<label>Maximum Paths</label>
|
||||
<type>text</type>
|
||||
<advanced>true</advanced>
|
||||
<help>Maximum number of equal-cost paths for EBGP multipath (ECMP). Leave empty to use FRR default (1).</help>
|
||||
</field>
|
||||
<field>
|
||||
<id>bgp.maximumpathsibgp</id>
|
||||
<label>Maximum Paths (IBGP)</label>
|
||||
<type>text</type>
|
||||
<advanced>true</advanced>
|
||||
<help>Maximum number of equal-cost paths for IBGP multipath (ECMP). Leave empty to use FRR default (1).</help>
|
||||
</field>
|
||||
</form>
|
||||
|
|
|
|||
|
|
@ -48,6 +48,16 @@
|
|||
</OptionValues>
|
||||
<Multiple>Y</Multiple>
|
||||
</bestpath>
|
||||
<maximumpaths type="IntegerField">
|
||||
<MinimumValue>1</MinimumValue>
|
||||
<MaximumValue>128</MaximumValue>
|
||||
<ValidationMessage>The value shall be between 1 and 128 or left empty to use the default.</ValidationMessage>
|
||||
</maximumpaths>
|
||||
<maximumpathsibgp type="IntegerField">
|
||||
<MinimumValue>1</MinimumValue>
|
||||
<MaximumValue>128</MaximumValue>
|
||||
<ValidationMessage>The value shall be between 1 and 128 or left empty to use the default.</ValidationMessage>
|
||||
</maximumpathsibgp>
|
||||
<neighbors>
|
||||
<neighbor type="ArrayField">
|
||||
<enabled type="BooleanField">
|
||||
|
|
|
|||
|
|
@ -170,6 +170,12 @@ router bgp {{ OPNsense.quagga.bgp.asnumber }}
|
|||
|
||||
{% for addressFamily in addressFamilies %}
|
||||
address-family {{ addressFamily }} unicast
|
||||
{% if helpers.exists('OPNsense.quagga.bgp.maximumpaths') and OPNsense.quagga.bgp.maximumpaths != '' %}
|
||||
maximum-paths {{ OPNsense.quagga.bgp.maximumpaths }}
|
||||
{% endif %}
|
||||
{% if helpers.exists('OPNsense.quagga.bgp.maximumpathsibgp') and OPNsense.quagga.bgp.maximumpathsibgp != '' %}
|
||||
maximum-paths ibgp {{ OPNsense.quagga.bgp.maximumpathsibgp }}
|
||||
{% endif %}
|
||||
{% for redistribution in helpers.toList('OPNsense.quagga.bgp.redistributions.redistribution') %}
|
||||
{% if redistribution.enabled == '1' %}
|
||||
redistribute {{ redistribution.redistribute }}{% if redistribution.linkedRoutemap %} route-map {{ helpers.getUUID(redistribution.linkedRoutemap).name }}{% endif +%}
|
||||
|
|
|
|||
Loading…
Reference in a new issue