aboutsummaryrefslogtreecommitdiff
path: root/utils/get_routes_by_asn.sh
blob: 06e320c16fd33623232f7412b05bb4ec93512e63 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#!/bin/sh

if [ "$#" -ne 1 ]; then
    echo "Usage: $0 AS-Number" >&2
    return
fi

LIST=/tmp/asn.json
ORIGIN="https://stat.ripe.net/data/announced-prefixes/data.json?resource=$1"

http_response=$(curl -s -o "${LIST}" -w "%{http_code}" "${ORIGIN}")
if [ "$http_response" != "200" ]; then
    echo "Error $http_response: service temporiarally not available?" >&2
    return 1
elif [ "$http_response" != "200" ]; then
    echo "Error $http_response: wrong ASN number/format?" >&2
    return 1
fi

jq -r '.data.prefixes[].prefix' $LIST | grep -v ":"

rm -f $LIST
return 0