Dns 域名通过“存在”;“挖掘”;
是否可以通过检查“dig”的输出来检查域名的存在? 在绑定源中,我找到了以下常量:Dns 域名通过“存在”;“挖掘”;,dns,whois,dig,Dns,Whois,Dig,是否可以通过检查“dig”的输出来检查域名的存在? 在绑定源中,我找到了以下常量: 0 DNS_R_NOEROR 1 DNS_R_FORMERR 2 DNS_R_SERVFAIL 3 DNS_R_NXDOMAIN 4 DNS_R_NOTIMP 5 DNS_R_REFUSED 6 DNS_R_YXDOMAIN 7 DNS_R_YXRRSET 8 DNS_R_NXRRSET 9 DNS_R_NOTAUTH 10 DNS_R_NOTZONE 16 DNS_R_BADVERS <RCODE 11
0 DNS_R_NOEROR
1 DNS_R_FORMERR
2 DNS_R_SERVFAIL
3 DNS_R_NXDOMAIN
4 DNS_R_NOTIMP
5 DNS_R_REFUSED
6 DNS_R_YXDOMAIN
7 DNS_R_YXRRSET
8 DNS_R_NXRRSET
9 DNS_R_NOTAUTH
10 DNS_R_NOTZONE
16 DNS_R_BADVERS
<RCODE 11> # 11 has no macro
<RCODE 12> # 12 has no macro
<RCODE 13> # 13 has no macro
<RCODE 14> # 14 has no macro
<RCODE 15> # 15 has no macro
0 DNS\R\n错误
1 DNS\u R\u FORMERR
2 DNS\u R\u服务失败
3域名
4 DNS\u R\u NOTIMP
5个域名被拒绝
6 DNS\u R\u域
7 DNS\u R\u YXRRSET
8 DNS\u R\u nxrset
9 DNS\u R\u NOTAUTH
10 DNS\u R\u NOTZONE
16个域名服务器
#11没有宏
#12没有宏
#13没有宏
#14没有宏
#15没有宏
在我看来,NOERROR&SERVFAIL意味着主机名存在(尽管这并不意味着有ip链接到它)。NXDOMAIN将意味着它绝对不存在
我不喜欢使用whois,因为它相当慢。dig的速度要快得多,因为我只需要确定主机名还不存在
有没有人能对我的假设和其他宏进行解释
谢谢不,你不能。至少,Dig可以告诉您域是否有nameserver记录,但即使响应是否定的,也不意味着域可用
唯一的方法是执行WHOIS查询。嗯,在某些情况下它可能会工作,但在大多数情况下,您会看到不正确的结果-某些域已注册,但在TLD名称服务器中没有记录。有些域配置了记录,但没有注册,因为有些注册表配置了通配符域:
$ dig asdfasdfasdfxvyxv123.de.com A +short
91.213.214.122
$ whois -h whois.centralnic.com asdfasdfasdfxvyxv123.de.com
DOMAIN NOT FOUND
谁确实很慢-与域提供商交谈,大多数注册中心提供更快的方法来检查域是否已注册(即EPP协议)只需询问域的SOA记录:
$ dig activcloud.eu +short soa
dns112.ovh.net. tech.ovh.net. 2018091203 86400 3600 3600000 300
当
$ dig lmksjdflksd.eu +short soa
不返回任何内容您需要定义“存在”。你是说“注册”吗?如果是,则为否,因为您可以注册一个域(从而使其对任何其他人都不可用),但根本不需要在DNS中发布它。否则,您只需要查询注册表权威名称服务器,如果他们没有回复域的NXDOMAIN,则表示它存在,因为它是由注册表权威名称服务器委派的。至少这对TLD/后缀下的域是有效的,但由于可能存在通配符,因此可能无法进一步工作。