On Tue, 18 Apr 2006, David Andersen wrote:
> Much of what Bill described below is already present
using Nick Feamster's
> bgptools release: http://
nms.lcs.mit.edu/software/bgp/bgptools/
>
> Start with zebra / quagga / etc., which do a great job
of dumping tables and
> updates.
>
> Then use bgptools to take the MRT-formatted dumps that
Zebra spits out and
> turn them into text, etc. With the '-q' option, can
insert the BGP updates
> or table snapshot directly into a SQL database.
My peer actually comes from a Zebra box, so I'm not talking
directly to
any production devices, in the event that I want to bounce
my db feed up
and down (debugging, featuritis treatments, etc) Z/Q +
bgptools is a great
suggestion for doing complex reporting/comparison on the
routing tables,
though. I've got a need for a more real-time view, so my
setup fits me a
little better than your suggestion, but potato/potatoe. =)
> then the libbgpdump.a library gives you lots of cool
things on top of that.
> You'd have to do a little work to get the analysis
tool you want, but it's
> pretty easy. Use the 'buildtree' starting program to
build the prefix tree
> from each provider and then compare those two trees
(see which prefixes are
> present/not present, see if any parts of the IP space
are unreachable in in
> one and unreachable in the other, etc.)
This is pretty interesting, I'll have to tinker with it,
especially since
I know one of my providers doesn't give me a full routing
table.
> It starts as Bill suggested - a read-only BGP peer from
the devices, which
> takes about 3 seconds to set up.
And for folks to whom this is new stuff: don't be an idiot,
put
Zebra/Quagga up as a peer/buffer for attaching analysis
tools to your
network. *Never* attach development grade tools to a
production device,
most especially when you're dealing with a routing table.
Not that I've
ever taken down a live router in this manner[1], I'm just
saying.. ;)
- billn
[1] All smirking current/past coworkers are kindly invited
to stfu. =)
|