Commit Graph

15725 Commits

Author SHA1 Message Date
Donald Sharp
08793e9944 bgpd: neighbor X:X::X default-originate complains about (null)
The `neighbor X:X::X default-originate command is complaining
that:
The route-map '(null)' does not exist.

Upon inspection of the code we were passing a NULL
string to the lookup.  Testing for null gets us this:

donna.cumulusnetworks.com# conf t
donna.cumulusnetworks.com(config)# router bgp 99
donna.cumulusnetworks.com(config-router)# neighbor 2001:1::1:2 remote-as 99
donna.cumulusnetworks.com(config-router)# neighbor 2001:1::1:2 default-originate
donna.cumulusnetworks.com(config-router)# end
donna.cumulusnetworks.com# show run
Building configuration...

Current configuration:
!
frr version 7.2-dev
frr defaults datacenter
hostname donna.cumulusnetworks.com
log stdout
no ipv6 forwarding
!
ip route 4.5.6.7/32 10.50.11.4
!
router bgp 99
 neighbor 2001:1::1:2 remote-as 99
 !
 address-family ipv4 unicast
  neighbor 2001:1::1:2 default-originate

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2019-09-10 23:21:40 +03:00
Donald Sharp
e7c0db4770
Merge pull request #4938 from ton31337/feature/documentation_for_rfc8212_7.1
doc: [7.1] Add documentation for `bgp ebgp-requires-policy` command
2019-09-06 07:37:05 -04:00
Donatas Abraitis
5233e410a4 doc: Add documentation for bgp ebgp-requires-policy command
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2019-09-05 20:06:09 +03:00
Donald Sharp
6ba76bbc12
Merge pull request #4899 from ton31337/fix/no_aspath_prepend_last_7.1
bgpd: [7.1] Add 'no set as-path prepend last-as X' command
2019-08-29 11:55:59 -04:00
Donald Sharp
10422bd263 bgpd: Update doc for some as-path route-map commands
Update the documentation for some as-path route-map commands.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2019-08-29 14:36:57 +03:00
Donald Sharp
725edf53f6 bgpd: Add 'no set as-path prepend last-as X' command
The `set as-path prepend last-as X` command had no, 'no' form
of the command.  Add this into the cli.

Testing:
!
route-map BLARBLE permit 10
 set as-path prepend last-as 3
!
!
router bgp 9999
 neighbor 10.50.12.118 remote-as external
 neighbor 10.50.12.118 ebgp-multihop 30
 !
 address-family ipv4 unicast
  neighbor 10.50.12.118 route-map BLARBLE in
 !
!

eva# show bgp ipv4 uni 4.4.4.4
BGP routing table entry for 4.4.4.4/32
Paths: (1 available, best #1, table default)
  Advertised to non peer-group peers:
  10.50.12.118
  999 999 999 999
    10.50.12.118 from 10.50.12.118 (10.50.12.118)
      Origin incomplete, metric 0, valid, external, best (First path received)
      Last update: Mon Aug 26 09:47:17 2019

eva# conf
eva(config)# route-map BLARBLE permit 10
eva(config-route-map)# no set as-path prepend last-as 3
eva(config-route-map)# end
eva# clear bgp ipv4 uni *
eva# show bgp ipv4 uni 4.4.4.4
BGP routing table entry for 4.4.4.4/32
Paths: (1 available, best #1, table default)
  Advertised to non peer-group peers:
  10.50.12.118
  999
    10.50.12.118 from 10.50.12.118 (10.50.12.118)
      Origin incomplete, metric 0, valid, external, best (First path received)
      Last update: Mon Aug 26 09:48:31 2019

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2019-08-29 14:36:47 +03:00
Donald Sharp
1ed807a9e9
Merge pull request #4853 from rtrlib/2019-08-16-bugfix-7-1
bgpd: rpki fixes (stable/7.1)
2019-08-20 09:51:53 -04:00
Marcel Röthke
6641015796 bgpd: fix bgp_table range lookup
In case the topmost node has a larger prefix length than the lookup
prefix it never matches even if it was still lower than maxlen

This also alters a test case to check for this bug.

Signed-off-by: Marcel Röthke <marcel.roethke@haw-hamburg.de>
2019-08-20 10:31:43 +02:00
Marcel Röthke
8659448a01 bgpd: remove initial sync timeout in rpki startup code
The initial sync timeout breaks config load and is not necessary anyway.

Fix #4827

Signed-off-by: Marcel Röthke <marcel.roethke@haw-hamburg.de>
2019-08-20 10:31:43 +02:00
Russ White
6453f430e6
Merge pull request #4743 from opensourcerouting/7.1/ospfd-default-originate
[7.1] ospfd: fix default originate always
2019-08-06 08:29:08 -04:00
David Lamparter
c498459693
bgpd: [7.1] Strip delete keyword when looking up for communit… (#4769)
bgpd: [7.1] Strip `delete` keyword when looking up for communities
2019-08-06 10:41:07 +02:00
David Lamparter
057a202e25
bgpd: [7.1] Strip delete keyword when looking up for lcommuni… (#4786)
bgpd: [7.1] Strip `delete` keyword when looking up for lcommunities
2019-08-06 10:40:26 +02:00
Donatas Abraitis
147d7886d9 bgpd: Strip delete keyword when looking up for lcommunities
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2019-08-06 02:58:04 +03:00
Donatas Abraitis
34146f8054 topotests: Check if set-comm-list is working under route-map scope
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2019-08-02 09:35:13 +03:00
Donatas Abraitis
21b729d190 bgpd: Convert to network byte order before passing value to community_del_val
community_val_get() returns ntohl(val) which is used in more places like
community_include(), community_add_val(), but community_del_val() is missing
back conversion htonl().

Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2019-08-02 09:35:10 +03:00
Donatas Abraitis
7787f00fde bgpd: Strip delete keyword when looking up for communities
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2019-08-02 09:35:04 +03:00
Donald Sharp
a471dff118
Merge pull request #4749 from ton31337/fix/next-hop-self_force_alias_for_ipv6_7.1
bgpd: [7.1] Add hidden `next-hop-self all` for all address families
2019-07-30 10:01:31 -04:00
Donatas Abraitis
ef298c6116 bgpd: Add hidden next-hop-self all for all address families
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2019-07-29 22:11:06 +03:00
David Lamparter
5353782f92 ospfd: re-fix default origination check
ospf->external[DEFAULT_ROUTE] and zclient->default_information don't
line up with each other; the former is only used for "originate always".

Fixes: #4237
Signed-off-by: David Lamparter <equinox@diac24.net>
2019-07-29 14:58:01 +02:00
David Lamparter
d1ba29e8c4 Revert "ospfd: default route got flushed after lsa refresh timer."
This reverts commit a6b4e1fded.

This fix is wrong too.

Signed-off-by: David Lamparter <equinox@diac24.net>
2019-07-29 14:57:57 +02:00
Russ White
c82cd58338
Merge pull request #4662 from opensourcerouting/fix-outdated-candidate-7.1
[7.1] lib: fix outdated candidate configuration issue
2019-07-16 09:19:15 -04:00
Quentin Young
1acfa82081
Merge pull request #4665 from ton31337/fix/show_delete_suboption_for_set_comm-list_7.1
bgpd: [7.1] Show `delete` sub-option for `set [l]comm-list <list> delete`
2019-07-10 12:06:18 -04:00
Donatas Abraitis
16ec166854 bgpd: Show delete sub-option for set [l]comm-list <list> delete
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2019-07-09 20:05:47 +03:00
Renato Westphal
e7ba083cbe lib: fix outdated candidate configuration issue
Even when using the classic CLI mode (i.e. when --tcli is not
used), the northbound code still uses vty->candidate_config
to perform configuration changes. From the perspective of the
user, the running configuration is being edited directly, but
under the hood the northbound layer does a full configuration
transaction for each command.  When the running configuration is
edited by a northbound client other than the CLI (e.g. kernel,
gRPC), vty->candidate_config might become outdated, and this can
lead to lots of weird problems. To fix this, always regenerate
vty->candidate_config before each configuration command when
using the classic CLI mode. When using the transactional CLI,
the user needs to update the candidate manually using the "update"
command, otherwise the "commit" command will fail with this error:
"% Candidate configuration needs to be updated before commit".

Fixes some problems reported by Don after moving an interface from
one VRF to another one while zebra is running.

Reported-by: Don Slice <dslice@cumulusnetworks.com>
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2019-07-09 11:09:05 -03:00
Donald Sharp
070154df33
Merge pull request #4646 from ton31337/feature/validate_lcommunity_7.1
bgpd: [7.1] Validate large-community-list against UINT_MAX
2019-07-08 21:47:58 -04:00
Donatas Abraitis
653eab6149 bgpd: Validate large-community-list against UINT_MAX
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2019-07-07 11:29:56 +03:00
David Lamparter
6212024ea6
[7.1] *: s/TRUE/true/, s/FALSE/false/ (#4633)
[7.1] *: s/TRUE/true/, s/FALSE/false/
2019-07-03 14:36:16 +02:00
Quentin Young
d2853dfe66 *: s/TRUE/true/, s/FALSE/false/
Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2019-07-02 18:02:35 +00:00
Jafar Al-Gharaibeh
7d6a7a2888
Merge pull request #4611 from donaldsharp/7_1_igmp_connected_source
[7.1]pimd: Dissallow query to be received from a non-connected source
2019-06-27 21:50:20 +03:00
Donald Sharp
26095684f4 pimd: Dissallow query to be received from a non-connected source
When we receive an igmp query on a interface, ensure that the
source address of the packet is connected to the incoming
interface.  This will prevent a meanie from crafting a igmp
packet with a source address less than ours and causing
us to suspend query activities.

Fixes: #1692
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2019-06-25 00:33:58 -04:00
Donald Sharp
33abf43a3a
Merge pull request #4595 from ton31337/feature/autocomplete/bgp_peer-groups_7.1
bgpd: [7.1] List all groups dynamically for commands with peer-group
2019-06-23 19:01:37 -04:00
Donatas Abraitis
f3c3ee0d7c bgpd: List all groups dynamically for commands with peer-group
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2019-06-23 21:17:28 +03:00
Donald Sharp
436de3de82
Merge pull request #4593 from ton31337/fix/match_ip_nexthop_type_blackhole_7.1
rmap: [7.1] Backport changes regarding `no match ip next-hop type`
2019-06-22 10:09:34 -04:00
Donatas Abraitis
7685478591 rmap: Minor changes in comments regarding match ip[v6] next-hop type
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2019-06-22 14:33:11 +03:00
Donatas Abraitis
3534257580 rmap: Modify cli helper text for match_ipv6_next_hop_type_cmd
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2019-06-22 14:33:08 +03:00
Donatas Abraitis
2d818099f7 rmap: Add hooks into zebra,ospf,rip for match ip next-hop type blackhole
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2019-06-22 14:33:05 +03:00
David Lamparter
23db048e44 FRRouting release 7.1
- gRPC northbound plugin
- "table NNN" removed from zebra
- more dataplane MT work
- EVPN in non-default VRFs
- RFC 8212 (default deny policy for eBGP)
- RFC 8106 (IPv6 RA DNS options)

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2019-06-18 08:10:14 +02:00
Donald Sharp
4d39e24005
Merge pull request #4539 from opensourcerouting/7.1/watchfrr-sd-timeout
[7.1] tools: retain sanity when reloading under systemd
2019-06-17 15:18:33 -04:00
David Lamparter
30b34aac84 tools: retain sanity when reloading under systemd
Without this, we end up restarting watchfrr with the systemd watchdog
non-functional & tripped a bit later.  Also, if watchfrr is in the
"control" cgroup, systemd 232 will kill it.  (241 apparently doesn't.
Can't find anything about this in systemd's ChangeLog though.)

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
(cherry picked from commit 9c251d376a)
2019-06-17 21:05:23 +02:00
David Lamparter
1589276205
7.1: isisd: The RFC states that v6 addresses are limited to 16 in a hello … (#4475)
7.1: isisd: The RFC states that v6 addresses are limited to 16 in a hello …
2019-06-06 19:44:03 +02:00
Donald Sharp
a443e03645 isisd: The RFC states that v6 addresses are limited to 16 in a hello packet
The RFC states we can send only up to 16 v6 addresses in a hello packet
and cannot send sub tlv's of that type.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2019-06-06 09:24:24 -04:00
Rafael Zalamena
bb3795c5c0
Merge pull request #4462 from donaldsharp/7.1_bfd_access_list
7.1: bfdd: Modify bfdd to quietly accept access-lists
2019-06-05 11:37:55 -03:00
Donald Sharp
4feb4d9dff bfdd: Modify bfdd to quietly accept access-lists
The `access-list ...` command was causing bfdd to return
'unknown commands'.  Make bfdd at least cognizant of
access-lists enough to not create strange error messages

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2019-06-04 20:03:40 -04:00
Donald Sharp
0643ec535f
Merge pull request #4425 from ton31337/feature/show_fqdn_in_show_ip_bgp_7.1
bgpd: [7.1] Show FQDN in `show [ip] bgp` output
2019-05-30 12:59:16 -04:00
Donatas Abraitis
fdfd87fef2 bgpd: Show FQDN in show [ip] bgp output
We already show this information in `show [ip] bgp <prefix`, thus why don't
show it in global output. It's very handy when using at scale and to see
the whole picture instead of resolving neighbor manually.

It will show FQDN only if `bgp default show-hostname` is toggled.

Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2019-05-30 17:10:51 +03:00
Donald Sharp
9771dce5fa
Merge pull request #4423 from ton31337/feature/delete_prefix_list_by_sequence_number_7.1
plist: [7.1] Delete prefix-list by sequence number
2019-05-30 09:01:54 -04:00
Donatas Abraitis
31b4b606a8 plist: Delete prefix-list by sequence number
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2019-05-30 14:51:30 +03:00
Donald Sharp
22b01311b5
Merge pull request #4411 from opensourcerouting/feature/fix-isis-route-deletion-7.1
isisd: del routes when area is unconfigured
2019-05-29 09:11:57 -04:00
Emanuele Di Pascale
e02e0871ec isisd: del routes when area is unconfigured
attempt to fix #4399

Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2019-05-29 13:52:03 +02:00
Donald Sharp
9eadfb4dfd
Merge pull request #4406 from opensourcerouting/snap-fix-7.1
[7.1] Snap fixes for 7.1
2019-05-28 21:05:08 -04:00