diff options
| author | Christian Breunig <christian@breunig.cc> | 2025-12-30 17:12:53 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-12-30 17:12:53 +0100 |
| commit | 2efe3e56d8a255b0193e721334d1947273908403 (patch) | |
| tree | fa78324740a6fea073c5f70089ff87b15121fc9e | |
| parent | 348e26aa40c8a0fbc921fc2153715e48fcd28f71 (diff) | |
| parent | fed84261267a6e760ba9cfe1da807eae36125c10 (diff) | |
| download | vyos-1x-2efe3e56d8a255b0193e721334d1947273908403.tar.gz vyos-1x-2efe3e56d8a255b0193e721334d1947273908403.zip | |
Merge pull request #4922 from sever-sever/T8133
T8133: BGP add local-rib feature for BMP
| -rw-r--r-- | data/templates/frr/bgpd.frr.j2 | 6 | ||||
| -rw-r--r-- | interface-definitions/include/bgp/bmp-monitor-afi-policy.xml.i | 6 | ||||
| -rwxr-xr-x | smoketest/scripts/cli/test_protocols_bgp.py | 4 |
3 files changed, 16 insertions, 0 deletions
diff --git a/data/templates/frr/bgpd.frr.j2 b/data/templates/frr/bgpd.frr.j2 index e5a75090f..c952fb0ec 100644 --- a/data/templates/frr/bgpd.frr.j2 +++ b/data/templates/frr/bgpd.frr.j2 @@ -510,12 +510,18 @@ router bgp {{ system_as }} {{ 'vrf ' ~ vrf if vrf is vyos_defined }} {% if bmp_config.monitor.ipv4_unicast.post_policy is vyos_defined %} bmp monitor ipv4 unicast post-policy {% endif %} +{% if bmp_config.monitor.ipv4_unicast.local_rib is vyos_defined %} + bmp monitor ipv4 unicast loc-rib +{% endif %} {% if bmp_config.monitor.ipv6_unicast.pre_policy is vyos_defined %} bmp monitor ipv6 unicast pre-policy {% endif %} {% if bmp_config.monitor.ipv6_unicast.post_policy is vyos_defined %} bmp monitor ipv6 unicast post-policy {% endif %} +{% if bmp_config.monitor.ipv6_unicast.local_rib is vyos_defined %} + bmp monitor ipv6 unicast loc-rib +{% endif %} {% endif %} {% if bmp_config.address is vyos_defined %} bmp connect {{ bmp_config.address }} port {{ bmp_config.port }} min-retry {{ bmp_config.min_retry }} max-retry {{ bmp_config.max_retry }} diff --git a/interface-definitions/include/bgp/bmp-monitor-afi-policy.xml.i b/interface-definitions/include/bgp/bmp-monitor-afi-policy.xml.i index 261d60232..d4bb0093e 100644 --- a/interface-definitions/include/bgp/bmp-monitor-afi-policy.xml.i +++ b/interface-definitions/include/bgp/bmp-monitor-afi-policy.xml.i @@ -1,4 +1,10 @@ <!-- include start from bgp/bmp-monitor-afi-policy.xml.i --> +<leafNode name="local-rib"> + <properties> + <help>Enable BMP monitoring of local RIB</help> + <valueless/> + </properties> +</leafNode> <leafNode name="pre-policy"> <properties> <help>Send state before policy and filter processing</help> diff --git a/smoketest/scripts/cli/test_protocols_bgp.py b/smoketest/scripts/cli/test_protocols_bgp.py index 23c2bf592..d7c2a924f 100755 --- a/smoketest/scripts/cli/test_protocols_bgp.py +++ b/smoketest/scripts/cli/test_protocols_bgp.py @@ -1674,7 +1674,9 @@ class TestProtocolsBGP(VyOSUnitTestSHIM.TestCase): self.cli_set(target_path + ['max-retry', max_retry]) self.cli_set(target_path + ['mirror']) self.cli_set(target_path + ['monitor', 'ipv4-unicast', monitor_ipv4]) + self.cli_set(target_path + ['monitor', 'ipv4-unicast', 'local-rib']) self.cli_set(target_path + ['monitor', 'ipv6-unicast', monitor_ipv6]) + self.cli_set(target_path + ['monitor', 'ipv6-unicast', 'local-rib']) self.cli_commit() # Verify bgpd bmp configuration @@ -1684,6 +1686,8 @@ class TestProtocolsBGP(VyOSUnitTestSHIM.TestCase): self.assertIn(f'bmp mirror', frrconfig) self.assertIn(f'bmp monitor ipv4 unicast {monitor_ipv4}', frrconfig) self.assertIn(f'bmp monitor ipv6 unicast {monitor_ipv6}', frrconfig) + self.assertIn(f'bmp monitor ipv4 unicast loc-rib', frrconfig) + self.assertIn(f'bmp monitor ipv6 unicast loc-rib', frrconfig) self.assertIn(f'bmp connect {target_address} port {target_port} min-retry {min_retry} max-retry {max_retry}', frrconfig) if __name__ == '__main__': |
