mirror_frr/doc/user
Francois Dumontet a3add45309 bgp: fix bgp4v2 MIB NLRI INDEX format and order
With a BGP configuration with ipv4 peering, and ipv6 peering, an snmpwalk
is stopped while walking over the bgp4v2NlriTable

snmpwalk -c TEST -v2c -On -Ln 1.1.1.2 .1.3.6.1.3.5.1.1.4

[...]
.1.3.6.1.3.5.1.1.4.1.2.1.2.32.0.0.0.0.0.0.0.0.0.0.0.0.0.0.1 = Gauge32: 13380
.1.3.6.1.3.5.1.1.9.1.1.1.1.1.1.1.0.24.0.0.0.0 = Gauge32: 0
.1.3.6.1.3.5.1.1.9.1.1.1.1.1.1.1.0.24.0.0.0.0 = Gauge32: 0
 >= .1.3.6.1.3.5.1.1.9.1.1.1.1.1.1.1.0.24.0.0.0.0

The walk stopped because the index used in the NlriTable entries is
decrementing, and this is against the snmp specifications. Also, the
computed index is wrong, and does not match the provided
draft-ietf-idr-bgp4-mibv2-1 specification.

Fix this by computing a valid index, and by finding out the next
consecutive prefix.
The resulting changes do not break the walk, and the output is changed:

root@dut-vm:~# snmpwalk -v 2c -c public -Ln -On localhost 1.3.6.1.3.5.1.1.9.1
.1.3.6.1.3.5.1.1.9.1.1.1.1.1.1.10.200.0.0.24.1.10.125.0.2.1 = Gauge32: 0
.1.3.6.1.3.5.1.1.9.1.1.1.1.1.1.10.244.0.0.24.1.10.125.0.2.1 = Gauge32: 0
.1.3.6.1.3.5.1.1.9.1.2.1.1.1.1.10.200.0.0.24.1.10.125.0.2.1 = INTEGER: 1
.1.3.6.1.3.5.1.1.9.1.2.1.1.1.1.10.244.0.0.24.1.10.125.0.2.1 = INTEGER: 1
.1.3.6.1.3.5.1.1.9.1.3.1.1.1.1.10.200.0.0.24.1.10.125.0.2.1 = INTEGER: 1
.1.3.6.1.3.5.1.1.9.1.3.1.1.1.1.10.244.0.0.24.1.10.125.0.2.1 = INTEGER: 1
.1.3.6.1.3.5.1.1.9.1.4.1.1.1.1.10.200.0.0.24.1.10.125.0.2.1 = INTEGER: 1
.1.3.6.1.3.5.1.1.9.1.4.1.1.1.1.10.244.0.0.24.1.10.125.0.2.1 = INTEGER: 1
.1.3.6.1.3.5.1.1.9.1.5.1.1.1.1.10.200.0.0.24.1.10.125.0.2.1 = Hex-STRING: 0A C8 00 00
.1.3.6.1.3.5.1.1.9.1.5.1.1.1.1.10.244.0.0.24.1.10.125.0.2.1 = Hex-STRING: 0A F4 00 00

Fixes: c681e937d7 (bgpd: Implement SNMP
BGP4V2-MIB (bgp4V2NlriTable), part 1)
Fixes: 2ce69011c4 (bgpd: Implement SNMP
BGP4V2-MIB (bgp4V2NlriTable), part 2)

Signed-off-by: Francois Dumontet <francois.dumontet@6wind.com>
(cherry picked from commit fc3c9b177c)
2023-11-09 09:21:42 +00:00
..
_static doc: orange FRR theme 2019-02-18 14:39:13 +01:00
images doc: Augmented pathd documentation. 2021-10-04 18:56:47 +02:00
.gitignore doc: fix distclean 2018-05-18 19:35:24 +00:00
.readthedocs.yaml doc: unpin sphinx from 4.0.2 2023-09-28 10:51:10 -04:00
affinitymap.rst doc: add extended admin-group user documentation 2023-02-10 14:13:46 +01:00
babeld.rst doc: Minor grammar correction 2021-12-23 07:32:33 +10:00
basic.rst lib: Drop deprecated enable-time-check, enable-cpu-time compile options 2023-09-24 20:41:24 +03:00
bfd.rst doc: remove BFD label command references 2023-07-20 15:49:07 -03:00
bgp.rst doc: add "enforce-first-as" to BGP doc 2023-10-19 12:16:04 +00:00
bmp.rst bmp: add L3VPN support 2022-07-13 17:28:37 +02:00
bugs.rst doc: fix dupe bug-reports label, index entry 2021-02-23 15:49:19 -05:00
conf.py Revert "doc: add the bgp link-state user documentation" 2023-10-11 05:02:50 +00:00
eigrpd.rst doc: correct the pid path for daemons 2023-02-14 14:02:31 +08:00
evpn.rst doc: add documentation for show vrf vni 2023-01-13 13:49:21 -08:00
extlog.rst doc: add new RFC5424 & journald logging targets 2022-01-17 00:39:00 +01:00
fabricd.rst *: remove *.conf.sample files 2021-04-09 13:14:30 -04:00
filter.rst lib: add "json" option to "show ip[v6] prefix-list" 2021-08-02 17:19:45 -03:00
flowspec.rst doc: remove 'no' form of commands 2021-02-22 14:38:21 -05:00
frr-reload.rst doc: add docs for frr-reload.py options 2020-05-26 19:14:12 +02:00
glossary.rst doc: fixup glossary for html build 2018-02-02 15:24:57 -05:00
grpc.rst doc: initial documentation for gRPC 2020-08-10 16:39:06 -03:00
index.rst doc: include affinity-maps into index 2023-04-17 11:25:25 +02:00
installation.rst lib: Drop deprecated enable-time-check, enable-cpu-time compile options 2023-09-24 20:41:24 +03:00
ipv6.rst doc: add doc for show ipv6 nd ra-interfaces 2021-06-08 15:17:22 -04:00
isisd.rst doc: Add documentation for IS-IS SRv6 features 2023-09-11 22:11:59 +02:00
kernel.rst doc: remove obsolete Netlink discussion, fix svi cmd doc 2021-04-30 18:10:56 -05:00
ldpd.rst doc: document ldpd's "ttl-security" commands 2022-06-15 14:12:35 -03:00
Makefile build: non-recursive doc + parallel sphinx 2018-08-30 08:06:44 +02:00
mgmtd.rst doc: reference the correct MGMTd show command 2023-09-21 12:54:04 -06:00
nexthop_groups.rst doc: Add nexthop_groups documentation 2022-11-04 13:34:27 -04:00
nhrpd.rst doc: remove redundant index directives 2021-05-18 15:29:59 +03:00
ospf6d.rst ospfd, ospf6d: introduce the "graceful-restart hello-delay" command 2023-05-08 21:47:44 -03:00
ospf_fundamentals.rst doc: replace "passive-interface IFNAME" with "ip ospf passive" 2021-06-05 18:25:01 +03:00
ospfd.rst doc: Replace frr code highlighting marker to sh 2023-09-25 09:28:42 +03:00
overview.rst doc: Add RFC 5396 to the supported BGP RFC list 2023-07-14 10:29:45 +03:00
packet-dumps.rst doc: reorganize into multiple toctrees 2018-06-08 07:54:25 +00:00
pathd.rst pathd: add 'debug pathd policy' command 2022-11-14 17:42:44 +01:00
pbr.rst doc: fix pbr map detail json 2023-10-29 08:42:23 +00:00
pim.rst pimd: Option to get IGMP groups and sources for a particular interface 2023-04-11 11:00:39 -07:00
pimv6.rst doc: correct the pid path for daemons 2023-02-14 14:02:31 +08:00
ripd.rst doc: Add RIP allow-ecmp command 2023-05-04 09:23:26 +03:00
ripngd.rst doc: Add documentation for route-maps for ripng 2023-06-22 00:14:02 +03:00
routemap.rst bgpd: add set extended-comm-list <> delete command 2023-07-31 11:52:36 +02:00
routeserver.rst doc: replace the import/export keywords for in/out 2022-06-14 15:39:48 +02:00
rpki.rst bgpd: Handle Origin Validation State extended community via route-map match 2022-09-04 21:54:47 +03:00
scripting.rst *: Fix spelling of overriden 2022-04-19 08:27:02 -04:00
setup.rst doc: Adding a description for a new option 2022-11-23 10:19:33 +01:00
sharp.rst doc: add docs for End.DT46 seg6local route 2022-10-18 16:08:24 +02:00
snmp.rst bgp: fix bgp4v2 MIB NLRI INDEX format and order 2023-11-09 09:21:42 +00:00
snmptrap.rst bgpd: Adjust symbolic names for cease notifications according to rfc4486 2022-01-06 10:07:41 +02:00
static.rst doc: srv6 multiple segs SIDs documentation 2023-09-20 15:07:15 +02:00
subdir.am doc: Add documentation for MGMT daemon 2023-03-21 22:09:10 -04:00
Useful_Sysctl_Settings.md doc: update VRF support description 2021-05-31 22:12:55 +03:00
vnc.rst doc: remove 'no' form of commands 2021-02-22 14:38:21 -05:00
vrrp.rst doc: add vrrp interoperability help and command 2022-11-29 03:59:23 +08:00
vtysh.rst doc: domainname MUST be manually written to vtysh.conf also 2023-09-21 10:39:54 +03:00
watchfrr.rst doc: remove 'no' form of commands 2021-02-22 14:38:21 -05:00
wecmp_linkbw.rst doc: automatically generate index entries for cli 2021-02-22 14:38:21 -05:00
zebra.rst zebra: dump label table information 2023-09-29 08:24:18 +02:00