获取亚太地区IP库


想要玩转网络,当然得要有一些基本的数据来源,这篇就先介绍一下如何获得某地区的IP库


获取最新的亚太地区IP库

# wget http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest  

抽取CN地区的IP库

# cat parsh.sh
#!/bin/sh
# Get IP allocated to CN
grep 'apnic|CN|ipv4' delegated-apnic-latest |
cut -f 4,5 -d '|' |
tr '|' ' ' |
awk '{
    ip=$1;
    mask = 32 - log($2)/log(2);
    print ip"/"mask
}' > china-ip-list.txt

# head -n 5 china-ip-list.txt
1.0.1.0/24
1.0.2.0/23
1.0.8.0/21
1.0.32.0/19
1.1.0.0/24

使用whois查看IP具体归属

# whois 1.0.1.0/24
...
% Information related to '1.0.1.0 - 1.0.1.255'

inetnum:        1.0.1.0 - 1.0.1.255
netname:        CHINANET-FJ
descr:          CHINANET FUJIAN PROVINCE NETWORK
descr:          China Telecom
...

使用zmap扫描IP

在我的一台机器上面,扫描全部CN范围内开放80端口的IP数花了大概25min,得到92万个结果

# head -n 20 china-ip-list.txt > top20.txt  // 作为演示,仅扫描部分网段
# zmap -w 1.txt -p 80 -o 80.txt             // 扫描80端口开启的IP地址