bug-zebra
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

solaris - all my BGP routes and static routes to a tunnel are inactive.


From: Jim Crumpler
Subject: solaris - all my BGP routes and static routes to a tunnel are inactive.
Date: Wed, 5 Jun 2002 11:22:54 +1000

Hi, a recent change in the CVS tree causes all my BGP routes and static
routes to be inactive on Solaris.

In this case, the BGP peer is on the other end of an IPsec tunnel..  The
matching hext-hop route is a kernel route, which appears active here..  For
the static routes, the destination is also active and is also a kernel route
over an IPsec tunnel.  This is weird though, because the matched route is
selected (according to the table below anyway).

K>* 0.0.0.0/0 via 144.136.4.1, iprb0
S   10.224.0.0/19 [1/0] via 10.233.0.5 inactive
S   10.224.64.1/32 [1/0] via 10.233.0.5 inactive
B   10.232.0.0/27 [20/20] via 10.233.255.2 inactive, 00:11:50
B   10.232.0.64/28 [20/20] via 10.233.255.2 inactive, 00:11:50
B   10.232.0.128/28 [20/20] via 10.233.255.2 inactive, 00:11:50
O   10.232.4.0/24 [110/10] is directly connected, iprb1, 00:11:12
K * 10.232.4.0/24 via 10.232.4.1 inactive
C>* 10.232.4.0/24 is directly connected, iprb1
O   10.232.5.0/24 [110/10] is directly connected, iprb2, 00:11:42
K * 10.232.5.0/24 via 10.232.5.1 inactive
C>* 10.232.5.0/24 is directly connected, iprb2
O   10.232.6.0/24 [110/10] is directly connected, iprb3, 00:11:52
K * 10.232.6.0/24 via 10.232.6.1 inactive
C>* 10.232.6.0/24 is directly connected, iprb3
C>* 10.232.7.0/24 is directly connected, lo0
O>* 10.232.7.9/32 [110/20] via 10.232.4.9, iprb1, 00:11:12
  *                        via 10.232.5.9, iprb2, 00:11:12
C>* 10.233.0.0/24 is directly connected, ip.tun0
K>* 10.233.0.5/32 via 10.233.0.4, ip.tun0
----
C>* 10.233.255.0/24 is directly connected, ip.tun1
K>* 10.233.255.2/32 via 10.233.255.1, ip.tun1
----
C>* 127.0.0.0/8 is directly connected, lo0
K>* 224.0.0.0/4 via 10.232.4.1, iprb1

-----

I've tracked it down to nexthop_active_ipv4().. In CVS rib.c version 1.171 a
bunch of  ZEBRA_ROUTE_KERNEL options were removed, leaving only
ZEBRA_ROUTE_BGP..  This makes sense, since a kernel route should be
considered only if its active (which is checked in the line above)..

If I put one of these back in it all works again for Solaris, however this
is not really solving the proplem - I'm just guessing.. I still need to
confirm the route is not active for other stupid reason, such as the solaris
non-unique if_index problem.. Unfortunately its taking me a long time to
understand the depths of zebra code - I'll keep working on it, but in the
mean-time here's what I changed..

(snail)[/home/jgc/zebra/zebra/zebra] jgc# diff rib.c
../../zebra-0.93-pre-jgc/zebra/rib.c
266c266,267
<         || match->type == ZEBRA_ROUTE_BGP)
---
>         || match->type == ZEBRA_ROUTE_BGP
>         || match->type == ZEBRA_ROUTE_KERNEL)

I'll keep working on the real reason :-)

Any help appreciated in the mean-time..

Jim Crumpler.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]