Age | Commit message (Collapse) | Author | |
---|---|---|---|
2007-05-31 | Use COMMUNITY_UNSET in bgpctl as well. This makes it possible to filter | Claudio Jeker | |
on communities with 0 in them. | |||
2007-05-30 | bad henning | Otto Moerbeek | |
2007-05-28 | on tsartup, along with saying which AS number we are building filters for, | Henning Brauer | |
give the output dir | |||
2007-05-28 | parse_asnum must return 0 (no match) if word is not an as number instead | Henning Brauer | |
of bitching and erroring out. worked so far because at the position it kicked in, only asnumor nothing were allowed | |||
2007-05-27 | initialize pfx->pfx_maxlen too, rotting in my tree for some time | Henning Brauer | |
2007-04-23 | bgpctl needs to know about 4-byte AS numbers as well. | Claudio Jeker | |
2007-04-07 | tweak previous; ok claudio | Jason McIntyre | |
2007-04-07 | Document the terse format outputs. Additional input by jmc@ | Claudio Jeker | |
2007-04-06 | Implement "bgpctl show neighbor <peer> terse" this will print all statistics | Claudio Jeker | |
in an easily parseable form. This output can be used to implement SNMP MIBs or rrdtool/mrtg update scripts. OK henning@ | |||
2007-04-06 | Include update statistics in the bgpctl show neighbor output. | Claudio Jeker | |
2007-03-31 | some KNF, partially pt out by rivo nurges <rix@estpak.ee> | Henning Brauer | |
2007-03-28 | add support for bgpctl show rib community <community> | Henning Brauer | |
mostly from rivo nurges <rix@estpak.ee>, ok claudio | |||
2007-03-16 | Missed to remove SAFI_BOTH here. Informed about it by Steven Mestdagh. | Claudio Jeker | |
2007-03-07 | support "bgpctl show rib peer-as NN", From: Armin Wolfermann <aw@osn.de> | Henning Brauer | |
ok theo | |||
2007-03-06 | prepare, but leave disabled, verbose operation so that you can see what is | Henning Brauer | |
going on (helps when the damn thing runs for hours). will be enabled with a -v somewhen in the future | |||
2007-03-06 | another completely bogus route entry, this time openface in their own RR: | Henning Brauer | |
route: 198.73.251.0 no prefixlen... overhaul error handling in prefixset_addmember(). for prefixes without prefixlen or ones where inet_net_pton reports an invalid format, complain and ignore the prefix, but don't err out completely. | |||
2007-03-05 | RPSL spec says route: is single-valued... nontheless, in the APNIC db: | Henning Brauer | |
route: 203.94.216.0/21, origin: AS17813 so we need to cut trailing ',' away | |||
2007-03-05 | better diagnostics on inet_net_pton failing | Henning Brauer | |
2007-03-05 | correctly deal with hierarchical as-set names. | Henning Brauer | |
everything we run into as members that is hierarchical (contains :) has to be an as-set. RPSL requires one component to have the AS- prefix; we check that. now the huge AS-TELIANET correctly resolves - into 15128 unique ASes, takes 12m47.11s real 0m8.62s user 0m1.07s system | |||
2007-03-05 | convert all members of an as-set to uppercase on the fly. | Henning Brauer | |
do the same in asset_expand() for the head as-set or aut-num reference from the policy. fixes duplicate ASes with mixed case seen after set resolution and saves some str(n)casecmp on the way (or rather allows a whole bunch of strcmp to stay) | |||
2007-03-05 | KNF | Henning Brauer | |
2007-03-05 | need to eat whitespace at both ends of val | Henning Brauer | |
2007-03-05 | KNF | Henning Brauer | |
2007-03-05 | gremlins keep putting tiny KNF violations in my code in the hope I don't | Henning Brauer | |
spot 'em | |||
2007-03-05 | better error msg | Henning Brauer | |
2007-03-05 | loop over the list calling prefix_aggregate until nothing can be aggregated | Henning Brauer | |
any more. since aggregated entries might be further aggregatable... shaves of another 1200 lines (of ~16900) from the generated ruleset for my AS | |||
2007-03-05 | lint happiness | Henning Brauer | |
2007-03-05 | unused vars, lint | Henning Brauer | |
2007-03-05 | in prefix_aggregate(), when we look at two neighbor prefixes, see wether | Henning Brauer | |
they can be expressed as one with shorter prefixlen. if so, adjust the first prefix accordingly and return 1 so the second gets removed. shrinks the ruleset for my AS from 19533 to 16892 rules. | |||
2007-03-05 | do the prefix masking in network byte order | Henning Brauer | |
2007-03-05 | sort out more specifics and mark the less specific covering them in a way | Henning Brauer | |
that the resulting rule allows more specifics. i. e. 10.0.0.0/16, 10.0.1/24, 10.0.128/17 -> prefix 10.0.0.0/16 prefixlen <= 24 implementation: sort prefixes per AS by address family, prefix, prefixlen. for every entry, check wether the prefix with the previous entry's mask applied matches the previous entry's prefix & mask. Only move the previous pointer forward if not so. Fill the holes we create in the process on the fly; shrink the array afterwards. shrinks the generated filters for our AS from over 100k to under 20k lines. | |||
2007-03-05 | switch to whois.radb.net. The RIPE whois server shows problems, indefinately | Henning Brauer | |
hanging connection for a specific query (which works find against radb, investigating with ripe pplz), and ripe doesn't mirror some important RRs like ALTDB. | |||
2007-03-05 | store a maxlen with each prefix. if that is set, this prefix covers | Henning Brauer | |
multiple route objects (i. e. is the result of maksing out longer prefixes or aggregation we'll do later). if maxlen is > prefixlen, generate rules accordingly (prefixlen <= maxlen) | |||
2007-03-05 | prevent re-use of shit in pbuf from previous rules | Henning Brauer | |
2007-03-04 | correct include order | Theo de Raadt | |
2007-03-04 | rename struct prefix -> irr_prefix | Henning Brauer | |
2007-03-04 | store prefixes in binary format. we'll need that for aggregation. | Henning Brauer | |
discussed with pyr | |||
2007-03-04 | for import rules, filter by source-as too | Henning Brauer | |
2007-03-04 | store peer AS numerically | Henning Brauer | |
2007-03-04 | pass pointer to struct policy_item down to print_rule() instead of 3 of its | Henning Brauer | |
members | |||
2007-03-04 | fix output format. spent too much time with RPSL... | Henning Brauer | |
2007-03-04 | fix cass where the specification does not give the router address by using | Henning Brauer | |
"" instead of defaulting to NULL, which is a pain to handle afterwards. in the output function, treat empty string address like NULL address problem noticed by rivo nurges <rix@estpak.ee> | |||
2007-03-04 | ran into an asset which has dangling , at eol in the member spec, leading | Henning Brauer | |
to us trying to add an empty-string AS, which asset_get later complains about. in parse_asset, check that we're no dealing with a empty string token before calling asset_addmember | |||
2007-03-03 | sort; ok henning | Jason McIntyre | |
2007-03-03 | as-sets always begin with AS-, and aut-nums with AS[0-9], mandated by the | Henning Brauer | |
RPSL spec and enforced by the IRR databases. teach asset_get this fact. only send queries for the as-set members for as-sets. since we now always fake an as-set for aut-nums, we don't need to escape the recursive as-set resolution process when we run into aut-num members. complain about and then ignore unresolvable as-set members. | |||
2007-03-03 | make parse_response (and thus whois) return 0 for no object found, and n+1 | Henning Brauer | |
for object found with n matched attributes. this way we can distinguish between no object found and object without relevant attributes | |||
2007-03-03 | start documenting irrfilter mode | Henning Brauer | |
2007-03-03 | allow the directory for generated filter files to be set. defaults to cwd | Henning Brauer | |
2007-03-03 | write output to files instead of stdout | Henning Brauer | |
2007-03-03 | add irrfilter mode. | Henning Brauer | |
generates bgpd filter rules from the Internet Routing Registry aka IRR aka the aut-num, as-set and route objects in the RIPE, ARIN, APNIC ... databases accessed via whois, using the Routing Policy Specificaion Language RPSL. implement the whois query interface, an RPSL parser (of course only the parts we need), recursive as-set resolver, prefixes per AS lookup, and an ouput module to make up the rules. work in progress, not ready for general consumption yet. import agreed by theo & claudio |