Как использовать командную строку whois для «зараженных спамом» доменов, таких как apple.com?

14653
Arjan

Вкратце: есть ли способ получить полные whoisдетали для доменов, например apple.com, используя командную строку в Max OS X?

whoisНапример, запуск в командной строке apple.comаналогичен поиску всех доменов, содержащих эту фразу. Так вот, благодаря whois-spam, на Mac или FreeBSD можно получить следующее:

$ whois apple.com  Whois Server версии 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 APPLE.COM  Чтобы выделить одну запись, найдите ее с «xxx», где xxx является одним из из записей, показанных выше. Если записи совпадают, посмотрите их с "= xxx", чтобы получить полное отображение для каждой записи. 

Чтобы получить некоторую дополнительную информацию для всех этих областей, то я могу выполнить команду для =apple.com, как:

$ whois = apple.com  Whois Server версии 2.0 [..] Имя сервера: APPLE.COM.WWW.BEYONDWHOIS.COM IP-адрес: 203.36.226.2 Регистратор: TUCOWS INC. Whois сервер: whois.tucows.com Реферальный URL: http://domainhelp.opensrs.net [..] Доменное имя: APPLE.COM Регистратор: МАРКМОНИТОР ИНК. Сервер Whois: whois.markmonitor.com Реферальный URL: http://www.markmonitor.com Сервер имен: NSERVER.APPLE.COM Сервер имен: NSERVER.ASIA.APPLE.COM [..] Дата обновления: 21 января 2009 г. Дата создания: 19 февраля 1987 Срок годности: 20 февраля 2011 

Тем не менее, это не дает мне полную запись, как тот, который включает в себя контактную информацию:

$ whois -h whois.markmonitor.com apple.com [..] Административный контакт: Apple Inc. Apple Inc. 1 бесконечный цикл Купертино CA 95014 НАС [..] 

(В Redhat Linux jwhoisпоказывается только, apple.comно без контактной информации; в Debian whoisверсии 4.7.20 выдается сводка по всем доменам, как указано выше, и дополнительная подробная информация о точно подобранном домене, по-видимому, путем выполнения дополнительного запроса в whois.markmonitor.comэтом точном совпадении.)

Я даже пытался напрямую подключиться к telnet, но не смог придумать ничего, что не смог бы сделать с помощью команды whois-com, так что, думаю, это бесполезно:

$ telnet com.whois-servers.net 43 Попытка 199.7.55.74 ... Подключен к whois.verisign-grs.com. Escape-символ '^]'.  apple.com [..]

Итак: есть ли более простой способ получить полную информацию о таком домене (только для точно подобранного домена), используя командную строку?

(Думая, что командная строка whoisскоро будет запрещена в пользу веб-интерфейсов с поддержкой капчи, это меня никогда не беспокоило. Но, тем не менее, мне любопытно ...)

27
Когда я использую свой собственный, зарегистрированный Godaddy.com домен, например, whois mydomain.com, он возвращает то, что выглядит как полный набор регистрационных данных. Это заставило меня задуматься: «Интересно, что такого особенного в apple.com?» Danny Whitt 14 лет назад 0
Строка запроса "apple.com" также соответствует всем доменам, которые были зарегистрированы для спама (просто чтобы показать, когда люди запускают `whois`), и, поскольку есть несколько совпадений, не будет получена вся информация. (Командная строка `whois microsoft.com` также покажет вам, как некоторые относятся к этой компании ...) Arjan 14 лет назад 3
Добро пожаловать, [все вы] (http://topsy.com/superuser.com/questions/37954/how-to-use-command-line-whois-for-spam-infected-domains-like-apple-com) ! Не читайте только этот вопрос; просмотрите этот сайт и [семейство Stack Exchange] (http://stackexchange.com/), чтобы узнать больше ... Наслаждайтесь! Arjan 12 лет назад 2

2 ответа на вопрос

12
mark4o

Команда 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///'` "$@" } 

Однако это характерно для этих серверов Whois, поэтому не обязательно будет работать для доменов на других серверах Whois. Надежная реализация, вероятно, должна обладать знаниями о конкретных форматах запросов и вывода, используемых различными реализациями whois-серверов.

Ага, "домен"! Почему я не подумал о том, чтобы получить синтаксис для запросов к whois-серверу, запросив у сервера синтаксис? Запуск 'whois? `Показывает некоторую помощь, а запуск' whois help 'еще больше. (Эта справка взята из стандартного `com.whois-servers.net` и очень отличается от` man whois`. Другие серверы whois действительно могут использовать другой синтаксис.) ** Похоже, что `whois -h whois-servers .net apple.com` запускает «GeekTools Whois Proxy», который предоставляет полную информацию обо всех TLD ...? ** Arjan 14 лет назад 0
8
Arjan

Кажется, что (по крайней мере, в сентябре 2009 года) в следующем случае используется GeekTools Whois Proxy, который достаточно умен для определения, какой whois-сервер использовать. Это также работает для других доменов верхнего уровня, чем com, netи org:

whois -h whois-servers.net apple.com

Или, согласно очень давней подсказке на macosxhints.com:

whois -h geektools.com apple.com

Я обнаружил это случайно: интересно, как @ mark4o узнал о domainкоманде для ответа выше, в конце концов я обнаружил, что запуск whois helpдает мне вывод некоторого whois-сервера. Поскольку я не указал ни один ДВУ, я спросил себя, какой из них ответил. Я попытался telnet whois-servers.net 43, поэтому в основном использовал пустой домен, как упомянуто на страницах руководства:

-хозяин  Используйте указанный хост вместо варианта по умолчанию. Либо хозяин Имя или IP-адрес могут быть указаны.  По умолчанию whois создает имя сервера whois для использования из домен верхнего уровня (TLD) с указанным (единственным) аргументом и добавлением ".Whois-servers.net". Это эффективно позволяет подходящий сервер Whois быть выбранным автоматически для большого количества TLD.

И вот GeekTools Whois Proxy объявил о себе:

$ telnet whois-servers.net 43 Попытка 206.117.161.86 ... Подключен к whois-servers.net. Escape-символ '^]'. GeekTools Whois Proxy v5.0.4 Готов. Проверка доступа на 82.95.xx.xx ... ок.  apple.com  Проверка сервера [whois.crsnic.net]  Проверка сервера [whois.markmonitor.com] Результаты: [..]

(На самом деле, geektools.comв настоящее время это 206.117.161.84, так что это другой IP, чем whois-servers.net.)

`whois-servers.net`, похоже, больше не работает, однако, geektools.com`. Hay 8 лет назад 0