Shell 檔如下, wget 所取得的檔案,若您有心仔細看一下即可知內容
( http://211.72.210.251/images/cn_isp.sh )

#!/bin/sh

FILE=/root/study/apnic/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 $ip@whois.apnic.net | 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

        ;;

#如果你還要其他 ISP , 請在這邊加上去即可,透過 apnic whois , 你可以知道他的 NETNAME

        OTHER_NETNAME_here)

        ;;

        esac

done

运行程序后会生成 CHINANET  CNCGROUP 两个文件

再來,你只要看 CHINANET 或 CNCGROUP 這兩個檔案內容即可以知道其所有的 IP List 了,若需要其他 ISP , 上面代碼以給您足夠空間自己發揮

[root@log images]# cat CHINANET

58.32.0.0/13

58.40.0.0/15

58.42.0.0/16

58.44.0.0/14

58.48.0.0/13

58.208.0.0/12

59.32.0.0/13

59.40.0.0/15

59.42.0.0/16

59.44.0.0/14

59.48.0.0/16

...以下略



有了這個,就看你如何發揮了..iptable/iproute/dns/squid...firewall 很多東西都會有需要的
网络 | 评论(1) | 引用(0) | 阅读(6066)
肥三
2008/03/14 15:40
好!
太感谢了!
分页: 1/1 第一页 1 最后页
 
发表评论
   
表情
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
打开HTML
打开UBB
打开表情
隐藏
记住我
昵称   密码   游客无需密码
网址   电邮   [注册]