Commit Graph

23635 Commits

Author SHA1 Message Date
Philippe Guibert
df948efc56 zebra: fixes NDA_DST in netlink_neigh_update() function
When netlink_neigh_update() is called, the link registration was
failing, due to bad request length.
Also, the query was failing if NDA_DST was an ipv6 address.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2021-04-09 18:29:58 +02:00
Philippe Guibert
451e2b8c7e lib: add api to configure neighbor table per interface
this api is needed for nhrp. the goal is to implement it in zebra, while
other daemon will used it.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2021-04-09 18:29:58 +02:00
Philippe Guibert
05657ec2b7 nhrp, lib, zebra: add/del neighbor entry possible from nhrp
a zebra api is extended to offer ability to add or remove neighbor
entry from daemon. Also this extension makes possible to add neigh
entry, not only between IPs and macs, but also between IPs and NBMA IPs.
This API supports configuring ipv6/ipv4 entries with ipv4/ipv6 lladdr.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2021-04-09 18:29:58 +02:00
Philippe Guibert
b3b7510464 nhrpd: link layer registration to notifications
neighbor notifications are done in zebra. so, instead of relying on
nhrp, rely on zebra by using zebra api interface.
Consequently, the code originally used in nhrp for netlink neighor
notification is no more used.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2021-04-09 18:29:58 +02:00
Philippe Guibert
7723e8d3fd zebra: link layer config and notification, implementation in zebra
zebra implements zebra api for configuring link layer information. that
can be an arp entry (for ipv4) or ipv6 neighbor discovery entry. This
can also be an ipv4/ipv6 entry associated to an underlay ipv4 address,
as it is used in gre point to multipoint interfaces.
this api will also be used as monitoring. an hash list is instantiated
into zebra (this is the vrf bitmap). each client interested in those entries
in a specific vrf, will listen for following messages: entries added, removed,
or who-has messages.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2021-04-09 18:29:58 +02:00
Philippe Guibert
fda64ab443 lib: link layer neighbor registration and notification, define API msgs
This patch implements new zapi api to get neighbor information that zebra knows
and that other daemons may need to know. Actually, nhrp daemons is
interested in getting the neighbor information on gre interfaces, and
the API will be used for that.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2021-04-09 18:29:58 +02:00
Philippe Guibert
e8263bdb77 nhrpd: use CALLOC instead of MALLOC
in order to apply a memset to a non initialised structure, use CALLOC
instead of MALLOC

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2021-04-09 18:29:58 +02:00
Philippe Guibert
4030737044 nhrpd: lookup appropriate ipsec path
lookup appropriate ipsec path. there are systems where the path where
the charon.vici file is not in standard paths. For that, 'ipsec
--piddir' may help in solving the path.

result of ipsec --piddir is as follow for example:
'
/etc/ike/ipsec.d/run
'

Note that the assumption is done that even if there are several
instances of strongswan across the vrfs, the charon.vici path file is
the same across vrfs. Consequently, as there is a thread per vrf that
performs vici initialisation, and file path retrieval is part of the
vici initialisation procedure, in order to avoid intempestive system
calls, use a boolean 'vici_charon_filepath_done' to avoid doing
unnecessary calls.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2021-04-09 18:29:58 +02:00
Quentin Young
f99b9d6eb1
Merge pull request #8432 from ton31337/fix/use_bool_for_use32bit_asn
bgpd: Use bool type to check if use32bit ASN
2021-04-09 15:59:38 +00:00
Donald Sharp
3404eb5309
Merge pull request #8428 from idryzhov/show-memory-daemon
vtysh: add "show memory" for a single daemon
2021-04-09 11:18:25 -04:00
Donald Sharp
97bbb2c1c4
Merge pull request #8433 from ton31337/fix/mpls_prd_dead_code
bgpd: Remove dead code regarding prefix_rd allocation
2021-04-09 11:17:49 -04:00
Donald Sharp
750b1916b9
Merge pull request #8422 from idryzhov/fix-show-ip-ospf
ospfd: fix crash on "show ip ospf neighbor detail"
2021-04-09 08:14:17 -04:00
Donatas Abraitis
654527a1f0 bgpd: Remove dead code regarding prefix_rd allocation
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-04-09 14:38:01 +03:00
Donatas Abraitis
e9e1890ba5 bgpd: Use bool type to check if use32bit ASN
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-04-09 14:37:54 +03:00
Patrick Ruddy
455bc41000
Merge pull request #8430 from ton31337/fix/revert_0b6d35324ef3fd2b4d5997103795cad73eb72954
Revert "bgpd: BGP session not established for ipv6 link local address…
2021-04-09 12:25:21 +01:00
Igor Ryzhov
aa270404fc doc: add "show memory [DAEMON]"
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-04-09 11:30:49 +03:00
Igor Ryzhov
83c4442202 ospfd: fix crash on "show ip ospf neighbor detail"
Fixes #8419.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-04-09 11:24:51 +03:00
Donatas Abraitis
5fc443575b
Merge pull request #8424 from taspelund/allow_no_advertise_evpn
bgpd: always allow no advertise-svi-ip/default-gw
2021-04-09 10:55:11 +03:00
Donatas Abraitis
6740a191ad Revert "bgpd: BGP session not established for ipv6 link local address with vrf config"
This reverts commit 0b6d35324e.
2021-04-09 10:14:32 +03:00
Igor Ryzhov
f09e0369f6 vtysh: add "show memory" for a single daemon
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-04-08 18:47:43 +03:00
Patrick Ruddy
fb94a2e65d
Merge pull request #8402 from opensourcerouting/debian10-topotest-fix
tests: fix for l3mdev topotests on kernel 4.19
2021-04-08 14:54:54 +01:00
Trey Aspelund
e5aee1518a bgpd: always allow no advertise-svi-ip/default-gw
Current behavior has an EVPN_ENABLED check for both standard and 'no'
forms of 'advertise-svi-ip' and 'advertise-default-gw'. This prevents a
user from removing either command from running config if
'advertise-all-vni' is not present.
This commit removes/adjusts the EVPN_ENABLED checks to always allow the
'no' command so config doesn't get stuck.

Signed-off-by: Trey Aspelund <taspelund@nvidia.com>
2021-04-08 07:25:22 +00:00
Donatas Abraitis
9d78be6aac
Merge pull request #7434 from sudhanshukumar22/bgp-link-local-address
bgpd: BGP session not established for ipv6 link local address with vrf config
2021-04-08 09:26:55 +03:00
Mark Stapp
a702694a60
Merge pull request #8365 from aldobrrrr/fix_parse_topology_function_in_isis_topo1_vrf_test
topotests: fix 'parse_topology' function in test_isis_topo1_vrf.py
2021-04-07 15:01:12 -04:00
Igor Ryzhov
c53b1ff198
Merge pull request #8415 from mjstapp/fix_ospf_keyid_config
ospfd: permit over-write of message-digest-key
2021-04-07 15:16:47 +03:00
Quentin Young
f19d77a086
Merge pull request #8413 from mjstapp/zebra_doc_debugs
docs: add zebra debug docs
2021-04-06 22:11:50 +00:00
Jafar Al-Gharaibeh
b359c71eba
Merge pull request #8411 from donaldsharp/nhrp_really
nhrpd: Fixup tab usage and sockunion2str usage
2021-04-06 15:00:57 -05:00
Mark Stapp
519b14645e ospfd: permit over-write of message-digest-key
Allow over-write of message-digest-key interface config. Most
attributes handle multi-instance by ... ignoring instances,
and tolerating repeated config: do the same for md5 auth.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2021-04-06 15:26:51 -04:00
Mark Stapp
8d150f5287 docs: add zebra debug docs
Add docs for the zebra debug commands.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2021-04-06 14:18:18 -04:00
Russ White
964788a11f
Merge pull request #8405 from mjstapp/skip_backup_lsps
zebra: don't process LSPs with backups immediately
2021-04-06 11:11:52 -04:00
Russ White
63caaeb2c1
Merge pull request #8407 from ton31337/fix/nexthop_should_not_be_changed_if_peer_shares_common_subnet
tests: Nexthop should not be changed if peer X shares a common subnet
2021-04-06 11:02:19 -04:00
Donald Sharp
2a1fa50ecf nhrpd: Fixup tab usage and sockunion2str usage
For some reason the usage of tabs in a string snuck in as well
as using a sockunion2str instead of %pSU.  Fix.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-04-06 10:09:48 -04:00
Mark Stapp
1832ff8b49
Merge pull request #8295 from opensourcerouting/ospf6-topo-stabilize
topotest: stabilize OSPFv3 topology
2021-04-06 09:48:45 -04:00
Martin Winter
4af86fb679
Merge pull request #8360 from kuldeepkash/bgp_graceful_restart
tests: Fix for BGP_GR test failures
2021-04-06 14:09:52 +02:00
Donatas Abraitis
b1367d6859 tests: Nexthop should not be changed if peer X shares a common subnet
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-04-06 10:32:02 +03:00
Renato Westphal
a61086d29c
Merge pull request #8391 from idryzhov/fix-bgp-nb-prefix-list
bgpd: prefix-list and route-map nb fixes
2021-04-06 01:10:41 -03:00
Quentin Young
2a9d6bce5a
Merge pull request #8384 from volta-networks/fix_no_srb_block
tools: do in-place SRGB/SRLB changes
2021-04-06 03:44:25 +00:00
Mark Stapp
2aa2a407e4 zebra: be more selective about processing LSPs
When certain events occur (connected route changes e.g.)
zebra examines LSPs to see if they might have been affected. For
LSPs with backup nhlfes, skip this immediate processing and
wait for the owning protocol daemon to react.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2021-04-05 15:53:48 -04:00
Mark Stapp
04dda09218 zebra: add 'detail' mpls debug setting
Add setting and cli for 'debug zebra mpls detail'.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2021-04-05 15:53:48 -04:00
Igor Ryzhov
c3f84751a9
Merge pull request #8348 from chiragshah6/mdev
yang, bgpd: add northbound transactional callbacks for neighbor route-map for af l2vpn-evpn
2021-04-05 19:32:43 +03:00
David Schweizer
6a93e3df4e
tests: fix python3 backported iproute2 vrf check
Signed-off-by: David Schweizer <dschweizer@opensourcerouting.org>
2021-04-05 09:25:55 +02:00
David Schweizer
b04af734aa
tests: fix l3mdev config in isis-topo1-vrf topotest
Signed-off-by: David Schweizer <dschweizer@opensourcerouting.org>
2021-04-05 09:25:54 +02:00
David Schweizer
b7589f4e5c
tests: fix l3mdev config in bgp_vrf_lite_ipv6_rtadv topotest
Signed-off-by: David Schweizer <dschweizer@opensourcerouting.org>
2021-04-05 09:25:53 +02:00
David Schweizer
f2d729056e
tests: fix l3mdev config in bgp_l3vpn_to_bgp_vrf topotest
Signed-off-by: David Schweizer <dschweizer@opensourcerouting.org>
2021-04-05 09:25:52 +02:00
David Schweizer
a94d054dfd
tests: fix l3mdev config in bgp_evpn_rt5 topotest
Signed-off-by: David Schweizer <dschweizer@opensourcerouting.org>
2021-04-05 09:25:51 +02:00
David Schweizer
3d762f26a6
tests: add l3mdev config helpers for VRF topotests
Signed-off-by: David Schweizer <dschweizer@opensourcerouting.org>
2021-04-05 09:25:50 +02:00
Kuldeep Kashyap
2268cf50d5 tests: Fix for BGP_GR test failures
Few tests were failing in BGP-GR intermittently. Fixing the failures.

Signed-off-by: Kuldeep Kashyap <kashyapk@vmware.com>
2021-04-05 00:15:40 -07:00
Jafar Al-Gharaibeh
283981e4a7
Merge pull request #8240 from reubendowle/fixes/nhrp-nat
nhrp: NAT fixes
2021-04-03 22:37:25 -05:00
Quentin Young
68cfcb71c9
Merge pull request #8378 from pguibert6WIND/listen_group_limit
bgpd: increase the maximum number of neighbors in a listen group
2021-04-04 00:42:19 +00:00
Quentin Young
63f1943136
Merge pull request #8364 from stipmonster/master
Added pathd to the init files
2021-04-04 00:33:19 +00:00