Andrew: BGP->Route object translator
Curtis Villamizar
Wed May 3 22:32:55 CEST 1995
In message <199505031400.KAA20758 at home.merit.edu>, "Dale S. Johnson" writes: > All FYI: > > Andrew has come up with a clever way around the IRR intent: simply > machine-generate his route objects from the live BGP tables and submit > them daily. > > Advantages: everything is registered, just like we want it. > > Disadvantages: even things we'd have hoped a human would filter out > (net 10) get registered. (Also, a certain amount of thrash in the DB). > > Comments? > > --Dale > > > ============ From: Andrew Partan > > > From asp at uunet.uu.net Tue May 2 15:16:11 1995 > > Subject: Re: Something to make you vomit... > > To: smd at sprint.net > > Date: Tue, 2 May 1995 14:46:30 -0400 (EDT) > > Cc: heimlich at ans.net, dsj at merit.edu > > > > Here is something that I hacked together. Generates route objects from > > "show ip bgp" output. [I'm not quite sure that I have everything that I > > want in the route object yet.] > > > > I'm thinking of running it once/day out of cron and sending the output > > to the RADB. > > --asp > > > > #!/bin/sh > > # > > # Generate RADB route objects from a "show ip bgp reg ^$" dump. > > # The dump is in $1 > > > > # Who is running this. > > who=`whoami` > > > > # Current date, YYMMDD > > yymmdd=`date +%y%m%d` > > > > # The route object > > cat << EOF > /tmp/ro.$$ > > { > > print "route:", \$1 > > print "descr: AlterNet route - AS 701" > > print "origin: AS701" > > print "advisory: AS690 1:701" > > print "mnt-by: MAINT-AS701" > > print "changed: $who at uunet.uu.net $yymmdd" > > print "source: RADB" > > print "" > > } > > EOF > > > > # Get the routes (if there is one). > > gawk 'substr($0,4,2) ~ /[0-9][0-9.]/ {print substr($0,4,17)}' $1 \ > > | gawk -f /tmp/ro.$$ > > > > # Clean up > > rm -f /tmp/ro.$$ Dale, We've dicussed this internally. > Once we get rid of advisories, Sprint and Alternet just need to do > "show ip bgp" and pull off all of the prefixes and lengths and the > home AS from the AS path. Then for each one, they can compare with > the most recent list they sent. This can be done trivially by sorting > both lists, diffing, and grepping the "^>" lines from the diff. Then > they take that list, pack it in boilerplate and submit it. If the > legitimate owner submitted it or it is an AS that we know about and > Andrew isn't allow to modify, then Andrew gets a reject message. No > big deal if he gets a reject, since he will only send once. > > If you want I'll describe how you can do deletions of routes that > haven't been heard from in N days (weeks, months, whatever). It is > quite easy. Also Andrew and Sean could actually keep track of the AS > that they do (or don't) want to submit for and save a few reject > messages. Maybe after the 8th, we can write some code for him and > send it off. Comments on Andrew's idea: > This needs to be refined slightly. The "show ip bgp" output contains > an AS path. The last entry in the AS path will be the home AS. > Andrew is putting in AS701 for every route he knows which would be > incorrect for most routes. It would also be nice if he'd keep track > of routes he has sent and not resend them every day, saving Dale from > installing the special Alternet mail filter to handle this. > > Since most of the routes will be registered by someone else, Andrew > will get a huge rejection message every day if he does this. Curtis -------- Logged at Wed May 3 23:18:49 MET DST 1995 ---------
[ rr-impl Archive ]