aboutsummaryrefslogtreecommitdiff
path: root/scripts/ripe-prefixes-to-csv.awk
blob: 582d5ce72f4a99bcc2d2ea71ab01b51db11a6e46 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#!/usr/bin/awk -f
# $Id$

# ftp -pa ftp://ftp.ripe.net/pub/stats/ripencc/membership/alloclist.txt

BEGIN {
    translation["ie.google"] = "GoogleIreland";
}

function done() {
    if (handle in translation)
	handle = translation[handle];
    for (i = 1; i <= n_allocs; i++)
	print handle "\t" alloc[i];
    n_allocs = 0;
}

/^[a-z]/ {
    done();
    handle = $0;
    nr = NR;
}

NR == nr + 1 {
    name = $0;
}

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;
}

END {
    done();
}
ss="p">]; Alice_EE [ label = "Alice\nBSC EE|{HTTPS up-down client|CMS up-down}" ]; Ellen_CA [ shape = diamond ]; Ellen_EE [ label = "Ellen\nBSC EE|{HTTPS up-down client|CMS up-down}" ]; // Peers node [ color = red, fontcolor = red, shape = diamond ]; Bob_CA; Carol_CA; Dave_CA; Frank_CA; Ginny_CA; Harry_CA; node [ shape = record ]; Bob_EE [ label = "Bob\nEE|{HTTPS up-down|CMS up-down}" ]; Carol_EE [ label = "Carol\nEE|{HTTPS up-down|CMS up-down}" ]; Dave_EE [ label = "Dave\nEE|{HTTPS up-down|CMS up-down}" ]; Frank_EE [ label = "Frank\nEE|{HTTPS up-down|CMS up-down}" ]; Ginny_EE [ label = "Ginny\nEE|{HTTPS up-down|CMS up-down}" ]; Harry_EE [ label = "Bob\nEE|{HTTPS up-down|CMS up-down}" ]; edge [ color = black, style = solid ]; TA -> Alice_CA; TA -> Ellen_CA; edge [ color = black, style = dotted ]; TA -> rpkid; TA -> irdbd; TA -> irbe; edge [ color = blue, style = solid ]; Alice_CA -> Bob_CA; Alice_CA -> Carol_CA; Alice_CA -> Dave_CA; Ellen_CA -> Frank_CA; Ellen_CA -> Ginny_CA; Ellen_CA -> Harry_CA; edge [ color = blue, style = dotted ]; Alice_CA -> Alice_EE; Ellen_CA -> Ellen_EE; edge [ color = red, style = solid ]; Bob_CA -> Bob_EE; Carol_CA -> Carol_EE; Dave_CA -> Dave_EE; Frank_CA -> Frank_EE; Ginny_CA -> Ginny_EE; Harry_CA -> Harry_EE; }