我正在尝试获取分配给某个国家/地区的 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
此文件中列出的信息才能获得完整列表吗?
答案1
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