新的TLD如何处理?


46

如何使用whoislinux中的命令查找新的TLD,例如.email,.guru等?

whois在新的TLD上运行只会给出以下响应:

No whois server is known for this kind of object.

Answers:


43

您可以为新TLD手动配置whois服务器。

只需创建文件/etc/whois.conf并添加以下内容,您就可以查找新的TLD:

whois.conf(Github镜像:whois.conf

whois.conf使用正则表达式


1
哇谢谢!您能告诉我您从什么来源获得此信息吗?我想这个列表会随着时间的推移而过时。
Paul

2
我编写了从IANA最新数据中收集WHOIS服务器的脚本,并更新了此答案。
罗伊斯·威廉姆斯

2
不同版本的Whois具有不同的Whois服务器快照,因此不同的人将需要不同的列表-尤其是由于某些原因而被卡在较旧的发行版中时。每次使用整个列表使它对每个人都有效。而且,简单地收获所有这些都容易得多。:-)
罗伊斯·威廉姆斯

1
@TomBrossman我不确定为什么会这样,而且除了发现它与注册商级别无关外,我没有进一步研究它。如果您从以下答案之一中使用gwhois.org工具,则可以看到更好的说明。
Paul

3
@TomBrossman正确。.com域有不同的Whois服务器。也许可以在whois.conf中输入所有这些信息。最简单的方法可能就是删除.com条目。
2015年

14

您可以直接从IANA轻松获得合适的whois服务器而无需编辑其他文件或表。

“ .de” TLD的示例

Linux,OSX(和兼容):

whois -h whois.iana.org .de |
  egrep -e '^whois:' |
  sed -e 's/[[:space:]][[:space:]]*/ /g' |
  cut -d " " -f 2

玩得开心


希望您的回答更多。这是一个完美而正确的广义解决方案。不需要硬编码(否则,每个操作系统都需要为每个新TLD硬编码WHOIS服务器!)。whois我不确定为什么这不是该实用程序的默认行为(也许是为了减少负载?)。无论如何,道具和谢谢。
apinstein'7

2
使用您的想法查询域将像这样工作whois -h $(whois -h whois.iana.org .TLD | grep '^whois:' | sed 's/whois:\s*//') example.TLD。但是,有趣的whois.nic.TLD是,正如@Andrew指出的那样,足以将其用作大多数(或全部?)TLD的数据库主机。
Peterino '16

这似乎不适用于所有TLD。对于.tube负责任的服务器未发布。可能是因为IANA服务器负责whois -h whois.iana.org nic.tube工作。
thde

11

大多数whois客户端对TLD whos服务器进行硬编码,而不是在执行客户端不知道的TLD时主动从IANA检索whois服务器。

我已经构建了自己的在线Whois查找工具,您可以使用http://gwhois.org/来支持所有TLD和IP地址,因为所有查找都始于IANA,然后根据需要遍历到注册管理机构和注册商。

我还花了很多时间来构建智能的Whois解析器,以用户友好的方式显示whois数据。

屏幕截图示例:

屏幕截图

屏幕截图2


谢谢你,因为我不运行Ruby,所以这个答案对我来说会更好。我运行Ubuntu Server 12.04,它似乎gwhois需要从官方存储库中安装25个软件包。并不是说我会错过〜4.4MB的存储空间,这对于包正常运行是否真的必要吗?
保罗

哦。Gwhois.org与Linux上的“ gwhois”软件包无关。抱歉给您带来困惑
iglvzx 2014年

好的,那行得通,但是没有命令行工具吗?我希望以某种方式解决命令行问题。
保罗

1
是的 我决定构建自己的Whois工具的主要原因是因为我对已经存在的任何解决方案都不满意。:)
iglvzx 2014年

2
@iglvzx我喜欢您的工具。您是否考虑过开源代码,以便我们可以主动对应用程序进行更改?
David Okwii

11

这似乎适用于大多数新TLD:

服务器主机名的格式为:whois.nic.newtldname

例如:

whois -h whois.nic.host example.host

“此名称由注册管理机构根据ICANN政策保留。” 等等等等

另外,浏览至http://nic.newtldname通常会带您到注册表/启动页面。


太棒了!即使IANA正式列出的主机在大多数域名注册机构中都不同,为什么仍能正常工作?是否在某处有记录,这是IANA或ICANN正式支持的吗?-您的解决方案的动态版本为whois -h $(whois -h whois.iana.org .TLD | grep '^whois:' | sed 's/whois:\s*//') example.TLD
Peterino '16

1
您是否知道其他任何接受TLD扩展名查询该TLD的Whois服务器?我知道两个:whois.nic.$ext$ext.whois-servers.net-我正在寻找其他人添加到我的列表中。
chovy

5

如果使用的是标准linux客户端,则定义尚未更新为包括新的TLDS。

您有两种可能的解决方案:

  1. 获取所有新gTLD的列表,并将whois主机作为参数传递给whois客户端
  2. 使用其他客户端。我目前正在尽最大努力使Ruby WHOIS客户端与新gTLD 保持同步,因此您可以使用它。它还提供一个CLI。

我不确定从哪里获取所有新gTLD的列表,也不确定如何将whois主机作为参数传递给whois客户端。我的服务器上没有安装Ruby。这不是一个好答案。
保罗

是Simone的TLD的whois主机列表,是whois手册页的副本。
凯利·托马斯

IANA的根域数据库包括whois服务器以及其他TLD信息。(它接近TLD条目的底部。)
Matt Nordhoff 2014年

2

在OS X上,whois工具似乎不是使用/etc/whois.conf支持构建的(就像slackware?一样)。解决此问题的简单方法似乎是安装来自自制软件的“伪造” whois 。你可以这样做

brew tap homebrew/dupes
brew update
brew install whois
brew untap homebrew/dupes

这样,它将使用更新的Whois服务器列表(但我仅使用.so和.ninja域进行了测试)。


很高兴知道这一点。安装更新的whoisCLI的一种方法是brew install homebrew/dupes/whois

1

一种方法是使用TLD .whois-servers.net作为Whois服务器,例如:

whois -h mobi.whois-servers.net npr.mobi

whois-server.net域(由中关村LLC,没有隶属关系运行)包含DNS重定向CNAME官方TLD域名注册服务器,如的希望了最新名单:

dig mobi.whois-servers.net
...
;; ANSWER SECTION:
mobi.whois-servers.net. 146     IN      CNAME   whois.dotmobiregistry.net.

在大多数情况下,这可行。甚至还有一个更短的语法(至少在OSX) whois -c mobi npr.mobi。遗憾的是它并不适用于所有领域的工作在写如的时间whois -c tube nic.tube
thde

1

要更新/etc/whois.conf,可以使用类似以下的脚本

/*
 * Usage : node generateWhoisConf.js > /etc/whois.conf
 */

var json = require('comment-json');
var request = require('request');

request('https://github.com/weppos/whois/raw/master/data/tld.json', function(error, response, body){
  var obj = json.parse(body);
  Object.keys(obj).forEach(function(key){
    if(obj[key].host){
      console.log(key.replace(/\./g,'\\.') + '$ ' + obj[key].host);
    }
  });
});

https://gist.github.com/HugoPoi/4694a99f5a9d9b2c558557bbdd113f54

这个其他github存储库提供了关于whois服务器的良好数据https://github.com/whois-server-list/whois-server-list


欢迎来到超级用户!请在参考链接中引用答案的关键部分,因为如果链接页面发生更改,答案可能会失效。
DavidPostill

0

我的解决方案不是很复杂。我无法在Debian Wheezy或Squeeze或OS X El Capitan或Snow Leopard中查找某个TLD。我发现我可以在Debian Jessie中查找TLD。在Debian机器上,我只是获取了Jessie的whois的源代码并进行了构建。现在工作正常。对于OS X,我通过MacPorts获取了更新的Whois版本。


0

服务器对我的一个请求有同样问题的服务器响应。

在这种情况下,使用该-a开关很简单并且效果很好:

whois -a [your_request_here]

来自man

[This flag is] understood by whois.ripe.net and some other RIPE-like servers:
-a
    Also search all the mirrored databases. 

0

或者,您可以使用更好的工具。例如,GNU jwhois首先灵活地搜索适当的whois服务器,然后使用该服务器进行实际查找。

jwhois是一种改进的Whois客户端,它能够使用正则表达式或CIDR块基于灵活的配置文件选择Whois服务器进行查询

GNU路径:https:
//ftp.gnu.org/gnu/jwhois/ Github一个:https : //github.com/jonasob/jwhois


对于新的TLD无效。
保罗

具有讽刺意味的是,这就是为什么我不能成为新TLD的原因。由于某种原因,此工具是默认安装的工具。我安装了一个普通的whois,就可以查询新的TLD,而无需进行修改。
Aspiring Dev
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.