11

我正在编写一些代码来确定是否注册了网络域。例如,我想检查“Google123.com”是否可用。至少有两种方法可以以编程方式执行此操作,但我不确定哪种方法更有效:

  • A) 在 linux/cygwin 中,我可以启动 whois 命令来查看域是否正在使用中。
  • B) 在 linux/windows 中,我可以启动 nslookup 命令来查看域是否可解析。

我的问题是:

  1. nslookup 真的是检查注册的有效方法吗?每个注册的域是否都有一个名称服务器并显示在 DNS 中?
  2. 进行此注册检查的最快方法是什么?有什么提示或其他方法吗?
4

6 回答 6

10

关于#1,没有。没有要求注册的域实际上具有 DNS。

于 2008-09-20T01:44:51.210 回答
7

nslookup 会访问您系统设置中的 dns 服务器。它可能落后于时代,也可能没有任何 dns 条目。我认为最好的方法是与 whois.internic.net 端口 43(whois 端口)建立 tcp 连接,传递您要检查的名称,然后您应该得到一个让您知道的响应。如果它不存在,您将收到类似No match for "domainyourchecking.com"的响应

于 2008-09-20T01:49:49.543 回答
2

有传言说,一些允许您搜索域名的网站实际上是域名投机者的前线,他们会在您搜索域名后立即购买,然后尝试将其出售给您。我从未遇到过这样的骗局,但您可能想在搜索您梦寐以求的域名之前在新站点上尝试一些垃圾域搜索。

于 2008-09-20T01:57:35.670 回答
2

whois 的问题在于不同的顶级域名没有一致的响应。

因此,如果您只是在寻找 .com 或其他一些特定的顶级域名,那就没问题了。如果您开始查看各种 ccTld 或其他 gTld,您可能会在逻辑中发现很多特殊的大小写,试图找出 whois 命令返回的数据中“可用”的含义。

Whois 总是向 shell 返回成功,即使域可用。:(

于 2009-04-15T20:03:36.657 回答
-2

这会给你一个快速的是/否,但如果你认为它是免费的,并且你想要它,尝试注册它,你可能会发现它已经被占用了。

于 2008-09-20T01:44:10.507 回答
-3

system("whois $域名");

于 2008-09-20T01:49:15.270 回答