From 58c50c0633038f02a1b4ebff16d36198ef1736e8 Mon Sep 17 00:00:00 2001 From: Yuriy Andamasov Date: Tue, 13 Oct 2026 15:40:47 +0300 Subject: docs: T8887: backfill Phase 1 commands from recent vyos-1x additions (#2134) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * docs: T8887: backfill Phase 1 commands from recent vyos-1x additions Documents six CLI features added to vyos-1x between Nov 2025 and May 2026 that were missing from the docs (gap-audit T8886, Phase 1 / T8887): - policy route-map match source-peer (vyos-1x#5149, T8588) - high-availability vrrp snmp trap (vyos-1x#5108, T8448) - protocols segment-routing traffic-engineering subtree (vyos-1x#4994, T6750) - protocols bgp bmp target monitor pre-policy/post-policy/local-rib (vyos-1x#4922, T8133) - firewall global-options geoip provider/maxmind-* (vyos-1x#4949, T7926/T8049) - vpn ipsec childless IKE SA option (vyos-1x#4930, T8136) system frr watchfrr-timeout and service router-advert prefix base-interface are now documented on rolling via the page rewrites in vyos-documentation#2251 and vyos-documentation#2132. protocols bgp parameters as-notation is deferred: rolling carries it commented out; to be handled in a follow-up. 🤖 Generated by [robots](https://vyos.io) * docs: T8887: wrap pre-existing overlong lines in touched files - route-map, ipsec_general: wrap five pre-existing overlong lines so the doc linter (which scans whole modified files) passes on touched files 🤖 Generated by [robots](https://vyos.io) * docs: T8887: document BMP prerequisites and mandatory target address - state that set system frr bmp needs a commit plus a router reboot (or FRR restart) before BMP targets can be committed (protocols_bgp.py verify) - add target address (mandatory) and port (default 5000) commands and include the address in the example 🤖 Generated by [robots](https://vyos.io) * docs: T8887: state SR-TE segment-list commit requirements Per protocols_segment-routing.py verify(): a segment list needs at least one index; each index needs an MPLS label or a NAI; an adjacency NAI needs both source- and destination-identifier; a prefix identifier needs an algorithm; IS-IS/OSPF import, adjacency/prefix, IPv4/IPv6 and spf/strict-spf are mutually exclusive. Add a complete example. 🤖 Generated by [robots](https://vyos.io) * docs: T8887: escape placeholders in GeoIP and childless cfgcmd headers 🤖 Generated by [robots](https://vyos.io) * Apply suggestions from Liydmyla Co-authored-by: LiudmylaNad <235844477+LiudmylaNad@users.noreply.github.com> --------- Co-authored-by: Daniil Baturin Co-authored-by: LiudmylaNad <235844477+LiudmylaNad@users.noreply.github.com> --- docs/configuration/protocols/bgp.md | 60 ++++++++++++++++++++ docs/configuration/protocols/segment-routing.md | 74 ++++++++++++++++++++++++- 2 files changed, 133 insertions(+), 1 deletion(-) (limited to 'docs/configuration/protocols') diff --git a/docs/configuration/protocols/bgp.md b/docs/configuration/protocols/bgp.md index 68902bfb..c12b2fd1 100644 --- a/docs/configuration/protocols/bgp.md +++ b/docs/configuration/protocols/bgp.md @@ -2568,6 +2568,66 @@ set protocols bgp parameters confederation peers 65002 set protocols bgp parameters confederation peers 65003 ``` +### BGP Monitoring Protocol (BMP) configuration + +{abbr}`BMP (BGP Monitoring Protocol)` lets the router send BGP route +information to a monitoring station. + +Before configuring any BMP target under `protocols bgp bmp`, first +enable BMP with `set system frr bmp` and commit, then reboot the router +(preferred) or restart its FRR service. BGP then restarts with BMP +support. Otherwise, committing configuration under `protocols bgp bmp` +fails with the error `"bmp" flag is not found in bgpd`. + +```{cfgcmd} set protocols bgp bmp target \ address \ + +**Configure the IPv4 or IPv6 address of the BMP monitoring station.** + +The address is mandatory for every BMP target. Otherwise, the commit +fails. +``` + +Example: + +```none +set protocols bgp bmp target collector address 192.0.2.10 +``` + +```{cfgcmd} set protocols bgp bmp target \ port \<1-65535\> + +**Configure the TCP port of the BMP monitoring station.** + +The default is 5000. +``` + +Example: + +```none +set protocols bgp bmp target collector port 5000 +``` + +```{cfgcmd} set protocols bgp bmp target \ monitor \ \ + +**Configure which route views are sent to the BMP target for the +specified address family.** + +- `pre-policy`: Sends routes as received from the peer, before inbound + policy and filters are applied (the pre-policy Adj-RIB-In). +- `post-policy`: Sends routes after inbound policy and filters are + applied (the post-policy Adj-RIB-In). +- `local-rib`: Sends the routes the router installed in its local RIB + (Loc-RIB). + +Each view is configured separately. Repeat the command for each view you +want to send. +``` + +Example: + +```none +set protocols bgp bmp target collector monitor ipv4-unicast post-policy +``` + ## Operation ### Show diff --git a/docs/configuration/protocols/segment-routing.md b/docs/configuration/protocols/segment-routing.md index b0896f73..29b74f75 100644 --- a/docs/configuration/protocols/segment-routing.md +++ b/docs/configuration/protocols/segment-routing.md @@ -356,6 +356,79 @@ set protocols ospf segment-routing prefix 192.0.2.1/32 index no-php-flag For more information, see {ref}`ospf`. ``` +## SR-TE configuration + +{abbr}`SR-TE (Segment Routing Traffic Engineering)` steers traffic along +an explicit segment-routed path instead of the IGP shortest path. The +current SR-TE implementation in VyOS only lets you: + +- Choose which IGP, IS-IS or OSPFv2, the router loads TE data from into + the {abbr}`TED (Traffic Engineering Database)`. The TED is used to + translate segments given as a + {abbr}`NAI (Node or Adjacency Identifier)` to MPLS labels. +- Define named segment lists that describe such a path. Each list orders + its segments using a numbered index. Each segment is an MPLS label, a + NAI, or both. + +VyOS does not provide the SR policy that binds a segment list to traffic, +so these definitions alone do not steer traffic. + +```{cfgcmd} set protocols segment-routing traffic-engineering database-import-protocol \ + +**Select the IGP, IS-IS or OSPFv2, whose originated Traffic Engineering +(TE) database the router imports into the TED.** + +IS-IS and OSPF are mutually exclusive. + +```{cfgcmd} set protocols segment-routing traffic-engineering segment-list \ + +**Configure a named segment list, an ordered set of segments that +describes an explicit path.** + +The name may contain letters, digits, hyphens, and underscores. + +Add segments under `index`, where each index orders one segment given as +an MPLS label, a NAI, or both. + +A segment list must contain at least one `index`. Otherwise, the commit +fails. +``` + + +```{cfgcmd} set protocols segment-routing traffic-engineering segment-list \ index \ nai adjacency \ source-identifier \ + +**Configure the adjacency source address identifier (IPv4 or IPv6) for +the given segment list index.** + +An adjacency NAI requires both `source-identifier` and +`destination-identifier`. A NAI is either an adjacency or a prefix, not +both, and uses either IPv4 or IPv6, not both. Otherwise, the commit +fails. +``` + +```{cfgcmd} set protocols segment-routing traffic-engineering segment-list \ index \ nai adjacency \ destination-identifier \ + +**Configure the adjacency destination address identifier (IPv4 or IPv6) +for the given segment list index.** + +An adjacency NAI requires both `source-identifier` and +`destination-identifier`. A NAI is either an adjacency or a prefix, not +both, and uses either IPv4 or IPv6, not both. Otherwise, the commit +fails. +``` + +```{cfgcmd} set protocols segment-routing traffic-engineering segment-list \ index \ nai prefix \ prefix-identifier \ + +**Configure the IGP prefix (IPv4 or IPv6) of a prefix NAI at the given +segment list index.** + +A prefix NAI requires an `algorithm` (`spf` or `strict-spf`). A NAI is +either an adjacency or a prefix, not both, and uses either IPv4 or IPv6, +not both. Otherwise, the commit fails. +``` + + + ## Examples ### Enable SR on IS-IS (experimental) @@ -531,4 +604,3 @@ Codes: K - kernel route, C - connected, S - static, R - RIP, O>* 198.51.100.1/32 [110/1] via 192.0.2.1, eth0, label IPv4 Explicit Null, weight 1, 00:03:36 O 198.51.100.2/32 [110/0] is directly connected, lo, weight 1, 00:03:51 O 192.0.2.0/24 [110/1] is directly connected, eth0, weight 1, 00:03:51 -``` -- cgit v1.2.3