美文网首页
PHP 通过 Whois 获取IP 地址 ANS 相关信息

PHP 通过 Whois 获取IP 地址 ANS 相关信息

作者: Lily小姐启示录 | 来源:发表于2020-10-30 23:51 被阅读0次

    今天要对几万个 IP 地址获取 ANS,运营商,所属国家,网上有很多在线工具,但几万个 IP 不可能手动去查,我们知道可以通过 whois 去查看指定的 IP 地址详细信息,所以用 PHP 的 exec() 直接执行命令是否就可以,但遇到的问题是 ,IP 地址不同里面的 KEY 名称也可能不同,使用这个命令还稍微准确一点:whois x.x.x.x | egrep -i --color '(as)?origin|netname|org  ,但是还是不方便获取我想要的,经查通过 whois 访问  whois.cymru.com   这个网站,能完美拿到简单统一结构的数据,代码如下:

    <?php

    /**

    * Created by PhpStorm.

    * User: songyumin

    * Date: 2020/10/30

    * Time: 16:30

    */

    $str = file_get_contents("test.txt");//将整个文件内容读入到一个字符串中

    $str_encoding = mb_convert_encoding($str, 'UTF-8', 'UTF-8,GBK,GB2312,BIG5');//转换字符集(编码)

    $arr = explode(",", $str_encoding);//转换成数组

    foreach ($arr as $val) {

        $query = 'whois -h whois.cymru.com " -f ' . trim($val) . '"';

        $whoisResult = shell_exec($query);

        $asnArray = explode('|', $whoisResult);

        $cleanAsn = array_map('trim', $asnArray);

        echo $cleanAsn[1].",".$cleanAsn[0].",".$cleanAsn[2].PHP_EOL;

    }

    相关文章

      网友评论

          本文标题:PHP 通过 Whois 获取IP 地址 ANS 相关信息

          本文链接:https://www.haomeiwen.com/subject/qobjvktx.html