Tôi đang tìm kiếm một danh sách đáng tin cậy và cập nhật về Máy chủ WHOIS để sử dụng trong tập lệnh whois.
Vì danh sách thay đổi thường xuyên, sẽ rất tuyệt nếu có tài nguyên tôi có thể tham khảo thay vì phải cập nhật tập lệnh thường xuyên.
Tôi đang tìm kiếm một danh sách đáng tin cậy và cập nhật về Máy chủ WHOIS để sử dụng trong tập lệnh whois.
Vì danh sách thay đổi thường xuyên, sẽ rất tuyệt nếu có tài nguyên tôi có thể tham khảo thay vì phải cập nhật tập lệnh thường xuyên.
Câu trả lời:
Có một số cách nổi tiếng để định vị máy chủ whois cho TLD, cơ sở dữ liệu IANA có lẽ là gần nhất với những gì câu hỏi yêu cầu, tuy nhiên có những nguồn khác có thể hữu ích hơn trong thực tế.
Duyệt http://www.iana.org/domains/root/db hoặc tìm kiếm cơ sở dữ liệu whois tại whois.iana.org
TLD. Mỗi mục có một trường chỉ định máy chủ whois .
Thí dụ:
$ whois -h whois.iana.org com
[Querying whois.iana.org]
[whois.iana.org]
% IANA WHOIS server
% for more information on IANA, visit http://www.iana.org
% This query returned 1 object
domain: COM
organisation: VeriSign Global Registry Services
address: 12061 Bluemont Way
address: Reston Virginia 20190
address: United States
contact: administrative
name: Registry Customer Service
organisation: VeriSign Global Registry Services
address: 12061 Bluemont Way
address: Reston Virginia 20190
address: United States
phone: +1 703 925-6999
fax-no: +1 703 948 3978
e-mail: info@verisign-grs.com
contact: technical
name: Registry Customer Service
organisation: VeriSign Global Registry Services
address: 12061 Bluemont Way
address: Reston Virginia 20190
address: United States
phone: +1 703 925-6999
fax-no: +1 703 948 3978
e-mail: info@verisign-grs.com
nserver: A.GTLD-SERVERS.NET 192.5.6.30 2001:503:a83e:0:0:0:2:30
nserver: B.GTLD-SERVERS.NET 192.33.14.30 2001:503:231d:0:0:0:2:30
nserver: C.GTLD-SERVERS.NET 192.26.92.30
nserver: D.GTLD-SERVERS.NET 192.31.80.30
nserver: E.GTLD-SERVERS.NET 192.12.94.30
nserver: F.GTLD-SERVERS.NET 192.35.51.30
nserver: G.GTLD-SERVERS.NET 192.42.93.30
nserver: H.GTLD-SERVERS.NET 192.54.112.30
nserver: I.GTLD-SERVERS.NET 192.43.172.30
nserver: J.GTLD-SERVERS.NET 192.48.79.30
nserver: K.GTLD-SERVERS.NET 192.52.178.30
nserver: L.GTLD-SERVERS.NET 192.41.162.30
nserver: M.GTLD-SERVERS.NET 192.55.83.30
ds-rdata: 30909 8 2 E2D3C916F6DEEAC73294E8268FB5885044A833FC5459588F4A9184CFC41A5766
whois: whois.verisign-grs.com
status: ACTIVE
remarks: Registration information: http://www.verisign-grs.com
created: 1985-01-01
changed: 2012-02-15
source: IANA
$
Tên tld.whois-servers.net
là một CNAME
máy chủ whois thích hợp. Hơi không rõ ai thực sự duy trì điều này nhưng có vẻ khá phổ biến vì nó rất dễ sử dụng với hầu hết mọi khách hàng whois (và một số khách hàng mặc định sử dụng dịch vụ này).
Thí dụ:
$ dig com.whois-servers.net +noall +answer
; <<>> DiG 9.9.4-P2-RedHat-9.9.4-15.P2.fc20 <<>> com.whois-servers.net +noall +answer
;; global options: +cmd
com.whois-servers.net. 600 IN CNAME whois.verisign-grs.com.
whois.verisign-grs.com. 5 IN A 199.7.55.74
$
Nhiều cơ quan đăng ký xuất bản địa chỉ máy chủ whois của họ trong DNS trực tiếp trong khu vực liên quan dưới dạng _nicname._tcp
SRV
bản ghi .
Thí dụ:
$ dig _nicname._tcp.us SRV +noall +answer
; <<>> DiG 9.9.4-P2-RedHat-9.9.4-15.P2.fc20 <<>> _nicname._tcp.us SRV +noall +answer
;; global options: +cmd
_nicname._tcp.us. 518344 IN SRV 0 0 43 whois.nic.us.
$
Tôi thường xuyên biên dịch một danh sách từ IANA và PSL thành một tệp XML bao gồm máy chủ whois, công ty đăng ký, tên miền cấp hai và nếu có thể là một biểu thức chính quy cho availabilty: https://github.com/whois-server-list/whois-server-list
Gần đây tôi đã chơi xung quanh với WHOIS và tôi thấy rằng một số gói whois có sẵn công khai [cụ thể là jwhois của CentOS] dường như dựa vào danh sách các máy chủ TLD WHOIS đóng gói sẵn. Mặc dù điều này sẽ tốt cho phần lớn các TLD, nhưng đó là một vấn đề cho sự bùng nổ của các gTLD bí truyền như thế nào .horse
.
Phương pháp đáng tin cậy 100% là tra cứu TLD tại máy chủ WHOIS của IANA whois.iana.org
, phân tích whois:
mục nhập và sau đó truy vấn máy chủ đó để biết thông tin của tên miền. Ví dụ:
foo@bar:~ $ echo -e "horse\r\n" | nc -i 1 whois.iana.org 43
% IANA WHOIS server
% for more information on IANA, visit http://www.iana.org
% This query returned 1 object
domain: HORSE
[snip]
whois: whois-dub.mm-registry.com
[snip]
Connection closed by foreign host.
Và sau đó:
foo@bar:~ $ echo -e "dord.horse\r\n" | nc -i 1 whois-dub.mm-registry.com 43
Domain Name: dord.horse
Domain ID: 1742946-MMd1
WHOIS Server: whois-dub.mm-registry.com
[snip]
Nếu bạn đang sử dụng phương pháp này, bạn nên lịch sự và phản hồi bộ đệm từ máy chủ IANA trong ít nhất 48 giờ, nếu không lâu hơn, vì chúng sẽ hiếm khi thay đổi và máy chủ của IANA có xu hướng chịu tải lớn.
Tôi duy trì danh sách các máy chủ WHOIS cho thư viện Ruby WHOIS của mình tại https://github.com/weppose/whois/blob/master/data/tld.json
Nó chứa danh sách tất cả các máy chủ hiện có.
Nó không chứa phản hồi khi tên miền khả dụng vì thư viện Ruby thực hiện phân tích cú pháp ở một cấp độ khác. Ngoài ra, hãy nhớ rằng không phải tất cả các cơ quan đăng ký đều sử dụng thông điệp chuỗi để truyền đạt sự không có sẵn của một tên miền.
bạn có thể sử dụng tập lệnh này để lấy máy chủ whois từ IANA. bị đe dọa bởi noys. đầu ra trong danh sách JSON của các vùng và máy chủ whois.
<style>
body {
font: normal 10px verdana, sans-serif;
color: #333;
}
</style>
<?
$zones = array('ac','am','asia','at','be','biz','biz.ua','biz.ua','br.com','bz','cc','ch','co','co.am','co.in','co.ua','co.ua','om','com.am','com.kz','com.ua','cx','cz','de.com','eu','eu.com','firm.in','fm','gen.in','im','in','ind.in','info','io','kiev.ua','kz','la','lc','li','lt','lu','md','me','mn','mobi','ms','mx','name','net','net.am','net.in','org','org.am','org.in','org.kz','ph','pl','pp.ua','pro','pw','pw','ru','ru.com','so','su','su','su','tel','tv','tw','us','uy.com','vc','ws','xxx','za.cm','xn--p1ai');
$count = count($zones);
echo '<h1>Whois tool</h1>';
echo '<pre>
{
';
for($i=0;$i<$count;$i++) {
$root_server = 'whois.iana.org';
$zone = $zones[$i];
$domain = 'nuceti75.'.$zones[$i];
//echo "<h2>$domain - $current_domain</h2>";
$fp = fsockopen($root_server, 43);
if (!$fp) echo "Connection error: $root_server \r\n";
else {
fputs($fp, $zone."\r\n");
while (!feof($fp)) {
$root_answer .= fgets($fp, 128);
}
preg_match("~whois:\s(.+)~i", $root_answer, $result);
$current_server = trim($result[1]);
fclose($fp);
}
//echo "<pre>$root_answer</pre>";
//echo "<b>Whois server for this TLD:</b> $current_server";
$fh = fsockopen($current_server, 43);
if (!$fh) echo "Connection error: $current_server ($zone) \r\n";
else {
fputs($fh, $domain."\r\n");
while (!feof($fh)) {
$current_answer .= fgets($fh, 128);
}
fclose($fh);
}
//echo "<pre>$current_answer</pre>";
echo "\"$zone\": \"$current_server\",\r\n";
unset($root_answer);
unset($current_answer);
unset($result);
}
echo '
}
</pre>';
?>
Bạn không cần một danh sách này. whois (1) đủ thông minh để tìm ra điều này cho bạn:
Đối với trang người đàn ông:
By default whois constructs the name of a whois server to use
from the top-level domain (TLD) of the supplied (single) argu-
ment, and appending ".whois-servers.net". This effectively
allows a suitable whois server to be selected automatically for a
large number of TLDs.
Whois nói chung là khá đáng tin cậy. Tôi không bao giờ nhớ lại thấy nó thất bại cho một miền.
bet.whois-servers.net
không tồn tại
whois
khách hàng bạn sử dụng. Không phải tất cả trong số họ làm điều đó, vì lý do tốt hay xấu. whois-servers.net
vẫn không phải là một dịch vụ chính thức, chỉ là một cái gì đó được thực hiện trên một trường hợp nỗ lực tốt nhất.