获得最新的网通、电信、铁通IP地址分配段

来源:互联网 发布:淘宝教程 编辑:程序博客网 时间:2024/04/25 15:22

转自 http://gclz.cn/read.php/140.htm 以及 http://gclz.cn/read.php/411.htm

APNIC是管理亚太地区IP地址分配的机构,它有着丰富准确的IP地址分配库,同时这些信息也是对外公开的!下面就让我们看看如何在Linux下获得一些电信运营商的IP地址分配情况:

shell> wget http://ftp.apnic.net/apnic/dbase/tools/ripe-dbase-client-v3.tar.gz


shell> tar xzvf ripe-dbase-client-v3.tar.gz

shell> cd whois-3.1

shell> ./configure

shell> make

完成上述编译安装工作后,我们开始获取IP地址段;


中国网通:

shell> ./whois3 -h whois.apnic.net -l -i mb MAINT-CNCGROUP > /var/cnc


中国电信:

shell> ./whois3 -h whois.apnic.net -l -i mb MAINT-CHINANET > /var/chinanet


中国铁通:

shell> ./whois3 -h whois.apnic.net -l -i mb MAINT-CN-CRTC > /var/crtc


打开获取后的文件可以看到里面的信息非常详细,甚至可以看到各个分公司的负责人、电话、电子邮件等等信息。如果想得到一份整齐干净的IP地址段文件,只要用grep和awk简单过滤就可以了。

 ----------------

http://gclz.cn/read.php/411.htm

自动生成电信(CHINANET)/网通(CNCGROUP) IP段 列表
<script src="/google.js" type="text/javascript"></script><script type="text/javascript"><!--google_ad_client = "pub-8533638549855771";google_ad_width = 200;google_ad_height = 200;google_ad_format = "200x200_as";google_ad_type = "text_image";//2007-07-27: gclz.cngoogle_ad_channel = "6548811582";google_color_border = "66B5FF";google_color_bg = "FFFFFF";google_color_link = "0000FF";google_color_text = "000000";google_color_url = "008000";google_ui_features = "rc:6";//--></script><script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script><iframe name="google_ads_frame" marginwidth="0" marginheight="0" src="http://pagead2.googlesyndication.com/pagead/ads?client=ca-pub-8533638549855771&amp;dt=1205480071428&amp;lmt=1205480072&amp;format=200x200_as&amp;output=html&amp;correlator=1205480071418&amp;channel=6548811582&amp;url=http%3A%2F%2Fgclz.cn%2Fread.php%2F411.htm&amp;color_bg=FFFFFF&amp;color_text=000000&amp;color_link=0000FF&amp;color_url=008000&amp;color_border=66B5FF&amp;ad_type=text_image&amp;ref=http%3A%2F%2Fgclz.cn%2Fgo.php%2Fcategory%2F0%2F&amp;frm=0&amp;ui=rc%3A6&amp;cc=100&amp;ga_vid=188096612.1205478806&amp;ga_sid=1205478806&amp;ga_hid=549090430&amp;ga_fc=true&amp;flash=9.0.115.0&amp;u_h=768&amp;u_w=1024&amp;u_ah=715&amp;u_aw=1024&amp;u_cd=32&amp;u_tz=480&amp;u_his=5&amp;u_java=true" frameborder="0" width="200" scrolling="no" height="200" allowtransparency="allowtransparency"></iframe>
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 很多東西都會有需要的
原创粉丝点击