[Xorp-users] Xorp, pimsm and ethertap

Mike Horn mhorn@vyatta.com
Sat, 25 Feb 2006 00:21:23 -0800 (PST)


Hi Calum,

You do not need to explicitly allow routes in BGP, the implicit policy is to allow all.  The problem you are seeing typically occurs when the nexthop lookup fails for the BGP route entry and therefore the route is not installed in the RIB.  Since we can see the connected route for 10.0.0.120/30 in the routing table this does not appear to be the issue.

Fortunately I have a theory, I think that XORP might not be properly registering the link state of the tunnel interface, so even though the route exists they are not being installed in the RIB.  Is it possible for you to test via a non-tunneled connection to another device running BGP?  This would help narrow down whether the issue is the tunnel interface or something more fundamental on your system.

Unfortunately I won't be able to test a tunnel interface until Tuesday, but hopefully we'll have it figured out by then.

-mike

----- Original Message -----
From: Calum <caluml@gmail.com>
To: Pavlin Radoslavov <pavlin@icir.org>
Cc: Mike Horn <mhorn@vyatta.com>, xorp-users@xorp.org
Sent: Friday, February 24, 2006 4:36:17 PM GMT-0700
Subject: Re: [Xorp-users] Xorp, pimsm and ethertap

Hello Pavlin,

The "unable to ping" problem was just a firewall rule, and isn't an
issue any more.

Yes, the thing I am thinking about is not just up/down, but actually
killing the process that creates the tap.
Let me try it out, and see what happens:

bash # kill 24904
bash # ifconfig taphush
taphush: error fetching interface information: Device not found
bash # ip link show taphush
Device "taphush" does not exist.
bash #

Nothing untoward appeared in the window that is running xorp_rtrmgr in.

However, xorp seems to be unaware that it's gone.
# bin/xorpsh
Welcome to XORP on torro
root@torro> show interfaces
taphush/taphush: Flags:<ENABLED,BROADCAST,MULTICAST> mtu 1500
        physical index 12
        ether 4a:12:38:a6:de:7c

Running commit causes this sort of thing:

[ 2006/02/24 23:23:08 INFO xorp_bgp BGP ] Sending: Notification
Packet: Hold Timer Expired(4)
[ 2006/02/24 23:23:08  ERROR xorp_bgp:25341 LIBCOMM +354 comm_sock.c
comm_sock_bind4 ] Error binding socket (family = 2, my_addr =
10.0.0.122, my_port = 0): Cannot assign requested address

Which is fair enough.
If I start the process back up...

# ./start-tap
# ifconfig taphush
taphush   Link encap:Ethernet  HWaddr 42:98:7F:BF:54:95
          inet addr:10.0.0.122  Bcast:10.0.0.123  Mask:255.255.255.252

> show bgp peers detail
Peer 1: local 10.0.0.122/179 remote 10.0.0.121/179
  Peer ID: 10.0.0.1
  Peer State: ESTABLISHED
  Admin State: START

So it seems to pick it back up fairly painlessly.

Anyway, back to the main problem. :)
I've set the next-hop and local-ip both to 1.0.0.122, but I'm not
seeing any routes via route -n.
Do I need to specify what routes I will allow to be accepted or something?
Or do I need to add a network statement for the /30 link between the
two routers or something like that?

C

> show bgp routes
Status Codes: * valid route, > best route
Origin Codes: i IGP, e EGP, ? incomplete

   Prefix                Nexthop                    Peer            AS Path
   ------                -------                    ----            -------
*  10.0.0.0/30            10.0.0.121                  10.0.0.1        1 i
*  10.0.0.4/30            10.0.0.121                  10.0.0.1        1 i
...... snip lots of lines.

So I'm getting the routes in from AS 1 ( 10.0.0.121).
But route -n at the shell doesn't show any of them.

_______________________________________________
Xorp-users mailing list
Xorp-users@xorp.org
http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-users