====== whois ======
~~Title: WHOIS информация о владельце домена, IP, AS ~~
* [[https://dieg.info|Whois сервис]]
* [[:epp|EPP]]
- протокол получение регистрационных данных, основан на XML.
* [[go>search?q=Регистратор доменных имён&btnI=lucky|Регистратор доменных имён]]
* [[:ddo_dns.pdf?media=ddo_dns.pdf|Диаграмма DNS]]
* [[http://nic.ru/whois/answers.html|Описание полей в информации Whois-сервиса]]
**WHOIS** - это сетевой протокол прикладного уровня (TCP порт 43). Описан в [[:rfc|RFC]] 3912. Архитектура «клиент-сервер». Служит для получения регистрационных данных о владельцах:
* доменных имён,
* IP- адресов (IPv4 and IPv6),
* автономных систем.
Базы данных WHOIS бывают централизованными и распределёнными. Распределённые БД позволяют регистраторам включать в записи произвольную информацию о своих клиентах.
* Централизованные: .org, .ru
* Распределённые: .com, .net
===== WHOIS кириллические домены Punycode =====
Протокол WHOIS создан без учета поддержки национальных языков (с кодировкой символов [[:ascii|ASCII]]), стандарт не регламентирует кодировку запросов клиента и ответа сервера. В случае использования доменных имен и зон на национальном языке (например, кириллица или китайские иероглифы) используется специальный алгоритм кодирования [[:punycode|Punycode]]. Для избежания конфликтов с уже зарегистрированными доменами использование латинских букв в них запрещено.
Чтобы можно было не менять инфраструктуру [[:dns|DNS]], было предложено преобразовывать имена, содержащих символы национальных алфавитов, в слова, состоящие только из допустимых ранее символов [[:ascii|ASCII]], причём делать это **в клиентских приложениях**. Таким образом, для поддержки [[:idn|IDN]] достаточно, чтобы их понимал браузер пользователя. Он должен уметь переводить их в символьную кодировку [[:punycode|Punycode]], позволяющую представить любые символы Unicode с помощью разрешённого ранее набор символов ASCII. Чтобы в таком представлении [[:idn|IDN]] нельзя было спутать с обычными доменными именами, они начинаются со специального префикса «xn–», например, «xn–abc.com» — IDN в Punycode-представлении, а «abc.com» — обычное доменное имя. Фактически интернационализованные доменные имена являются псевдонимами для имён начинающихся с «xn–».
Строка «xn–e1afmkfd.xn–80akhbyknj4f» демонстрирует Punycode- представление для реально существующего IDN «пример.испытание»: [[http://пример.испытание/|http://пример.испытание/]]. **В базах DNS- cерверов хранится только Punycode- представление**, а в браузере можно вводить как то, так и другое. В браузерах, не поддерживающих IDN, удастся использовать только Punycode- представления IDN.
Организация ICANN утвердила несколько национальных домен верхнего уровня:
* российский национальный кириллический домен верхнего уровня — [[go>search?q=.рф&btnI=lucky|.рф]] (punycode: .xn–p1ai; Российская Федерация)
* [[go>.укр|]] (punycode: xn–j1amh) 21 августа 2013 стал доступен первый сайт в доменной зоне .укр
===== Иерархия WHOIS серверов =====
- **Корневой домен** или домен нулевого уровня (англ. root domain) — домен самого верхнего уровня в любой системе доменных имён. Обслуживается [[http://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D1%80%D0%BD%D0%B5%D0%B2%D1%8B%D0%B5_%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D1%8B_DNS|корневыми серверами DNS]], которые располагаются в различных странах мира.
- **Домены первого уровня**. Информацию по доменам первого уровня [[:gtld|gTLD]], [[:cctld|ccTLD]], [[:idn|IDN]] (com, net, ru, ua и др) предоставляет [[http://www.iana.org|www.iana.org]].
===== Whois IP: как найти все ip адерса вашего провайдера =====
Пошаговая инструкция для нахождения всех IP вашего провайдера интернет (ISP).
$ whois -h
whois: ключ должен использоваться с аргументом -- «h»
Использование: whois [ПАРАМЕТР]... ОБЪЕКТ...
-l одноуровневый минимальный поиск [только RPSL]
-L найти всё при минимуме указанных совпадений
-m найти первый уровень при максимуме указанных совпадений
-M найти всё при максимуме указанных совпадений
-c найти наименьшее совпадение, содержащее атрибут mnt-irt
-x точное совпадение [только RPSL]
-d возвращать также реверсные делегированные объекты DNS [только RPSL]
-i АТР[,АТР]... выполнить инверсный поиск для указанных АТРибутов
-T ТИП[,ТИП]... поиск только объектов с типом ТИП
-K возвращать только основные ключи [только RPSL]
-r выключить рекурсивный просмотр контактной информации
-R всегда показывать локальную копию объекта домена даже
если она содержит перенаправление
-a искать во всех базах
-s ИСТОЧНИК[,ИСТОЧНИК]... искать в базе ИСТОЧНИКА
-g ИСТОЧНИК:ПЕРВЫЙ-ПОСЛЕДНИЙ найти обновления ИСТОЧНИКА от ПЕРВОГО до ПОСЛЕДНЕГО
-t ТИП запросить шаблон для объекта с типом ТИП ('all' для списка)
-v ТИП запросить расширенный шаблон для объекта с типом ТИП
-q [version|sources|types] запросить указанную информацию о сервере [только RPSL]
-F быстрый сырой вывод (включает также -r)
-h УЗЕЛ присоединиться к УЗЛУ
-p ПОРТ присоединиться к ПОРТУ
-H скрыть правовые оговорки
--verbose разъяснять, что происходит
--help показать эту справку и закончить работу
--version показать информацию о версии и закончить работу
Для того чтобы найти все IPs вашего провайдера, нужно знать ваш реальный IP (или один любой IP ISP). Далее
- По этому IP(например 82.117.234.77) находим origin (номер автономной системы)
$ whois -h whois.ripe.net 82.117.234.77
- Зная origin найдем все сети принадлежащие ему.
whois -h whois.ripe.net -i origin AS34248 | grep route
route: 82.117.224.0/19
route: 85.90.192.0/19
route: 85.90.192.0/23
route: 85.90.192.0/24
route: 85.90.193.0/24
...
уберем лишнее
whois -h whois.ripe.net -i origin AS34248 | grep route | awk '{print $2}'