我试图使用“主机”命令检查域的可用性,并寻找NXDOMAIN响应。 我遇到了一个奇怪的域名:
host -W 1 antiquejewelry.net
这将返回NXDOMAIN,但whoislogging显示其名称服务器设置为:
nsf.algx.net rapnet.diamonds.com
这个回应有什么特别的原因吗? 有没有更好的方法来检查域名服务器的存在?
我的WHOIS结果显示了这两个名称服务器:
RAPNET.DIAMONDS.COM NS.DIGEX.NET
WHOIS结果中的名称服务器“存在”,但没有列出的名称服务器响应此域的logging。 使用WHOIS中列出的两个服务器以及您在问题中列出的其他服务器检查host和dig的输出:
使用host :
dave@dev:/var$ host antiquejewelry.net rapnet.diamonds.com ;; connection timed out; no servers could be reached dave@dev:/var$ host antiquejewelry.net ns.digex.net host: couldn't get address for 'ns.digex.net': not found dave@dev:/var$ host antiquejewelry.net nsf.algx.net Using domain server: Name: nsf.algx.net Address: 207.88.20.150#53 Aliases: Host antiquejewelry.net not found: 3(NXDOMAIN)
使用dig :
dave@dev:/var$ dig @rapnet.diamonds.com antiquejewelry.net ; <<>> DiG 9.5.1-P2 <<>> @rapnet.diamonds.com antiquejewelry.net ; (1 server found) ;; global options: printcmd ;; connection timed out; no servers could be reached dave@dev:/var$ dig @ns.digex.net antiquejewelry.net dig: couldn't get address for 'ns.digex.net': not found dave@dev:/var$ dig @nsf.algx.net antiquejewelry.net ; <<>> DiG 9.5.1-P2 <<>> @nsf.algx.net antiquejewelry.net ; (3 servers found) ;; global options: printcmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 8959 ;; flags: qr aa rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0 ;; WARNING: recursion requested but not available ;; QUESTION SECTION: ;antiquejewelry.net. IN A ;; Query time: 62 msec ;; SERVER: 207.88.20.150#53(207.88.20.150) ;; WHEN: Sat Jul 25 10:19:16 2009 ;; MSG SIZE rcvd: 36
连接超时到第一个名字服务器,第二个名字服务器的主机名不解决,并且第三个名字服务器响应表明它没有一个区域为antiquejewelry.net(它没有logging为那个域) 。
这是一个有趣的跛脚代表团案例。 跛脚委派是当一个域被委派给那些不知道它的名字服务器(通过configuration错误或其他原因)。 通常,没有授权的服务器会回复SERVFAIL(服务器故障)或NOERROR,并将其redirect到根,但是nsf.algx.NET回复NXDOMAIN(无此域)和AA(授权应答)标志,非商业要做。
所以,在这里,你已经find了一个有趣的例子。
否则,通过使用DNS检查域的可用性是一个非常糟糕的想法,因为在许多注册pipe理机构中,域名可以根据域所有者的意愿进行注册,而不是公布。