阅读背景:

CDNÒµÎñ¼ì²â(À¶Ñ´/µÛÁª)

来源:互联网 

Ò»¡¢»ù´¡»·¾³
1¡¢°æ±¾
cat /etc/debian_version 
7.8

2¡¢ÄÚºË
uname -r
3.2.0-4-amd64

3¡¢ip(eth0)
10.1.10.185

4¡¢Ïà¹ØÅäÖÃÎļþÄÚÈÝ
cat .config.ini
aaa.aaa.com
bbb.bbb.com
ccc.ccc.com
ddd.ddd.com
eee.eee.com
fff.fff.com

5¡¢Ïà¹ØÓʼþ½Å±¾
mailsend.py¼ûhttps://7938217.blog.51cto.com/7928217/1708228

¶þ¡¢¾ßÌå´úÂë
1¡¢cat checkcdn.sh
#!/bin/bash
#--------------------------------------------------
#Author:jimmygong
#Email:[email protected]
#FileName:checkcdn.sh
#Function:
#Version:1.0
#Created:2015-11-06
#--------------------------------------------------
sendip="10.1.10.185"
maillog="/root/aa"
mailpy="/root/mailsend.py"
#PS:dig && curl need install
[[ -e .config.ini ]] || exit 1
function checkcdn ()
{
    domain=
          

Ò»¡¢»ù´¡»·¾³
1¡¢°æ±¾
cat /etc/debian_version 
7.8

2¡¢ÄÚºË
uname -r
3.2.0-4-amd64

3¡¢ip(eth0)
10.1.10.185

4¡¢Ïà¹ØÅäÖÃÎļþÄÚÈÝ
cat .config.ini
aaa.aaa.com
bbb.bbb.com
ccc.ccc.com
ddd.ddd.com
eee.eee.com
fff.fff.com

5¡¢Ïà¹ØÓʼþ½Å±¾
mailsend.py¼ûhttps://7938217.blog.51cto.com/7928217/1708228

¶þ¡¢¾ßÌå´úÂë
1¡¢cat checkcdn.sh
#!/bin/bash
#--------------------------------------------------
#Author:jimmygong
#Email:[email protected]
#FileName:checkcdn.sh
#Function:
#Version:1.0
#Created:2015-11-06
#--------------------------------------------------
sendip="10.1.10.185"
maillog="/root/aa"
mailpy="/root/mailsend.py"
#PS:dig && curl need install
[[ -e .config.ini ]] || exit 1
function checkcdn ()
{
    domain=$1
    cdnchinache="https://portal.chinacache.com/serviceInfo/getChannelServiceInfo.do?username=111111&password=222222&channelName=https://$domain"
    cdnfastcdn="https://push.dnion.com/currentIp.do?username=111111&password=222222&domain=$domain"
    while read dname
    do
        num=$(dig ${dname}|grep ${dname}|grep -i "cname"|wc -l)
        [[ $num == 1 ]] && cdnname=$(dig ${dname}|grep ${dname}|grep -i "cname"|awk "{print $5}"|cut -d. -f3)
        [[ $num == 2 ]] && cdnname=$(dig ${dname}|grep ${dname}|grep -i "cname"|head -1|awk "{print $5}"|cut -d. -f4)
        if [[ $domain == $dname ]]
        then
            if [[ $cdnname == "ccgslb" ]]
            then
                echo $cdnchinache
            elif [[ $cdnname == "fastcdn" ]]
            then
                echo $cdnfastcdn
            fi
        fi
    done < .config.ini
}
function action ()
{
    num=$(cat .config.ini|wc -l)
    for ((k=1;k<=${num};k++))
    do
        domainname=$(cat .config.ini|sed -n "$k"p)
        for i in $domainname
        do
            cdnname=$(checkcdn $i)
            ips=`curl -s $cdnname`
            ipexclude="111.111.111.111 222.222.222.222.333.333.333.333"
            for ip in $ips
            do
                if [[ "$ipexclude" =~ "$ip" ]]
                then
                    continue
                fi
                location=`curl -s www.cip.cc/$ip|awk /Êý¾Ý/|awk -F " " "{print $3,$5}"`
                echo $ip $location
            done
        done
    done> $maillog
}
function handlemail ()
{
    sed -i -e "1i\IP\tµØÖ·\tÔËÓªÉÌ" $maillog
    sed -i -e "s/^/<tr><td>/" -e "s/\s\+/<\/td><td>/" -e "s/\s\+/<\/td><td>/" -e "s/$/<\/td><\/tr>/" $maillog
    sed -i -e "1i\<table>" -e "$a\</table>" $maillog
    sed -i -e "1i\<style type="text\/css">table,td,th{border:1px solid black;}<\/style>" $maillog
    python $mailpy $maillog "$0 $sendip"
}
action
handlemail
exit 0

Èý¡¢Ð§¹û

±¾Îijö×Ô ¡°7928217¡± ²©¿Í£¬ÇëÎñ±Ø±£Áô´Ë³ö´¦https://7938217.blog.51cto.com/7928217/1710890

    cdnchinache="https://portal.chinacache.com/serviceInfo/getChannelServiceInfo.do?username=111111&password=222222&channelName=https://$domain"     cdnfastcdn="https://push.dnion.com/currentIp.do?username=111111&password=222222&domain=$domain"     while read dname     do         num=$(dig ${dname}|grep ${dname}|grep -i "cname"|wc -l)         [[ $num == 1 ]] && cdnname=$(dig ${dname}|grep ${dname}|grep -i "cname"|awk "{print }"|cut -d. -f3)         [[ $num == 2 ]] && cdnname=$(dig ${dname}|grep ${dname}|grep -i "cname"|head -1|awk "{print }"|cut -d. -f4)         if [[ $domain == $dname ]]         then             if [[ $cdnname == "ccgslb" ]]             then                 echo $cdnchinache             elif [[ $cdnname == "fastcdn" ]]             then                 echo $cdnfastcdn             fi         fi     done < .config.ini } function action () {     num=$(cat .config.ini|wc -l)     for ((k=1;k<=${num};k++))     do         domainname=$(cat .config.ini|sed -n "$k"p)         for i in $domainname         do             cdnname=$(checkcdn $i)             ips=`curl -s $cdnname`             ipexclude="111.111.111.111 222.222.222.222.333.333.333.333"             for ip in $ips             do                 if [[ "$ipexclude" =~ "$ip" ]]                 then                     continue                 fi                 location=`curl -s www.cip.cc/$ip|awk /Êý¾Ý/|awk -F " " "{print ,}"`                 echo $ip $location             done         done     done> $maillog } function handlemail () {     sed -i -e "1i\IP\tµØÖ·\tÔËÓªÉÌ" $maillog     sed -i -e "s/^/<tr><td>/" -e "s/\s\+/<\/td><td>/" -e "s/\s\+/<\/td><td>/" -e "s/$/<\/td><\/tr>/" $maillog     sed -i -e "1i\<table>" -e "$a\</table>" $maillog     sed -i -e "1i\<style type="text\/css">table,td,th{border:1px solid black;}<\/style>" $maillog     python $mailpy $maillog "

Ò»¡¢»ù´¡»·¾³
1¡¢°æ±¾
cat /etc/debian_version 
7.8

2¡¢ÄÚºË
uname -r
3.2.0-4-amd64

3¡¢ip(eth0)
10.1.10.185

4¡¢Ïà¹ØÅäÖÃÎļþÄÚÈÝ
cat .config.ini
aaa.aaa.com
bbb.bbb.com
ccc.ccc.com
ddd.ddd.com
eee.eee.com
fff.fff.com

5¡¢Ïà¹ØÓʼþ½Å±¾
mailsend.py¼ûhttps://7938217.blog.51cto.com/7928217/1708228

¶þ¡¢¾ßÌå´úÂë
1¡¢cat checkcdn.sh
#!/bin/bash
#--------------------------------------------------
#Author:jimmygong
#Email:[email protected]
#FileName:checkcdn.sh
#Function:
#Version:1.0
#Created:2015-11-06
#--------------------------------------------------
sendip="10.1.10.185"
maillog="/root/aa"
mailpy="/root/mailsend.py"
#PS:dig && curl need install
[[ -e .config.ini ]] || exit 1
function checkcdn ()
{
    domain=$1
    cdnchinache="https://portal.chinacache.com/serviceInfo/getChannelServiceInfo.do?username=111111&password=222222&channelName=https://$domain"
    cdnfastcdn="https://push.dnion.com/currentIp.do?username=111111&password=222222&domain=$domain"
    while read dname
    do
        num=$(dig ${dname}|grep ${dname}|grep -i "cname"|wc -l)
        [[ $num == 1 ]] && cdnname=$(dig ${dname}|grep ${dname}|grep -i "cname"|awk "{print $5}"|cut -d. -f3)
        [[ $num == 2 ]] && cdnname=$(dig ${dname}|grep ${dname}|grep -i "cname"|head -1|awk "{print $5}"|cut -d. -f4)
        if [[ $domain == $dname ]]
        then
            if [[ $cdnname == "ccgslb" ]]
            then
                echo $cdnchinache
            elif [[ $cdnname == "fastcdn" ]]
            then
                echo $cdnfastcdn
            fi
        fi
    done < .config.ini
}
function action ()
{
    num=$(cat .config.ini|wc -l)
    for ((k=1;k<=${num};k++))
    do
        domainname=$(cat .config.ini|sed -n "$k"p)
        for i in $domainname
        do
            cdnname=$(checkcdn $i)
            ips=`curl -s $cdnname`
            ipexclude="111.111.111.111 222.222.222.222.333.333.333.333"
            for ip in $ips
            do
                if [[ "$ipexclude" =~ "$ip" ]]
                then
                    continue
                fi
                location=`curl -s www.cip.cc/$ip|awk /Êý¾Ý/|awk -F " " "{print $3,$5}"`
                echo $ip $location
            done
        done
    done> $maillog
}
function handlemail ()
{
    sed -i -e "1i\IP\tµØÖ·\tÔËÓªÉÌ" $maillog
    sed -i -e "s/^/<tr><td>/" -e "s/\s\+/<\/td><td>/" -e "s/\s\+/<\/td><td>/" -e "s/$/<\/td><\/tr>/" $maillog
    sed -i -e "1i\<table>" -e "$a\</table>" $maillog
    sed -i -e "1i\<style type="text\/css">table,td,th{border:1px solid black;}<\/style>" $maillog
    python $mailpy $maillog "$0 $sendip"
}
action
handlemail
exit 0

Èý¡¢Ð§¹û

±¾Îijö×Ô ¡°7928217¡± ²©¿Í£¬ÇëÎñ±Ø±£Áô´Ë³ö´¦https://7938217.blog.51cto.com/7928217/1710890

 $sendip" } action handlemail exit 0Ò»¡¢»ù´¡»·¾³ 1¡¢°æ±¾ cat /etc/debian_version 




你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: