如何将命令行 whois 用于“受垃圾邮件感染”的域,例如 apple.com?

Arj*_*jan 26 freebsd spam-prevention command-line whois macos

简而言之:有什么方法可以使用 Max OS X 上的命令行whois获取域的完整详细信息apple.com

whois例如,在命令行上运行forapple.com就像搜索包含该短语的所有域。因此,多亏了whois-spam,这在 Mac 或 FreeBSD 上获得了以下内容:

$ whois apple.com

Whois 服务器版本 2.0
[..]
APPLE.COM.WWW.BEYONDWHOIS.COM
APPLE.COM.MORE.INFO.AT.WWW.BEYONDWHOIS.COM
APPLE.COM.IS.OWN3D.BY.NAKEDJER.COM
APPLE.COM.IS.0WN3D.BY.GULLI.COM
APPLE.COM.BEYONDWHOIS.COM
APPLE.COM.AT.WWW.BEYONDWHOIS.COM
苹果网

要挑出一条记录,请使用“xxx”查找,其中 xxx 是
上面显示的记录。如果记录相同,则查找它们
用“=xxx”接收每条记录的完整显示。

要获取所有这些域的一些额外信息,我可以运行以下命令=apple.com,例如:

$ whois =apple.com

Whois 服务器版本 2.0
[..]
   服务器名称:APPLE.COM.WWW.BEYONDWHOIS.COM
   IP 地址:203.36.226.2
   注册商:TUCOWS INC.
   Whois 服务器:whois.tucows.com
   推荐网址:http://domainhelp.opensrs.net
[..]
   域名:APPLE.COM
   注册商:MARKMONITOR INC.
   Whois 服务器:whois.markmonitor.com
   推荐网址:http://www.markmonitor.com
   名称服务器:NSERVER.APPLE.COM
   名称服务器:NSERVER.ASIA.APPLE.COM
   [..]
   更新日期:2009 年 1 月 21 日
   创建日期:19-2-1987
   到期日期:2011 年 2 月 20 日

尽管如此,这并没有给我完整的记录,比如包含联系信息的记录:

$ whois -h whois.markmonitor.com apple.com
[..]
    行政联系人:
        苹果公司。
        苹果公司。
        1 无限循环
         库比蒂诺 CA 95014
        我们
[..] 

(在 Redhat Linux 上,jwhois只显示apple.com但没有联系信息;在 Debianwhois版本 4.7.20 上,会产生上述所有域的摘要,以及精确匹配域的其他详细信息,显然是通过对精确匹配进行额外查询whois.markmonitor.com。)

我什至尝试直接 telnet,但无法想出任何我无法使用whois-command做的事情,所以我想这是没用的:

$ telnet com.whois-servers.net 43
正在尝试 199.7.55.74...
连接到 whois.verisign-grs.com。
转义字符是“^]”。

苹果网
[..]

那么:有没有更简单的方法可以使用命令行获取此类域的完整详细信息(仅针对完全匹配的域)?

(考虑到命令行whois很快就会被禁用而支持启用验证码的 Web 界面,这从来没有让我感到困扰。但是,我仍然很好奇......)

mar*_*k4o 12

whois 命令在输出中查找字符串“Whois Server:”,如果找到,将再次向该服务器发出相同的查询。这就是你想要的,除了它只适用于第一场比赛。您可以使用像这样的命令whois "domain apple.com"从默认服务器中只获取一个匹配项,但 markmonitor(由 apple.com 使用)不接受该语法。如果您可以将“ domain apple.com”发送到默认服务器,然后apple.com发送到第二台服务器,它将起作用,如下所示:

function mywhois {
  whois -h `whois "domain $@" | sed '/^.*Whois Server:/!d;s///'` "$@"
}
Run Code Online (Sandbox Code Playgroud)

但是,这是特定于这些 whois 服务器的,因此不一定适用于其他 whois 服务器上的域。一个健壮的实现可能需要了解各种 whois 服务器实现使用的特定查询和输出格式。


Arj*_*jan 8

似乎(至少在 2009 年 9 月)以下使用 GeekTools Whois 代理,这在确定使用哪个 whois 服务器方面非常聪明。这也适用于com,net和以外的其他 TLD org

whois -h whois-servers.net apple.com

或者,根据macosxhints.com上的一个非常古老的提示

whois -h geektools.com apple.com

我偶然发现了这一点:想知道@mark4o 是如何知道上面答案domain命令,我最终发现运行whois help给了我一些whois-server的输出。由于我没有指定任何 TLD,所以我想知道是哪一个回复。我试过telnet whois-servers.net 43,所以基本上使用手册页中提到的裸域:

-h 主机

     使用指定的主机而不是默认的变体。无论是主持人
     可以指定名称或 IP 地址。

     默认情况下,whois 构造要使用的 whois 服务器的名称
     提供的(单个)参数的顶级域 (TLD),并附加
     “.whois-servers.net”。这有效地允许合适的 whois 服务器
     为大量 TLD 自动选择。

在这里 GeekTools Whois Proxy 宣布了自己:

$ telnet whois-servers.net 43
正在尝试 206.117.161.86...
连接到 whois-servers.net。
转义字符是“^]”。
GeekTools Whois 代理 v5.0.4 就绪。
检查 82.95.xx.xx 的访问权限...好的。

苹果网

检查服务器 [whois.crsnic.net]

检查服务器 [whois.markmonitor.com]
结果:
[..]

(实际上,geektools.com当前是 206.117.161.84,所以是与 不同的 IP whois-servers.net。)