您的位置:首页 > 运维架构 > Shell

Shell脚本获取国内各大运营商网段脚本分享

2014-12-22 00:00 495 查看
亚太地区网络信息记录在这里,每天都有更新。
http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest
下面这个脚本将对这段文本进行编辑,输出国内几大运营商网段。
#!/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

elif 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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: