Как получить новые TLD?


46

Как я могу искать новые TLD, такие как .email, .guru и т. Д., Используя whoisкоманду в linux?

Запуск whoisпо новому TLD только дает ответ:

No whois server is known for this kind of object.

Ответы:


43

Вы можете вручную настроить whois-серверы для новых TLD.

Просто создайте файл /etc/whois.confи добавьте следующий контент, и вы сможете искать новые TLD:

whois.conf (Github Mirror: whois.conf )

Whois.conf использует регулярные выражения .


1
Вау, спасибо! Можете ли вы сказать мне, из какого источника вы получаете эту информацию? Я предполагаю, что этот список со временем станет устаревшим.
— Пол

2
Я написал сценарий сбора серверов WHOIS по последним данным IANA и обновил этот ответ.
— Ройс Уильямс

2
Разные версии whois имеют разные снимки серверов whois, поэтому разные люди могут нуждаться в разных списках - особенно если они по какой-то причине застряли в более старом дистрибутиве. Использование всего списка каждый раз заставляет его работать для всех. Кроме того, гораздо проще просто собрать их все. :-)
— Ройс Уильямс

1
@ TomBrossman Я не совсем уверен, почему это так, и я не стал вдаваться в подробности, кроме как выяснить, что это как-то связано с поиском, не идущим на уровень регистратора. Если вы используете инструмент gwhois.org из одного из приведенных ниже ответов, вы увидите, что это показано гораздо лучше.
— Пол

3
@ TomBrossman Правильно. Существуют разные серверы Whois для доменов .com. Возможно, все это можно ввести в whois.conf. Возможно, самый простой способ - просто удалить запись .com.
— thde

14

Вы можете легко получить нужный сервер Whois напрямую из IANA без редактирования дополнительных файлов или таблиц.

Пример для домена .de

Linux, OSX (и совместимый):

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

Веселиться


Я бы хотел, чтобы за ваш ответ проголосовали гораздо больше; это идеальное и правильное обобщенное решение. Нет необходимости в жестком кодировании (в противном случае каждая ОС должна будет жестко кодировать серверы WHOIS для каждого нового TLD!). Почему это не стандартное поведение для whoisутилиты, я не уверен (может быть, чтобы уменьшить нагрузку?). Во всяком случае, реквизит и спасибо.
— Апинштейн

2
Запрос домен будет работать , как это , используя вашу идею: whois -h $(whois -h whois.iana.org .TLD | grep '^whois:' | sed 's/whois:\s*//') example.TLD. Интересно, что достаточно использовать whois.nic.TLDв качестве хоста базы данных для большинства (или, может быть, всех?) Доменов верхнего уровня, как указал @Andrew.
— Петерино,

Кажется, это не работает для всех TLD. Для .tubeответственного сервера не опубликовано. Возможно потому что IANA-сервер отвечает как whois -h whois.iana.org nic.tubeработает.
— thde

11

Большинство клиентов whois жестко кодируют серверы TLD, вместо того, чтобы активно извлекать сервер whois из IANA при выполнении для TLD, который еще не известен клиенту.

Я создал свой собственный онлайн-инструмент поиска whois, который вы можете использовать по адресу http://gwhois.org/, который поддерживает все TLD и IP-адреса, поскольку все поиски начинаются с IANA, а затем при необходимости переходят к реестру и регистратору.

Я также потратил много времени на создание интеллектуального парсера whois, который отображает данные whois в удобной для пользователя форме.

Пример скриншотов:

Скриншот

скриншот 2


Спасибо за это, так как я не запускаю Ruby, этот ответ будет работать лучше для меня. Я запускаю Ubuntu Server 12.04, и похоже, что gwhoisпакет требует установки 25 дополнительных пакетов из официального репозитория. Не то чтобы я пропустил ~ 4,4 МБ памяти, все ли это действительно необходимо для корректной работы пакета?
— Пол

Ой. Gwhois.org не связан с пакетами gwhois в Linux. Извините за путаницу
— iglvzx

Хорошо, это может работать, но нет инструмента командной строки? Я надеюсь как-то решить проблему с командной строкой.
— Пол

1
Да уж. Основная причина, по которой я решил создать свой собственный инструмент whois, заключалась в том, что я не был удовлетворен какими-либо решениями, уже существующими. :)
— iglvzx

2
@iglvzx Мне нравится твой инструмент. Задумывались ли вы об открытом коде, чтобы мы могли активно вносить изменения в приложение?
— Дэвид Оквий

11

Похоже, это работает для большинства новых tlds:

Имя хоста сервера имеет вид: 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
— Петерино

1
Знаете ли вы о каких-либо других серверах whois, которые принимают расширение TLD для запроса этого TLD? Я знаю о двух: whois.nic.$extи $ext.whois-servers.net- я ищу других, чтобы добавить в мой список.
— Чови

5

Если вы используете стандартный клиент linux, определения еще не были обновлены, чтобы включить новый TLDS.

У вас есть два возможных решения:

  1. Соберите список всех новых рДВУ и передайте хост whois в качестве параметра клиенту whois
  2. Используйте альтернативный клиент. В настоящее время я прилагаю все усилия, чтобы синхронизировать клиент Ruby WHOIS с новыми gTLD, чтобы вы могли его использовать. Он также предлагает CLI.

Я не уверен, где взять список всех новых рДВУ, и я не уверен, как передать хост whois в качестве параметра клиенту whois. У меня не установлен Ruby на моем сервере. Это не хороший ответ.
— Пол

Здесь находится список Симоны из WhoIs хостов для ДВОЙ, здесь есть копия WhoIs страницы человека.
— Келли Томас

База данных корневой зоны IANA включает в себя серверы whois, а также другую информацию о TLD. (Это около нижней части записи ДВУ.)
— Мэтт Нордхофф

2

В OS X инструмент whois, по-видимому, не создан с поддержкой /etc/whois.conf ( как slackware? ). Кажется, что простой способ исправить это - установить «одураченный» whois из homebrew . Вы можете сделать это с

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

Таким образом, он будет использовать обновленный список серверов whois (но я тестировал только с доменами .so и .ninja).


Приятно это знать. Один вкладыш для установки обновленного whoisCLIbrew install homebrew/dupes/whois

1

Одним из способов является использование TLD .whois-servers.net в качестве сервера whois, например:

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

Whois-server.net домен (управляемый CenterGate LLC, не принадлежность) содержит список , надеюсь , уточненные в DNS CNAME перенаправляет на официальные сервера TLD WhoIs, например:

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


Добро пожаловать в Супер пользователя! Пожалуйста, процитируйте основные части ответа по ссылочной ссылке (ссылкам), так как ответ может стать недействительным, если связанные страницы изменятся.
— ДэвидПостилл

0

Мое решение было не очень сложным. Я не мог найти определенный TLD под Debian Wheezy или Squeeze, или в OS X El Capitan или Snow Leopard. Я узнал, что могу посмотреть TLD в Debian Jessie. На машинах Debian я просто взял источник для whois для Джесси и собрал его; сейчас работает нормально. Для OS X я взял более новую версию whois через MacPorts.


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, способный выбирать сервер Whois для запроса на основе гибкого файла конфигурации с использованием блоков регулярных выражений или блоков CIDR.

Путь GNU: https://ftp.gnu.org/gnu/jwhois/
Github one: https://github.com/jonasob/jwhois


Не работает для новых TLD.
— Пол

По иронии судьбы, это было причиной, по которой я не смог узнать, кто такие новые TLD. По какой-то причине этот инструмент был установлен по умолчанию. Я установил один из простых whois и смог запросить новые TLD, без необходимости взлома.
— Стремясь Dev
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.