[121218] in North American Network Operators' Group
Re: BGP testbed tools
daemon@ATHENA.MIT.EDU (Ben Jencks)
Wed Jan 13 11:36:07 2010
In-Reply-To: <4B4D0222.6080307@bromirski.net>
Date: Wed, 13 Jan 2010 11:35:29 -0500
From: Ben Jencks <ben@bjencks.net>
To: nanog@nanog.org
Errors-To: nanog-bounces+nanog.discuss=bloom-picayune.mit.edu@nanog.org
2010/1/12 =C5=81ukasz Bromirski <lukasz@bromirski.net>:
> On 2010-01-12 21:27, Ben Jencks wrote:
>> This is obviously a rookie question, but I haven't found anything by
>> searching. I'm looking to set up a small testbed to simulate our
>> internal network topology, and I want to have a realistic BGP table
>> from the fake "upstream" routers. Ideally what I'd like to do is dump
>> the BGP table from our production routers, strip the immediate
>> neighbor AS, and load the table into Quagga or OpenBGPD to advertise.
>> I'm running into two problems: how do you dump BGP tables in a
>> machine-parseable format from IOS, and how do you make the route
>> server advertise the routes as they were in the original table,
>> including the full AS-path, communities, etc? If Quagga/OpenBGPD
>> aren't the right tools, I'm happy to use something else.
>
> Use libbgpdump from ris.ripe.net to get raw data from
> http://data.ris.ripe.net/ (you're looking for newest bview file),
> and dump them using bgpdump to something easily to parse. Then
> using bgpsimple (from googlecode) simulate a peer with specific
> number of prefixes advertised - up to the limit of the contents
> of the file. You can spoof next-hop, AS, etc. As for the attribute
> manipulation, fire up a couple of VMWare/VirtualBox/vimage instances
> with quagga/openbgpd to accept the prefixes from bgpsimple and
> mangle them in some manner.
Thanks everyone. bgpsimple ended up being the tool I wanted, and I
just used the RIPE data. If I was more adventurous I would have hooked
Quagga up with a BGP session to the production routers and generated
my own dumps, but the RIPE data was good enough for now.
-Ben