1.原理,我用的是php当中的dns_get_record 函数
会返回基本DNS属性,包括以下这些
2.效果,用php的get方式,当然你也可以用post或者其他形式。
返回基本DNS属性以及CDN服务器,效果如下
3.告知:
1.这篇文章提供的思路,源码的cdn特征库不完整,我仅收集了小部分,请自行完善收集。
2.转载或分享文章,请标注本篇文章链接,谢谢合作<------
3.不限于使用php的方式获取cdn方式,python,java等其他方式均可。
4.源码
<?php
$host=$_GET["host"];
$result = dns_get_record($host);
$result= json_encode($result, True);
echo $result;
echo "<br>";
$cdn=preg_match('/"CNAME","target":"(.*)"}/', $result, $cdn1);
$cdn=$cdn1[1];
switch (true) {
case stristr($cdn,'yunjiasu-cdn.net')||
stristr($cdn,'jomodns.com')||
stristr($cdn,'bdydns.com'):
echo "百度云加速";
break;
case stristr($cdn,'dnsv1.com')||
stristr($cdn,'cdntip.com')||
stristr($cdn,'cdntip.com'):
echo "腾讯云加速";
break;
case stristr($cdn,'alikunlun.com')||
stristr($cdn,'aliyuncs.com')||
stristr($cdn,'aliyun-inc.com')||
stristr($cdn,'my3w.com')||
stristr($cdn,'w.kunlungr.com')||
stristr($cdn,'w.cdngslb.com')||
stristr($cdn,'w.kunlunsl.com')||
stristr($cdn,'w.kunluncan.com')||
stristr($cdn,'kunlunea.com')||
stristr($cdn,'alibaba.com')||
stristr($cdn,'alibabadns.com')||
stristr($cdn,'aliapp.com')||
stristr($cdn,'w.kunlunca.com'):
echo "阿里云加速";
break;
case stristr($cdn,'cname.yunduncname.com')||
stristr($cdn,'cname.jsd.cc'):
echo "上海云盾";
break;
case stristr($cdn,'qingcdn.com')||
stristr($cdn,'bsclink.cn')||
stristr($cdn,'trpcdn.net'):
echo "<br>白山云科技";
break;
case stristr($cdn,'aicdn.com'):
echo "又拍云";
break;
case stristr($cdn,'qiniudns.com'):
echo "七牛";
break;
case stristr($cdn,'maoyundns.com'):
echo "猫云";
break;
default:
echo "域名cdn商查询失败,可能是无解析、系统暂未入库、A类...";
}
//echo "<br>";
//echo $cdn;
?>