diff --git a/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/Api/BgpController.php b/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/Api/BgpController.php
index 9f505632e..79de7caf4 100644
--- a/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/Api/BgpController.php
+++ b/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/Api/BgpController.php
@@ -197,6 +197,11 @@ class BgpController extends ApiMutableModelControllerBase
return $this->setBase('routemap', 'routemaps.routemap', $uuid);
}
+ public function toggleCommunitylistAction($uuid)
+ {
+ return $this->toggleBase('communitylists.communitylist', $uuid);
+ }
+
public function toggleNeighborAction($uuid)
{
return $this->toggleBase('neighbors.neighbor', $uuid);
diff --git a/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/forms/dialogEditBGPNeighbor.xml b/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/forms/dialogEditBGPNeighbor.xml
index 1af5adf4a..19f13cca1 100644
--- a/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/forms/dialogEditBGPNeighbor.xml
+++ b/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/forms/dialogEditBGPNeighbor.xml
@@ -29,6 +29,13 @@
true
Set a password for BGP authentication.
+
+ neighbor.weight
+
+ text
+ true
+ Specify a default weight value for the neighbor’s routes.
+
neighbor.localip
diff --git a/net/frr/src/opnsense/mvc/app/models/OPNsense/Quagga/BGP.xml b/net/frr/src/opnsense/mvc/app/models/OPNsense/Quagga/BGP.xml
index f22fe8cd2..db890d054 100644
--- a/net/frr/src/opnsense/mvc/app/models/OPNsense/Quagga/BGP.xml
+++ b/net/frr/src/opnsense/mvc/app/models/OPNsense/Quagga/BGP.xml
@@ -60,6 +60,12 @@
N
+
+
+ N
+ 0
+ 65535
+
N
diff --git a/net/frr/src/opnsense/service/templates/OPNsense/Quagga/bgpd.conf b/net/frr/src/opnsense/service/templates/OPNsense/Quagga/bgpd.conf
index b7f585aff..a5fb926d4 100644
--- a/net/frr/src/opnsense/service/templates/OPNsense/Quagga/bgpd.conf
+++ b/net/frr/src/opnsense/service/templates/OPNsense/Quagga/bgpd.conf
@@ -60,6 +60,12 @@ router bgp {{ OPNsense.quagga.bgp.asnumber }}
{% if 'password' in neighbor and neighbor.password != '' %}
neighbor {{ neighbor.address }} password {{ neighbor.password }}
{% endif %}
+{% if 'weight' in neighbor and neighbor.weight != '' %}
+ neighbor {{ neighbor.address }} weight {{ neighbor.weight }}
+{% endif %}
+{% if 'disable_connected_check' in neighbor and neighbor.disable_connected_check == '1' %}
+ neighbor {{ neighbor.address }} disable-connected-check
+{% endif %}
{% if ':' not in neighbor.address and 'updatesource' in neighbor and neighbor.updatesource != '' %}
neighbor {{ neighbor.address }} update-source {{ physical_interface(neighbor.updatesource) }}
{% endif %}
@@ -106,9 +112,6 @@ router bgp {{ OPNsense.quagga.bgp.asnumber }}
{% if 'asoverride' in neighbor and neighbor.asoverride == '1' %}
neighbor {{ neighbor.address }} as-override
{% endif %}
-{% if 'disable_connected_check' in neighbor and neighbor.disable_connected_check == '1' %}
- neighbor {{ neighbor.address }} disable-connected-check
-{% endif %}
{% if neighbor.linkedPrefixlistIn|default("") != "" %}
{% for prefixlist in neighbor.linkedPrefixlistIn.split(",") %}
{% set prefixlist2_data = helpers.getUUID(prefixlist) %}