Я пытаюсь получить актуальный список диапазонов IPv4, назначенных стране.
я использую http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest
чтобы получить список, отфильтруйте его по расширению страны.
Возьмем Китай.
curl 'http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest' | grep ipv4 | grep CN | awk -F\| '{ printf("%s/%d\n", $4, 32-log($5)/log(2)) }' > chnroute.txt
дает нам список IPv4 для Китая, если я не ошибаюсь. Все идет нормально.
Но некоторые диапазоны IP-адресов в этом списке отсутствуют.
Давайте сосредоточимся на 106.0.0.0/8
диапазон ради этого примера.
На этой странице мы можем узнать, что весь диапазон относится к Азиатско-Тихоокеанскому региону. https://www.apnic.net/publications/research-and-insights/apnic-resource-range
Отрывок:
APNIC allocates resources in the following ranges within the Asia Pacific region:
...
106.0.0.0/8
...
Просматривая список в Интернете (http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest
), мы можем увидеть:
apnic|TW|ipv4|106.1.0.0|65536|20110323|allocated
apnic|CN|ipv4|106.2.0.0|131072|20110321|allocated
apnic|CN|ipv4|106.4.0.0|262144|20110321|allocated
Хорошо, а как насчет 106.3.0.0
?
APNIC Whois может дать нам ответ: https://wq.apnic.net/whois-search/static/search.html?query=106.3.0.0/24
Отрывок:
inetnum: 106.3.0.0 - 106.3.127.255
netname: CNISP-UNION
descr: CNISP-Union Technology (Beijing) Co., Ltd
Упс, похоже, это тоже принадлежит Китаю.
Так почему это не указано в http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest
??? Смотря на ftp://ftp.apnic.net/apnic/stats/apnic/
можно найти и другие ресурсы, но, кажется, нет ничего более полного.
Как я могу понять это? Я должен понимать ASN
информация, указанная в этом файле, чтобы получить полный список?
Из Формат обмена статистикой RIR
4.3 Record format
...
Format:
registry|cc|type|start|value|date|status[|extensions...]
...
start In the case of records of type 'ipv4' or 'ipv6' this is the IPv4 or
IPv6 'first address' of the range.
...
value In the case of IPv4 address the count of hosts for this range.
This count does not have to represent a CIDR range.
Как видите, количество хостов в этом распределении apnic|CN|ipv4|106.2.0.0|131072|20110321|allocated
равно 131072, то есть (2 ^ 16)* 2, и с тех пор 106.2.0.0
является первым адресом диапазона, это распределение включает оба 106.2.0.0/16
и 106.3.0.0/16