Commit Graph

28867 Commits

Author SHA1 Message Date
Russ White
2d088d8d53
Merge pull request #11437 from rgirada/ospf_nbr
ospfd: Fixing "show ip ospf neighbour <nbrid>" command
2022-06-22 14:54:08 -04:00
rgirada
e8a8b11610 ospfd: Fixing "show ip ospf neighbour <nbrid>" command
Description:
	"show ip ospf neighbour [nbrid] [json]" is expected to give brief output
	of the specific neighbour. But it gives the detailed output without
	the detail keyword.
	"show ip ospf neighbour [nbrid] [deatil] [json]" command is failed to
	fetch the ecpected o/p. Corrected it.

	Ex o/p:
	frr(config-if)# do show ip ospf  neighbor

	Neighbor ID     Pri State           Up Time         Dead Time Address         Interface                        RXmtL RqstL DBsmL
	8.8.8.8           1 Full/DR         17m03s            31.192s 20.1.1.194      ens192:20.1.1.220                    0     0     0
	30.1.1.100        1 Full/DR         56.229s           32.000s 30.1.1.100      ens224:30.1.1.220                    0     0     0

	frr(config-if)#
	frr(config-if)#
	frr(config-if)# do show ip ospf  neighbor 8.8.8.8
	Neighbor 8.8.8.8, interface address 20.1.1.194
	In the area 0.0.0.0 via interface ens192
	Neighbor priority is 1, State is Full/DR, 6 state changes
	Most recent state change statistics:
	  Progressive change 17m18s ago
	DR is 20.1.1.194, BDR is 20.1.1.220
	Options 2 *|-|-|-|-|-|E|-
	Dead timer due in 35.833s
	Database Summary List 0
	Link State Request List 0
	Link State Retransmission List 0
	Thread Inactivity Timer on
	Thread Database Description Retransmision off
	Thread Link State Request Retransmission on
	Thread Link State Update Retransmission on

	Graceful restart Helper info:
	  Graceful Restart HELPER Status : None

	frr(config-if)# do show ip ospf  neighbor 8.8.8.8 detail
	No such interface.
	frr(config-if)# do show ip ospf  neighbor 8.8.8.8 detail json
	{}
	frr(config-if)#

Signed-off-by: Rajesh Girada <rgirada@vmware.com>
2022-06-22 08:40:24 -07:00
Eugene Bogomazov
865a7e7b3a bgpd: move to switch clause in get name function
bgp_rpki_validation2str implements a switch statement to determine the
correct string response from the validation state. So, switch to a
switch statement when getting a name by role for code consistency.

Signed-off-by: Eugene Bogomazov <eb@qrator.net>
2022-06-22 17:03:25 +03:00
Eugene Bogomazov
13896bde30 bgpd: simplify code fragment for RFC 9234
Roles cannot be applied to iBGP sessions, so we can move this check to
the top of the role configuration method. Thus, we simplify the internal
logic of branching.

Signed-off-by: Eugene Bogomazov <eb@qrator.net>
2022-06-22 16:12:28 +03:00
Eugene Bogomazov
9a38a7b055 bgpd: simplify ebgp role check for RFC 9234
BGP Role is currently defined only for eBGP session. So, we don't
need to consider which roles can be applied on iBGP session and
thus simplify code fragment.

Signed-off-by: Eugene Bogomazov <eb@qrator.net>
2022-06-22 15:09:06 +03:00
Donald Sharp
8684ca8fd5
Merge pull request #11442 from opensourcerouting/fix/rpki_cli
bgpd: RPKI fixes
2022-06-22 07:35:30 -04:00
Donald Sharp
a01887c40b
Merge pull request #11445 from opensourcerouting/fix/replace_sockunion2str
*: Replace sockunion2str => %pSU
2022-06-22 07:33:14 -04:00
Eugene Bogomazov
5a78f2bcb0 bgpd: add AFI/SAFI check for RFC 9234
RFC 9234 mandates that role rules apply only to IPv4/IPv6 unicast bgp
sessions. If the OTC attribute appears in other sessions, it will remain
untouched.

Signed-off-by: Eugene Bogomazov <eb@qrator.net>
2022-06-22 13:34:51 +03:00
Donatas Abraitis
0ba27f1cb2
Merge pull request #11427 from anlancs/fix/minor-2
zebra: remove redundant calling hook for fpm
2022-06-22 11:39:13 +03:00
Donatas Abraitis
14b27b3610
Merge pull request #11418 from mobash-rasool/fixes2
lib: pim6d: Use IPv6 global unicast address to send PIMv6 register packet
2022-06-22 11:13:28 +03:00
Mobashshera Rasool
4b603761c1 pim6d: Send register msg with IPv6 global address
Use global unicast IPv6 address to send the register
packet.

Fixes: #11235

Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
2022-06-21 20:44:10 -07:00
Mobashshera Rasool
3a0d338bc9 lib: Add an api is_ipv6_global_unicast
Add api is_ipv6_global_unicast to identify whether a given
ipv6 address is global unicast or not.

Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
2022-06-21 20:44:10 -07:00
mobash-rasool
f21ba4fbae
Merge pull request #11443 from opensourcerouting/fix/duplicate_label
bgpd: Drop duplicate label assignment
2022-06-22 07:11:26 +05:30
rvaratharaj
4bf66f436e Zebra EVPN Debug: Fixing log flooding when disabling MLAG leaf configuration
When disabling MLAG leaf configuration with EVPN, logs are
getting flooded for each VNI, This is the result of each Type-2
packets. Ideally, this should be under log debugging, not a warning.

Testing: UT
Signed-off-by: Rajesh Varatharaj <rvaratharaj@nvidia.com>
2022-06-21 18:18:14 -07:00
Jafar Al-Gharaibeh
3971e02928
Merge pull request #11448 from gpnaveen/ospf_scripts_stbl
tests: Removing invalid step from OSPF tests.
2022-06-21 13:44:33 -05:00
Donald Sharp
b9e76a5f8a
Merge pull request #11449 from Jafaral/ospf-readme
ospfclient: fix help url
2022-06-21 13:08:45 -04:00
Donatas Abraitis
8f401cda58 bgpd: Do not show polling_period default value in CLI for RPKI
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-06-21 18:49:10 +03:00
Donatas Abraitis
01ceb8b23c
Merge pull request #11417 from donaldsharp/nhg_timer
Nhg timer
2022-06-21 18:43:45 +03:00
Donatas Abraitis
70292e9bbf
Merge pull request #11351 from kuldeepkash/uplink_mcast_tests
tests: Add multicast-pim-multi-uplink test suite
2022-06-21 18:37:40 +03:00
Russ White
e63a5c42dd
Merge pull request #11352 from ARShreenidhi/default_originate_automation
tests  : bgp default-originate test suite automation
2022-06-21 11:33:47 -04:00
Jafar Al-Gharaibeh
770e16041c ospfclient: fix help url
Signed-off-by: Jafar Al-Gharaibeh <jafar@atcorp.com>
2022-06-21 09:54:31 -05:00
Eugene Bogomazov
aee05e20fd bgpd: Update topotests for RFC 9234
In the previous version, the time.sleep function was included to wait
for the moment when the routes were sent to all routers. Changed this
function to topotest.run_and_expect for more deterministic behavior.

Signed-off-by: Eugene Bogomazov <eb@qrator.net>
2022-06-21 17:41:53 +03:00
Eugene Bogomazov
8f2d6021f8 bgpd: Add patches for RFC9234 implementation
This commit fixes some issues that were noted by the reviewer

Signed-off-by: Eugene Bogomazov <eb@qrator.net>
2022-06-21 17:41:53 +03:00
Russ White
088ec2b0a7
Merge pull request #11440 from opensourcerouting/fix/increase_flags_bgp_peer_to_uint64
bgpd: Increase peer->flags to uint64_t
2022-06-21 10:31:50 -04:00
Russ White
33d960c7ab
Merge pull request #11444 from opensourcerouting/fix/bfd_bgp_down_debug_level
bgpd: Replace zlog_info -> zlog_debug under BGP_DEBUG()
2022-06-21 10:01:46 -04:00
Donatas Abraitis
47e1288431 *: Replace sockunion2str => %pSU
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-06-21 13:34:56 +03:00
nguggarigoud
d5bd355430 tests: Removing invalid step from ospf tests.
1. Removed the step from hello test case with hello
timer of 65535. This test works in some platforms
and does not work in others, affecting stability.

Signed-off-by: nguggarigoud <nguggarigoud@vmware.com>
2022-06-21 02:21:35 -07:00
Donatas Abraitis
95291f18bc bgpd: Replace zlog_info -> zlog_debug under BGP_DEBUG()
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-06-21 11:59:52 +03:00
Donatas Abraitis
fdfd1a6f40 bgpd: Drop duplicate label assignment
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-06-21 11:57:33 +03:00
ARShreenidhi
f10d6c5b0b tests : bgp_default_originate testcase w.r.t topology1 added
this PR contains the basic bgp default originate.
Details of the testcase is available in respective script files

Signed-off-by: ARShreenidhi <rshreenidhi@vmware.com>
2022-06-21 06:25:20 +00:00
Donatas Abraitis
77be6d6a23 bgpd: Show cache server preference in show rpki cache-server output
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-06-20 22:49:32 +03:00
Donatas Abraitis
8eb7f5fce8 doc: Specify preference for RPKI cache server
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-06-20 22:44:29 +03:00
Donatas Abraitis
11423e5029 bgpd: Generate RPKI CLI config even if no cache servers configured
If we have more CLI options configured and the last cache server is removed,
then the whole RPKI section is dropped.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-06-20 22:41:20 +03:00
Donatas Abraitis
2a5f5ec00f bgpd: Drop SSH public key for RPKI CLI option
It's not used anywhere.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-06-20 22:23:07 +03:00
Donatas Abraitis
cc22635ac4 bgpd: Allow deleting full line for RPKI cache server
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-06-20 21:29:18 +03:00
Donatas Abraitis
8156765abe bgpd: Add no rpki command
To delete the whole RPKI section.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-06-20 20:56:32 +03:00
Donatas Abraitis
0ebabd4107 bgpd: Increase peer->flags to uint64_t
We will hit the limit soon, let's increase this in advance.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-06-20 20:21:26 +03:00
Igor Ryzhov
2af482767c
Merge pull request #11146 from NicolasDichtel/master
lib/if: fix interface name comparison
2022-06-20 19:54:35 +03:00
Donatas Abraitis
298ff7e357
Merge pull request #11284 from ordex/prefixlen_count
bgpd: Allow statistics gathering to give more data about prefix Lengths
2022-06-20 11:08:39 +03:00
Donatas Abraitis
4ed0abcb55
Merge pull request #11423 from donaldsharp/lgtm_fixes
Lgtm fixes
2022-06-19 22:33:01 +03:00
Donatas Abraitis
ee91e848ff
Merge pull request #11431 from donaldsharp/bgp_cleanups
Add some extra data for when things might be going wrong
2022-06-19 12:02:56 +03:00
anlan_cs
f1f4a65288 zebra: remove redundant calling hook for fpm
Since the calling hook for old fpm is done in `rib_uninstall_kernel()`
inside, this calling place outside should be redundant. Just remove it.

Signed-off-by: anlan_cs <vic.lan@pica8.com>
2022-06-17 17:42:12 -04:00
Donald Sharp
c08f56304b lib: Add some extra error messages for when things go wrong
In sockunion.c let's eliminate the silent and unexpected failure
mode to let the end operator figure out something is terribly wrong.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-06-17 13:47:03 -04:00
Donald Sharp
1e592331cb bgpd: Display useful values when using json for missing neighbor state
When a peer has not established connection yet, these values:
`hostLocal`, `portLocal`, `hostForeign`, `portForeign` might
not have any values and json output will not display anything
for them.  Modify the code to display some nominal values in
this situation so that parsers are not surprised.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-06-17 13:43:30 -04:00
Mark Stapp
0f9e2c918b ospf6: permit route delete without nexthops
It's possible for ospf6 to decide to delete a route after it's
removed all of the route's nexthops. It's ok to delete a prefix
alone - be a little more forgiving when preparing a route delete.

Signed-off-by: Mark Stapp <mstapp@nvidia.com>
2022-06-17 11:47:55 -04:00
Rafael Zalamena
38437392b9
Merge pull request #11425 from LabNConsulting/chopps/cleanup-redherring-memleaks
lib: cleanup red-herring memleaks in parent of daemonizing fork
2022-06-17 08:31:07 -03:00
Eugene Bogomazov
d864dd9eb1 bgpd: Add RFC9234 implementation
RFC9234 is a way to establish correct connection roles (Customer/
Provider, Peer or with RS) between bgp speakers. This patch:
- Add a new configuration/terminal option to set the appropriate local
role;
- Add a mechanism for checking used roles, implemented by exchanging
the corresponding capabilities in OPEN messages;
- Add strict mode to force other party to use this feature;
- Add basic support for a new transitive optional bgp attribute - OTC
(Only to Customer);
- Add logic for default setting OTC attribute and filtering routes with
this attribute by the edge speakers, if the appropriate conditions are
met;
- Add two test stands to check role negotiation and route filtering
during role usage.

Signed-off-by: Eugene Bogomazov <eb@qrator.net>
2022-06-17 13:14:46 +03:00
Christian Hopps
1213e46bfd
lib: cleanup red-herring memleaks in parent of daemonizing fork
- The parent of the daemonizing fork reports memleaks for the early
northbound allocations (libyang). If these were real memleaks these
would show up in the child as well; however, ignoring all memleaks in
the parent of the fork is too hard a sale. Instead, spend some CPU
cycles cleaning up the allocations in the parent after the fork and
immeidatley prior to exiting the parent after the daemonizing fork.

Signed-off-by: Christian Hopps <chopps@labn.net>
2022-06-17 02:14:30 -04:00
Donald Sharp
4151ca0ada
Merge pull request #11422 from opensourcerouting/feature/autoclose_stale_issues_prs
github: Autoclose stale issues/PRs that are stare longer than 180 days
2022-06-16 16:36:36 -04:00
Donald Sharp
8dfcf20fa0
Merge pull request #11419 from anlancs/fix/minor-1
zebra, lib: minor changes
2022-06-16 16:35:38 -04:00