#!/bin/sh
FILE=/usr/home/haoyu/ip_apnic
rm -f $FILE
wget http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest -O $FILE
grep 'apnic|CN|ipv4|' $FILE | cut -f 4,5 -d'|'|sed -e 's/|/ /g' | while read ip cnt
do
echo $ip:$cnt
mask=$(cat << EOF | bc | tail -1
pow=32;
define log2(x) {
if (x<=1) return (pow);
pow--;
return(log2(x/2));
}
log2($cnt)
EOF
)
echo $ip/$mask>> cn.net
NETNAME=`whois -h whois.apnic.net $ip | sed -e '/./{H;$!d;}' -e 'x;/netnum/!d' |grep ^netname | sed -e 's/.*: /(.*/)//
1/g' | sed -e 's/-.*//g'`
case $NETNAME in
CHINANET|CNCGROUP)
echo $ip/$mask >> $NETNAME
;;
CHINATELECOM)
echo $ip/$mask >> $NETNAME
;;
OTHER_NETNAME_here)
;;
esac
done
FreeBSD下 自动获取网通电信IP列表
最新推荐文章于 2022-08-11 20:31:55 发布
此博客提供了一段Shell脚本,用于获取APNIC的IP数据。脚本先删除原有文件,再通过wget下载最新数据,接着对数据进行筛选、处理,计算IP掩码,将结果写入cn.net文件,还根据网络名称分类写入不同文件,如CHINANET、CHINATELECOM等。
3333

被折叠的 条评论
为什么被折叠?



