North American Network Operators Group

Date Prev | Date Next | Date Index | Thread Index | Author Index | Historical

Re: Determine difference between 2 BGP feeds

  • From: Richard A Steenbergen
  • Date: Tue Apr 18 16:57:15 2006

On Tue, Apr 18, 2006 at 04:28:40PM -0400, Scott Tuc Ellentuch at T-B-O-H wrote:
> > 
> > On Tue, 18 Apr 2006, Scott Tuc Ellentuch at T-B-O-H wrote:
> > 
> > > 	Is there a utility that I can use that will pull the
> > > routes off each router (Foundry preferred), and then compare
> > > them as best it can to see why there is such a difference?
> > > I can understand a handful of routes over what CIDR says,
> > > but a minimum of 3K more?
> > 
> > Is one of them as4323?
> > 
> 	Actually, no. I wasn't wanting to "name names" to
> protect the innocent... BUT....
>   Neighbor Address  AS#   State   Time     Rt:Accepted Filtered Sent   ToSend
>      7911  ESTAB   4d21h57m    182287   0        4      0 
>   Neighbor Address  AS#   State   Time     Rt:Accepted Filtered Sent   ToSend
>     22822 ESTAB  18d16h51m    186379   0        4      0 

This is actually fairly common. There are a lot of folks out there who 
announce more specifics to one network but not another, or who apply no 
export or limited export community tags in various places. Also, every 
network has a different filter policy of what they will and won't accept.

FWIW my "exported to bgp speaking customers" count at this moment is 
182525. I wouldn't get concerned about it unless the network with more 
prefixes is doing something absurdly stupid like sending you internal /30s 
and such (which, well, a lot of people do :P). It could also be something 
like peers agreeing to traffic engineer by sending each other more 
specifics w/meds, though if they were smart they would be doing that with 
no-export so as to not make your TE job more difficult. If you really want 
to compare the differences, try something like:

telnet yourrouter | tee outputfile
term length 0
sh ip bgp nei x.x.x.x received-routes

Followed by 30 secs with awk(1), cut(1), diff(1), etc. For floundry, 
something dirt simple like "grep / | awk '{ print $2 }'" should do the 

Richard A Steenbergen <[email protected]>
GPG Key ID: 0xF8B12CBC (7535 7F59 8204 ED1F CC1C 53AF 4C41 5ECA F8B1 2CBC)