gurkanbicer / advanced-dns
此包已被放弃,不再维护。未建议替代包。
此包最新版本(0.2.3)没有可用的许可信息。
它使用dig命令收集DNS结果。
0.2.3
2020-12-26 14:18 UTC
Requires
- php: >=7.1
- symfony/process: ^4.3
README
它使用dig命令收集DNS结果。
支持的DNS查询类型
- A
- AAAA
- CNAME
- MX
- NS
- SOA
- TXT
安装
composer require gurkanbicer/advanced-dns
require 'vendor/autoload.php'; use \Gurkanbicer\AdvancedDns\AdvancedDns;
示例
示例 1
$domain = new AdvancedDns('getdns.sh'); $result = $domain->lookup('NS', '8.8.8.8'); var_dump($result);
输出
array(4) {
["type"]=>
string(2) "NS"
["status"]=>
string(7) "NOERROR"
["nameserver"]=>
string(7) "8.8.8.8"
["response"]=>
array(2) {
["amit.ns.cloudflare.com"]=>
array(2) {
["ttl"]=>
int(21599)
["data"]=>
array(1) {
[0]=>
string(13) "173.245.59.63"
}
}
["april.ns.cloudflare.com"]=>
array(2) {
["ttl"]=>
int(21599)
["data"]=>
array(1) {
[0]=>
string(13) "173.245.58.66"
}
}
}
}
示例 2
$domain = new AdvancedDns('getdns.sh'); $result = $domain->authorityNameserverLookup(); var_dump($result);
输出
array(4) {
["type"]=>
string(8) "DOMAINNS"
["response"]=>
array(2) {
["amit.ns.cloudflare.com"]=>
array(2) {
["ttl"]=>
int(86400)
["data"]=>
array(1) {
[0]=>
string(13) "173.245.59.63"
}
}
["april.ns.cloudflare.com"]=>
array(2) {
["ttl"]=>
int(86400)
["data"]=>
array(1) {
[0]=>
string(13) "173.245.58.66"
}
}
}
["status"]=>
string(7) "NOERROR"
["nameserver"]=>
string(9) "a2.nic.sh"
}
错误处理
// if there is no error if ($result !== false && $result['status'] == 'NOERROR') { var_dump($result); }
如果查询的主机没有响应
array(4) {
["type"]=>
string(4) "AAAA"
["status"]=>
string(7) "NOERROR"
["nameserver"]=>
string(7) "8.8.8.8"
["response"]=>
array(0) {
}
}
如果出现问题或查询类型不在列表中,输出将如下所示
bool(false)