轻松获得网通、电信、铁通IP地址分配段的方法

有时搞一些跨网段的工程和应用,需要尽量准确的知道电信、网通、铁通等电信运营商的IP地址段分配情况,可网上的资料不但很少,而且经常都是N个月前的过期资料……
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简单过滤就可以了:)

一个转自CU的自动获取脚本 :


代码如下:

#!/bin/sh    
#auto get the IP Table    
#get the newest delegated-apnic-latest    
rm delegated-apnic-latest

if type wget    
    then wget http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest    
    else fetch http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest    
fi    
grep 'apnic|CN|ipv4' delegated-apnic-latest | cut -f 4,5 -d '|' | tr '|' ' ' | while read ip cnt    
do    
mask=$(bc <<END | tail -1    
pow=32;    
define log2(x) {    
if (x<=1) return (pow);    
pow--;    
return(log2(x/2));    
}    
log2($cnt);    
END    
)    
echo $ip/$mask';'>>cnnet

resultext=`whois $ip@whois.apnic.net | grep -e ^netname -e ^descr -e ^role -e ^mnt-by | cut -f 2 -d ':' | sed 's/ *//'`

if echo $resultext | grep -i -e 'railcom' -e 'crtc' -e 'railway'    
   then echo $ip/$mask';' >> crc    
elif echo $resultext | grep -i -e 'cncgroup' -e 'netcom'    
   then echo $ip/$mask';' >> cnc    
if echo $resultext | grep -i -e 'chinanet' -e 'chinatel'    
   then echo $ip/$mask';' >> telcom_acl    
elif echo $resultext | grep -i -e 'unicom'    
   then echo $ip/$mask';' >> unicom    
elif echo $resultext | grep -i -e 'cmnet'    
   then echo $ip/$mask';' >> cmnet    
else    
   echo $ip/$mask';' >> other_acl    
fi

done

(0)

相关推荐

  • 轻松获得网通、电信、铁通IP地址分配段的方法

    有时搞一些跨网段的工程和应用,需要尽量准确的知道电信.网通.铁通等电信运营商的IP地址段分配情况,可网上的资料不但很少,而且经常都是N个月前的过期资料-- APNIC是管理亚太地区IP地址分配的机构,它有着丰富准确的IP地址分配库,同时这些信息也是对外公开的!下面就让我们看看如何在Linux下获得一些电信运营商的IP地址分配情况: shell> wget http://ftp.apnic.net/apnic/dbase/tools/ripe-dbase-client-v3.tar.gz  she

  • 用javascript实现的电信铁通(网通)自动跳转源代码

    var i = 1; (请自己修改) BODY { SCROLLBAR-FACE-COLOR: #6699ff; SCROLLBAR-HIGHLIGHT-COLOR: #FFFFFF; SCROLLBAR-SHADOW-COLOR: #FFFFFF; SCROLLBAR-3DLIGHT-COLOR: #FFFFFF; SCROLLBAR-ARROW-COLOR: #ffffff; SCROLLBAR-TRACK-COLOR: #ffffff; SCROLLBAR-DARKSHADOW-COLOR

  • 中软数据为您提供免费铁通/电信/网通超级主机

    http://www.b-e.cn/2006/ad/可选线路:铁通,电信,网通 300M空间=150M网页空间+50M(10个)邮局空间+100M(1个)数据库 支持150个并发链接数,每月30G总流量,每秒256K峰值流量保证 Windows型支持ASP/Aceess/MSSQL,Linux型支持PHP/MySQL Web服务扩展:运行PHP4脚本, ASP脚本执行权,写权限,在独立的IIS进程中运行脚本和程序,运行自己编写的PHP3脚本 支持FTP上传,支持国际域名绑定,带独立控制面板申请地

  • 网络规划中的IP地址分配

    在网络规划中,IP地址方案的设计至关重要,好的IP地址方案不仅可以减少网络负荷,还能为以后的网络扩展打下良好的基础.本文就网络规划中IP地址方案设计进行一些讨论,并给出一个IP地址方案设计实例. 一.IP地址和子网掩码 IP地址用于在网络上标识唯一一台机器.根据RFC791的定义,IP地址由32位二进制数组成(四个字节),表示为用圆点分成每组3位的12位十进制数字(xxx.xxx.xxx.xxx)每个3位数代表8位二进制数(一个字节).由于1个字节所能表示的最大数为255,因此IP地址中每个字节

  • Python获取网段内ping通IP的方法

    问题描述 在某些问题背景下,需要确认是否多台终端在线,也就是会使用我们牛逼的ping这个命令,做一些的ping操作,如果需要确认的设备比较少,也还能承受.倘若,在手中维护的设备很多.那么这无疑会变成一个恼人的问题.脚本的作用就凸显了.另外,我们需要使用多线程的一种措施,否则单线程很难在很短的时间内拿到统计结果. 应用背景 有多台设备需要维护,周期短,重复度高; 单台设备配备多个IP,需要经常确认网络是否通常: 等等其他需要确认网络是否畅通的地方 问题解决 使用python自带threading模

  • Python基于scapy实现修改IP发送请求的方法示例

    本文实例讲述了Python基于scapy实现修改IP发送请求的方法.分享给大家供大家参考,具体如下: 今天同事想测试WAF的页面统计功能,所以需要模拟多个IP向多个域名发送请求,也就是需要修改源IP地址.这个如果使用socket库就比较麻烦了, 需要使用raw socket,相当麻烦.还好咱有scapy,轻松搞定. DOMAIN是我随机构造的域名库,SOURCE也是随机构造的源IP地址. #!/usr/bin/env python #-*-encoding:UTF-8-*- from scapy

  • C#使用有道ip地址查询接口方法实例详解

    本文实例讲述了C#使用有道ip地址查询接口方法.分享给大家供大家参考.具体实现方法如下: #region 读取http://www.yodao.com接口IP地址 /// <summary> /// 读取http://www.yodao.com接口IP地址 /// </summary> public static string GetstringIpAddress(string strIP)//strIP为IP { string sURL = "http://www.yo

  • THinkPHP获取客户端IP与IP地址查询的方法

    本文实例讲述了THinkPHP获取客户端IP与IP地址查询的方法.分享给大家供大家参考,具体如下: TP 中获取客户端IP地址的系统公共函数是:function get_client_ip().返回值就是IP地址. 查询IP地址所在国家与地区的类文件是IpLocation.class.php,位于ThinkPHP\Lib\ORG\Net目录下.类名是IpLocation,方法是 public function getlocation($ip=''); 省略时查询客户端IP所在地址.返回的是一个数

  • python生成IP段的方法

    本文实例讲述了python生成IP段的方法.分享给大家供大家参考.具体实现方法如下: #!/usr/local/bin/python #-*- coding: UTF-8 -*- ############################################################# # python 生成IP段 ############################################################# if __name__ == '__mai

  • php获取客户端IP及URL的方法示例

    本文实例讲述了php获取客户端IP及URL的方法.分享给大家供大家参考,具体如下: function getonlineip(){//获取用户ip if($_SERVER['HTTP_CLIENT_IP']) { $onlineip=$_SERVER['HTTP_CLIENT_IP']; //用户IP } else if($_SERVER['HTTP_X_FORWARDED_FOR']) { $onlineip=$_SERVER['HTTP_X_FORWARDED_FOR']; //代理IP }

随机推荐