Getting a BGP table in to a lab

I'm trying to come up with a way to get a full BGP routing table in to
my lab.
I'm not really fussed about keeping it up to date, so a snapshot is fine.
At the moment, I'm thinking about spending a few hours hacking together
a BGP daemon in perl to peer with and record a table from a production
router, disconnect, and then start peering with lab routers.

Am I reinventing a wheel here?

None of the routers that are tested in the lab are capable of supporting a
full BGP feed....

If you just want to play with BGP stuff, you can use Zebra (unix) or go to
www.nantech.com and get their BGP4WIN program.

That may help you a bit more.

Scott

Zebra is a great option here, I use it to eat a routing table from production routers, peer a perl Net::BGP daemon with it, and then do SQL injections from there to instruct my netflow engine on baseline subnetting for external networks, as well as provide AS clue for non-AS aware netflow export segments.

- billn

Forget part of my reply here... I thought someone was posting from the CCIE
forum stuff I do.

So disregard the lack-of-caffeine-induced, retarded command about no router
being able to support a full feed. :slight_smile:

My apologies....

Zebra is still a good idea though!

Scott

On Wed, 2005-04-20 at 20:41:30 -0400, Scott Morris proclaimed...

If you just want to play with BGP stuff, you can use Zebra (unix) or go to
www.nantech.com and get their BGP4WIN program.

Or use something that eats tables and asks for more....OpenBGPD (part of
OpenBSD). It's hungry, and wants to be fed.

Nathan Ward wrote:

I'm trying to come up with a way to get a full BGP routing table in to
my lab.
I'm not really fussed about keeping it up to date, so a snapshot is fine.
At the moment, I'm thinking about spending a few hours hacking together
a BGP daemon in perl to peer with and record a table from a production
router, disconnect, and then start peering with lab routers.

Am I reinventing a wheel here?

So, I'm going to throw some code together and I'll let the list know
where it can be found..
The point here is that I want full tables in my lab without having to
keep peering sessions up with my production network.

As a side note, It seems strange, yet somehow very fitting, that I was
automatically assumed to not be a network operator, on a "network
operators" list..

Nathan Ward wrote:

I'm trying to come up with a way to get a full BGP routing table in to
my lab.
I'm not really fussed about keeping it up to date, so a snapshot is fine.
At the moment, I'm thinking about spending a few hours hacking together
a BGP daemon in perl to peer with and record a table from a production
router, disconnect, and then start peering with lab routers.

Am I reinventing a wheel here?

Alexander Tudor tells me:

<snip>
The simplest way to load up your favorite router with a bgp table is to:

a. get a bgp trace file (obtainable from routeviews.org or ripe.net -ris
or pch.net)
b. get route_btoa from ripe.net (standard tool for reading a bgp trace
file, updates or full tables)
c. download the mrtd.net toolkit ( do not use its route_btoa)
d. read carefully documentation on sbgp program contained within mrtd
package
e. pipe output from route_btoa (from ripe.net) into sbgp (who should
peer with your router and load up the table)

It takes a bit of time to set up but it works.
</snip>

According to the documentation, "sbgp" can create these trace files too,
so I can create traces applicable to my network.
I'm not sure if it'll handle MP-BGP though..

Thanks Alexander.