[FROG] FRR Adding IPv6 Routes
Tim Bray
tim at provu.co.uk
Mon Apr 6 17:37:25 EDT 2020
And
do show bgp summary.
Do the bgp sessions stay up? Show long timers?
Another very long shot question - which linux kernel version? And do
you have any interfaces with MTU different to 1500?
There is an IPv6 funny
try
sysctl net.ipv6.route.max_size=2147483647
There isn't really a route cache for IPv6 in modern linux. But there is
a bug which causes problems if you have different MTU. some details here.
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=861115
(sorry, quick reply)
Tim
On 06/04/2020 22:19, Tran (US), Katherine K wrote:
>
> Hello,
>
> The next hop toggles between being accessible and not accessible. I
> run the “show ipv6 route” command at two different times and the IPv6
> routes toggles between being added and removed.
>
> Vtysh terminal output of the Relay
>
> -----------------------------------------
>
> Relay# show ipv6 route
>
> Codes: K - kernel route, C - connected, S - static, R - RIPng,
>
> O - OSPFv3, I - IS-IS, B - BGP, N - NHRP, T - Table,
>
> v - VNC, V - VNC-Direct, A - Babel, D - SHARP, F - PBR,
>
> f - OpenFabric,
>
> > - selected route, * - FIB route, q - queued route, r -
> rejected route
>
> B>* 2001:db8:1:1::/64 [20/1024] via fe80::1:2, eth2, 00:00:00
>
> B>* 2001:db8:1:2::/64 [20/1024] via fe80::2:2, eth3, 00:00:00
>
> B>* 2001:db8:1:3::/64 [20/1024] via fe80::1:2, eth2, 00:00:00
>
> B>* 2001:db8:1:4::/64 [20/1024] via fe80::2:2, eth3, 00:00:00
>
> B fd80::1:0/112 [20/0] via fe80::1:2, eth2, 00:00:00
>
> C>* fd80::1:0/112 is directly connected, eth2, 00:00:21
>
> B>* fd80::1:2/128 [20/1024] via fe80::1:2, eth2, 00:00:00
>
> B fd80::2:0/112 [20/0] via fe80::2:2, eth3, 00:00:00
>
> C>* fd80::2:0/112 is directly connected, eth3, 00:00:21
>
> B>* fd80::2:2/128 [20/1024] via fe80::2:2, eth3, 00:00:00
>
> C * fe80::/10 is directly connected, eth3, 00:00:20
>
> C * fe80::/10 is directly connected, eth2, 00:00:20
>
> C * fe80::/10 is directly connected, eth3, 00:00:21
>
> C>* fe80::/10 is directly connected, eth2, 00:00:21
>
> C * fe80::/64 is directly connected, eth1, 00:00:17
>
> C>* fe80::/64 is directly connected, eth0, 00:00:17
>
> Relay# show ipv6 route
>
> Codes: K - kernel route, C - connected, S - static, R - RIPng,
>
> O - OSPFv3, I - IS-IS, B - BGP, N - NHRP, T - Table,
>
> v - VNC, V - VNC-Direct, A - Babel, D - SHARP, F - PBR,
>
> f - OpenFabric,
>
> > - selected route, * - FIB route, q - queued route, r -
> rejected route
>
> C>* fd80::1:0/112 is directly connected, eth2, 00:02:13
>
> C>* fd80::2:0/112 is directly connected, eth3, 00:02:13
>
> C * fe80::/10 is directly connected, eth3, 00:02:12
>
> C * fe80::/10 is directly connected, eth2, 00:02:12
>
> C * fe80::/10 is directly connected, eth3, 00:02:13
>
> C>* fe80::/10 is directly connected, eth2, 00:02:13
>
> C * fe80::/64 is directly connected, eth1, 00:02:09
>
> C>* fe80::/64 is directly connected, eth0, 00:02:09
>
> Below are the frr.conf config files for my configuration.
>
> The Relay, Server 1 and Server 2 are all connected to N3.
>
> Relay Config File
>
> --------------------
>
> log file /var/log/frr/frr.log debugging
>
> !
>
> interface eth0
>
> ip address 10.0.4.2/24
>
> !
>
> interface eth1
>
> ipv6 address 2001::1/64
>
> !
>
> interface aero2
>
> ipv6 address fe80::1:1/10
>
> ipv6 address fd80::1:1/112
>
> !
>
> interface aero3
>
> ipv6 address fe80::2:1/10
>
> ipv6 address fd80::2:1/112
>
> !
>
> ! Static routes
>
> ip route 0.0.0.0/0 10.0.4.1
>
> !
>
> !
>
> !
>
> ! BGP configuration
>
> !
>
> ! You should configure the AS number below,
>
> ! along with this router's peers.
>
> !
>
> router bgp 1
>
> bgp router-id 10.0.4.2
>
> no bgp default ipv4-unicast
>
> neighbor fd80::1:2 remote-as 2
>
> neighbor fd80::1:2 interface aero2
>
> neighbor fd80::2:2 remote-as 3
>
> neighbor fd80::2:2 interface aero3
>
> address-family ipv6
>
> neighbor fd80::1:2 activate
>
> neighbor fd80::1:2 next-hop-self
>
> neighbor fd80::1:2 default-originate
>
> neighbor fd80::1:2 distribute-list blackhole out
>
> neighbor fd80::2:2 activate
>
> neighbor fd80::2:2 next-hop-self
>
> neighbor fd80::2:2 default-originate
>
> neighbor fd80::2:2 distribute-list blackhole out
>
> ! access-list blackhole deny any
>
> exit-address-family
>
> !
>
> ipv6 access-list blackhole deny any
>
> !
>
> Server1 config file
>
> ----------------------
>
> log file /var/log/frr/frr.log debugging
>
> interface eth0
>
> ip address 10.0.2.2/24
>
> !
>
> interface aero0
>
> ipv6 address fe80::1:2/10
>
> ipv6 address fd80::1:2/112
>
> !
>
> ! Static routes
>
> !
>
> ip route 0.0.0.0/0 10.0.2.1
>
> !
>
> !
>
> ! BGP configuration
>
> !
>
> ! You should configure the AS number below,
>
> ! along with this router's peers.
>
> !
>
> router bgp 2
>
> bgp router-id 10.0.2.2
>
> no bgp default ipv4-unicast
>
> neighbor fd80::1:1 remote-as 1
>
> neighbor fd80::1:1 interface aero0
>
> neighbor fd80::1:1 advertisement-interval 0
>
> address-family ipv6
>
> redistribute connected
>
> redistribute static
>
> redistribute kernel
>
> neighbor fd80::1:1 activate
>
> neighbor fd80::1:1 next-hop-self
>
> neighbor fd80::1:1 distribute-list 101 out
>
> exit-address-family
>
> !
>
> ipv6 access-list 101 permit 2001::/16
>
> ipv6 access-list 101 permit fd80::/10
>
> ipv6 access-list 101 deny any
>
> !
>
> Server2 config file
>
> ----------------------
>
> interface eth0
>
> ip address 10.0.3.2/24
>
> !
>
> interface aero0
>
> ipv6 address fe80::2:2/10
>
> ipv6 address fd80::2:2/112
>
> !
>
> ! Static routes
>
> ip route 0.0.0.0/0 10.0.3.1
>
> !
>
> !
>
> ! BGP configuration
>
> !
>
> ! You should configure the AS number below,
>
> ! along with this router's peers.
>
> !
>
> router bgp 3
>
> bgp router-id 10.0.3.2
>
> no bgp default ipv4-unicast
>
> neighbor fd80::2:1 remote-as 1
>
> neighbor fd80::2:1 interface aero0
>
> neighbor fd80::2:1 advertisement-interval 0
>
> address-family ipv6
>
> redistribute connected
>
> redistribute static
>
> redistribute kernel
>
> neighbor fd80::2:1 activate
>
> neighbor fd80::2:1 next-hop-self
>
> neighbor fd80::2:1 distribute-list 101 out
>
> exit-address-family
>
> !
>
> ipv6 access-list 101 permit 2001::/16
>
> ipv6 access-list 101 permit fd80::/10
>
> ipv6 access-list 101 deny any
>
> N3 config file
>
> ---------------------
>
> interface eth2
>
> !
>
> interface eth3
>
> !
>
> interface eth4
>
> !
>
> interface eth5
>
> !
>
> interface eth0
>
> !
>
> interface eth1
>
> !
>
> Thank you,
>
> Katherine
>
> *From:* Tim Bray [mailto:tim at provu.co.uk]
> *Sent:* Thursday, April 02, 2020 3:31 PM
> *To:* frog at lists.frrouting.org
> *Subject:* Re: [FROG] FRR Adding IPv6 Routes
>
> On 02/04/2020 22:25, Tran (US), Katherine K wrote:
>
> I am trying to switch from Quagga to FRR, but I am having issues
> adding distributed IPv6 routes. Although the IPv6 routes get
> added, they keep toggling between being added and removed. This
> did not occur while using Quagga.
>
> A difference between the added IPv6 routes of Quagga and FRR was
> that (1) the Quagga routes are by protocol zebra and (2) the FRR
> routes are by protocol 186, which I deduced to be bgpd. This can
> be seen by initiating the command “ip -6 ro sh”.
>
> Quagga
>
> ----------
>
> 2001:XXXX:X:X::/64 via fe80::1:2 dev eth0 proto zebra metric 1024
> pref medium
>
> FRR
>
> -----
>
> 2001:XXXX:X:X::/64 via fe80::1:2 dev eth0 proto 186 metric 20 pref
> medium
>
> I think, the display of 186 it just because you need the `friendly`
> names specifying
>
> You could edit etc/iproute2/rt_protos and add the missing numbers and
> the output would look better. See below.
>
> I suspect this is not why routes are being added and withdrawn.
>
> $ more /etc/iproute2/rt_protos
> #
> # Reserved protocols.
> #
> 0 unspec
> 1 redirect
> 2 kernel
> 3 boot
> 4 static
> 8 gated
> 9 ra
> 10 mrt
> 11 zebra
> 12 bird
> 13 dnrouted
> 14 xorp
> 15 ntk
> 16 dhcp
> 42 babel
> 186 bgp
> 187 isis
> 188 ospf
> 189 rip
> 192 eigrp
>
> Not sure what else to say. Can you post some more config?
>
> if you type
>
> do show ipv6 route <a prefix>
>
> what comes out?
>
> Is the next hop accessible?
>
> I'd keep trying, because FRR fixes so many IPv6 problems you don't
> know were problems until you switched to FRR :)
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.frrouting.org/pipermail/frog/attachments/20200406/395fac72/attachment-0001.html>
More information about the frog
mailing list