首页 > 代码库 > 【cdn节点状态简单查看】cdn_lookup.sh
【cdn节点状态简单查看】cdn_lookup.sh
【cdn节点状态简单查看】cdn_lookup.sh
#!/bin/bash # # 2014/11/4 action=$1 [ -z $2 ] && hostname="example.com" || hostname=$2 function usage() { cat <<_EOF usage: $0 [hh|vv|t1|t2] hh: 轮训CDN的IP访问指定域名获取header vv: 同上,显示详细内容 t1 [hostname]: 使用当前DNS来分析指定域名 t2 [hostname,ip]: 使用指定的域名和CDN节点IP来分析 _EOF } function cdn_ip() { nslookup ${hostname} |grep Address |grep -v "#53$" |cut -d " " -f2 } function hh() { cdn_ip |xargs -i curl -I -H "Host:${hostname}" http://{}/ >hh.log 2>&1 cat hh.log |grep -B3 -A11 ‘200 OK‘ |diff hh.log - |sed -e ‘1,4d‘ -e ‘s/-//g‘ -e ‘s/^[><]//g‘ } function vv() { cdn_ip |xargs -i curl -o /dev/null -v -H "Host:${hostname}" http://{}/ >vv.log 2>&1 cat vv.log |grep -B10 -A16 ‘200 OK‘ |diff vv.log - |sed -e ‘1d‘ -e ‘s/-//g‘ -e ‘s/^[><]//g‘ } function t1() { curl -o /dev/null -v http://${hostname} } function t2() { [ -z $3 ] && ip=$(cdn_ip |head -n 1) || ip=$3 curl -o /dev/null -v -H "Host:${hostname}" http://${ip}/ >${ip}.log 2>&1 sed -i -e ‘s/* About to/\n+-----------------------------------------------------------------------------------+\n\0/g‘ -e ‘s/< HTTP\/1.1/\0===============================/g‘ ${ip}.log cat ${ip}.log } case ${action} in hh|vv|t1|t2) ${action} ;; *) usage echo "[-] 解析-- ${hostname} --对应的CDN_IP的列表:" cdn_ip ${hostname} echo "" ;; esac
【cdn节点状态简单查看】cdn_lookup.sh
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。