diff options
-rw-r--r-- | myrpki.rototill/apnic-to-csv.py | 28 | ||||
-rw-r--r-- | myrpki.rototill/ripe-prefixes-to-csv.awk | 11 | ||||
-rw-r--r-- | myrpki.rototill/ripe-rootcert.py | 2 |
3 files changed, 39 insertions, 2 deletions
diff --git a/myrpki.rototill/apnic-to-csv.py b/myrpki.rototill/apnic-to-csv.py new file mode 100644 index 00000000..af801f23 --- /dev/null +++ b/myrpki.rototill/apnic-to-csv.py @@ -0,0 +1,28 @@ +import csv, myrpki, rpki.ipaddrs + +def csvout(fn): + return csv.writer(open(fn, "w"), dialect = myrpki.csv_dialect) + +asns = csvout("asns.csv") +prefixes = csvout("prefixes.csv") + +for line in open("delegated-apnic-extended-latest"): + + line = line.rstrip() + + if not line.startswith("apnic|") or line.endswith("|summary"): + continue + + registry, cc, rectype, start, value, date, status, opaque_id = line.split("|") + + assert registry == "apnic" + + if rectype == "asn": + asns.writerow((opaque_id, "%s-%s" % (start, int(start) + int(value) - 1))) + + elif rectype == "ipv4": + prefixes.writerow((opaque_id, "%s-%s" % (start, + rpki.ipaddrs.v4addr(rpki.ipaddrs.v4addr(start) + long(value) - 1)))) + + elif rectype == "ipv6": + prefixes.writerow((opaque_id, "%s/%s" % (start, value))) diff --git a/myrpki.rototill/ripe-prefixes-to-csv.awk b/myrpki.rototill/ripe-prefixes-to-csv.awk index a532afa5..37327484 100644 --- a/myrpki.rototill/ripe-prefixes-to-csv.awk +++ b/myrpki.rototill/ripe-prefixes-to-csv.awk @@ -19,7 +19,16 @@ NR == nr + 1 { name = $0; } -NR > nr + 2 && NF > 1 { +NR > nr + 2 && NF > 1 && $2 !~ /:/ { + split($2, a, "/"); + len = a[2]; + split(a[1], a, /[.]/); + for (i = length(a); i < 4; i++) + a[i+1] = 0; + alloc[++n_allocs] = sprintf("%d.%d.%d.%d/%d", a[1], a[2], a[3], a[4], len); +} + +NR > nr + 2 && NF > 1 && $2 ~ /:/ { alloc[++n_allocs] = $2; } diff --git a/myrpki.rototill/ripe-rootcert.py b/myrpki.rototill/ripe-rootcert.py index da35389d..ac42e8a2 100644 --- a/myrpki.rototill/ripe-rootcert.py +++ b/myrpki.rototill/ripe-rootcert.py @@ -70,7 +70,7 @@ v6 = [] for handle, prefix in myrpki.csv_open("prefixes.csv"): if ":" in prefix: p, l = prefix.split("/") - v6.append(rpki.resource_set.resource_range_ipv6.make_prefix(rpki.ipaddrs.v6addr(p), int(l))) + #v6.append(rpki.resource_set.resource_range_ipv6.make_prefix(rpki.ipaddrs.v6addr(p), int(l))) else: a, b = prefix.split("-") v4.append(rpki.resource_set.resource_range_ipv4(rpki.ipaddrs.v4addr(a), rpki.ipaddrs.v4addr(b))) |