Làm thế nào để whois TLD mới?


46

Làm cách nào tôi có thể tra cứu các TLD mới, chẳng hạn như .email, .guru, v.v., bằng cách sử dụng whoislệnh trong linux?

Chạy whoistrên một TLD mới chỉ cung cấp phản hồi:

No whois server is known for this kind of object.

Câu trả lời:


43

Bạn có thể tự cấu hình máy chủ whois cho các TLD mới.

Chỉ cần tạo tệp /etc/whois.confvà thêm nội dung sau đây và bạn sẽ có thể tra cứu các TLD mới:

whois.conf (Gương Github: whois.conf )

Whois.conf đang sử dụng các biểu thức chính quy .


1
Ồ cảm ơn nhé! Bạn có thể cho tôi biết bạn lấy thông tin này từ nguồn nào không? Tôi tưởng tượng danh sách này sẽ trở thành ngày theo thời gian.
Paul

2
Tôi đã viết kịch bản thu hoạch các máy chủ WHOIS từ dữ liệu IANA mới nhất và đã cập nhật câu trả lời này.
Royce Williams

2
Các phiên bản khác nhau của whois có ảnh chụp nhanh khác nhau của máy chủ whois, vì vậy những người khác nhau sẽ cần các danh sách khác nhau - đặc biệt là nếu chúng bị kẹt trên một bản phân phối cũ hơn vì một số lý do. Sử dụng toàn bộ danh sách mỗi lần làm cho nó hoạt động cho tất cả mọi người. Ngoài ra, nó dễ dàng hơn nhiều chỉ đơn giản là thu hoạch tất cả chúng. :-)
Royce Williams

1
@TomBrossman Tôi không hoàn toàn chắc chắn tại sao lại như vậy và tôi không nhìn sâu vào nó hơn là phát hiện ra rằng nó có liên quan đến việc tra cứu sẽ không đến cấp đăng ký. Nếu bạn sử dụng công cụ gwhois.org từ một trong những câu trả lời dưới đây, bạn có thể thấy điều này được minh họa tốt hơn nhiều.
Paul

3
@TomBrossman Đúng. Có nhiều máy chủ Whois khác nhau cho tên miền .com. Có lẽ bạn có thể nhập tất cả những thứ này vào whois.conf. Cách dễ nhất có lẽ là chỉ cần loại bỏ các mục .com.
thde

14

Bạn có thể dễ dàng lấy đúng máy chủ whois trực tiếp từ IANA mà không cần chỉnh sửa các tệp hoặc bảng bổ sung.

Ví dụ cho TLD ".de"

Linux, OSX (và tương thích):

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

Chúc vui vẻ


Tôi muốn câu trả lời của bạn được nâng cao hơn nhiều; đây là một giải pháp tổng quát hoàn hảo và chính xác. Không cần mã hóa cứng (nếu không mọi hệ điều hành sẽ cần mã hóa máy chủ WHOIS cho mỗi TLD mới!). Tại sao đây không phải là hành vi mặc định cho whoistiện ích, tôi không chắc chắn (có thể để giảm tải?). Dù sao, đạo cụ và cảm ơn bạn.
apinstein

2
Truy vấn một tên miền sẽ hoạt động như thế này bằng ý tưởng của bạn : whois -h $(whois -h whois.iana.org .TLD | grep '^whois:' | sed 's/whois:\s*//') example.TLD. Điều thú vị là, nó đủ để sử dụng whois.nic.TLDlàm máy chủ cơ sở dữ liệu cho hầu hết (hoặc có thể là tất cả?), Như được chỉ ra bởi @Andrew.
Peterino

Điều này dường như không hoạt động cho tất cả các TLD. Đối với .tubecác máy chủ có trách nhiệm không được công bố. Có lẽ bởi vì máy chủ IANA chịu trách nhiệm như whois -h whois.iana.org nic.tubecác công trình.
thde

11

Hầu hết các máy khách whois mã hóa cứng các máy chủ TLD, thay vì chủ động truy xuất máy chủ whois từ IANA khi thực hiện cho một TLD mà máy khách chưa biết.

Tôi đã xây dựng công cụ tra cứu whois trực tuyến của riêng mình, bạn có thể sử dụng http://gwhois.org/ hỗ trợ tất cả các TLD và địa chỉ IP vì tất cả các tra cứu bắt đầu tại IANA và sau đó đi qua đăng ký và đăng ký khi cần.

Tôi cũng đã dành nhiều thời gian để xây dựng một trình phân tích cú pháp whois thông minh hiển thị dữ liệu whois theo cách thân thiện với người dùng.

Ảnh chụp màn hình ví dụ:

ảnh chụp màn hình

ảnh chụp màn hình 2


Cảm ơn bạn vì điều này, vì tôi không chạy Ruby, câu trả lời này sẽ hiệu quả hơn với tôi. Tôi chạy Ubuntu Server 12.04 và có vẻ như gwhoisgói yêu cầu thêm 25 gói được cài đặt từ kho chính thức. Không phải là tôi sẽ bỏ lỡ ~ 4,4 MB dung lượng lưu trữ, tất cả những thứ này có thực sự cần thiết để gói chạy chính xác không?
Paul

Oh. Gwhois.org không liên quan đến các gói 'gwhois' trên Linux. Xin lỗi vì sự nhầm lẫn
iglvzx

Được rồi, có thể làm việc, nhưng không có công cụ dòng lệnh? Tôi hy vọng sẽ giải quyết vấn đề dòng lệnh bằng cách nào đó.
Paul

1
Vâng. Lý do chính khiến tôi quyết định xây dựng công cụ whois của riêng mình là vì tôi không hài lòng với bất kỳ giải pháp nào đã có. :)
iglvzx

2
@iglvzx Tôi thích công cụ của bạn. Bạn đã nghĩ đến việc tìm nguồn mở mã để chúng tôi có thể chủ động thực hiện các thay đổi cho ứng dụng chưa?
David Okwii

11

Điều này dường như hoạt động cho hầu hết các tld mới:

Tên máy chủ của máy chủ có dạng: whois.nic.newtldname

ví dụ:

whois -h whois.nic.host example.host

"Tên này được Đăng kiểm bảo lưu theo Chính sách của ICANN." v.v ...

Ngoài ra, duyệt để http://nic.newtldnameđưa bạn đến trang Đăng ký / Khởi chạy.


Tuyệt vời! Tại sao điều này hoạt động ngay cả khi các máy chủ được IANA liệt kê chính thức khác với hầu hết các cơ quan đăng ký tên miền? Đây có phải là tài liệu ở đâu đó không, iow có được chính thức hỗ trợ bởi IANA hoặc ICANN không? - Phiên bản động của giải pháp của bạn sẽ làwhois -h $(whois -h whois.iana.org .TLD | grep '^whois:' | sed 's/whois:\s*//') example.TLD
Peterino

1
Bạn có biết bất kỳ máy chủ whois nào khác chấp nhận tiện ích mở rộng TLD để truy vấn TLD đó không? Tôi biết hai điều: whois.nic.$ext$ext.whois-servers.net- Tôi đang tìm người khác để thêm vào danh sách của mình.
chovy

5

Nếu bạn đang sử dụng máy khách linux tiêu chuẩn, các định nghĩa chưa được cập nhật để bao gồm TLDS mới.

Bạn có hai giải pháp khả thi:

  1. Lấy danh sách tất cả các gTLD mới và chuyển máy chủ whois làm tham số cho máy khách whois
  2. Sử dụng một khách hàng thay thế. Tôi hiện đang cố gắng hết sức để giữ ứng dụng khách Ruby WHOIS đồng bộ với các gTLD mới, vì vậy bạn có thể sử dụng nó. Nó cũng cung cấp một CLI.

Tôi không chắc chắn nơi để lấy danh sách tất cả các gTLD mới và tôi không chắc chắn làm thế nào để chuyển máy chủ whois làm tham số cho máy khách whois. Tôi không cài đặt Ruby trên máy chủ của mình. Đây không phải là một câu trả lời tốt.
Paul

Dưới đây là danh sách các máy chủ whois của Simone cho tlds, đây là bản sao của trang whois.
Kelly Thomas

Cơ sở dữ liệu vùng gốc của IANA bao gồm các máy chủ whois, cùng với các thông tin khác cho TLD. (Nó ở gần cuối mục nhập của TLD.)
Matt Nordhoff

2

Trên OS X, công cụ whois dường như không được xây dựng với sự hỗ trợ /etc/whois.conf ( Giống như slackware? ). Cách dễ dàng để khắc phục điều này dường như là cài đặt whois "bị lừa" từ homebrew . Bạn có thể làm điều đó với

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

Bằng cách đó, nó sẽ sử dụng một danh sách cập nhật các máy chủ whois (Nhưng tôi chỉ thử nghiệm với các tên miền .so và .ninja).


Thật tốt khi biết điều này. Một lớp lót để cài đặt whoisCLI được cập nhật làbrew install homebrew/dupes/whois

1

Một cách là sử dụng TLD .whois-server.net làm máy chủ whois, ví dụ:

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

Các whois-server.net miền (chạy bằng CenterGate LLC, không có liên kết) chứa một-up-date hy vọng danh sách chuyển hướng DNS CNAME đến các máy chủ TLD whois chính thức, ví dụ như:

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

Trong hầu hết các trường hợp điều này hoạt động. Thậm chí còn có một cú pháp ngắn hơn (ít nhất là trong OSX) : whois -c mobi npr.mobi. Đáng buồn là nó không làm việc cho tất cả các lĩnh vực tại thời điểm viết ví dụwhois -c tube nic.tube
thde

1

Để cập nhật /etc/whois.conf, bạn có thể sử dụng tập lệnh như

/*
 * 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

Kho github khác này cung cấp dữ liệu tốt về máy chủ whois https://github.com/whois-server-list/whois-server-list


Chào mừng bạn đến với Siêu người dùng! Vui lòng trích dẫn các phần thiết yếu của câu trả lời từ (các) liên kết tham chiếu, vì câu trả lời có thể trở nên không hợp lệ nếu (các) trang được liên kết thay đổi.
DavidPostill

0

Giải pháp của tôi không tinh vi lắm. Tôi không thể tra cứu một TLD nào đó trong Debian Wheezy hoặc Squeeze, hoặc trong OS X El Capitan hoặc Snow Leopard. Tôi phát hiện ra rằng tôi có thể tra cứu TLD trong Debian Jessie. Trên các máy Debian, tôi chỉ cần lấy nguồn cho whois cho Jessie và xây dựng nó; làm việc tốt bây giờ Đối với OS X, tôi đã lấy phiên bản whois mới hơn thông qua MacPorts.


0

Tôi đã có cùng một phản hồi máy chủ có vấn đề với một trong những yêu cầu của tôi.

Trong trường hợp này, sử dụng công -atắc rất đơn giản và hoạt động rất tốt:

whois -a [your_request_here]

Từ man:

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

0

Hoặc, bạn chỉ có thể sử dụng một công cụ tốt hơn. Ví dụ: GNU jwhois tìm kiếm linh hoạt whoismáy chủ phù hợp trước, sau đó thực hiện tra cứu thực tế bằng máy chủ đó.

jwhois một máy khách Whois được cải tiến có khả năng chọn máy chủ Whois để truy vấn dựa trên tệp cấu hình linh hoạt bằng cách sử dụng các biểu thức thông thường hoặc khối CIDR

Đường dẫn GNU: https://ftp.gnu.org/gnu/jwhois/
Github one: https://github.com/jonasob/jwhois


Không hoạt động cho các TLD mới.
Paul

Trớ trêu thay, đây là lý do tại sao tôi không thể là người TLD mới. Vì một số lý do, công cụ này được cài đặt theo mặc định. Tôi đã cài đặt một trong những whois đơn giản và tôi đã có thể truy vấn các TLD mới, không cần hack.
Khát vọng Dev
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.