- Как использовать команду whois в Linux
- Система Whois
- Установка Whois
- Использование whois с доменным именем
- Использование whois с IP-адресом
- Использование whois в скрипте
- Удобство и автоматизация
- Найти hostname из IP Linux
- Метод 1: Ping
- Метод 2: команда хоста
- Серверы Linux. Часть III. Сервер DNS
- Глава 4. Вводная информация о серверах DNS
- 4.1. О протоколе DNS
- 4.2. Пространство имен DNS
Как использовать команду whois в Linux
Поиск в Whois расскажет вам много информации о том, кто владеет интернет-доменом. В Linux вы можете запустить поиск whois из командной строки. Мы проведем вас через это.
Система Whois
Система whois представляет собой список записей, которые содержат сведения как о владельцах доменов, так и о владельцах. Интернет-корпорация по присвоению имен и номеров (ICANN) регулирует регистрацию доменного имени и право собственности, но список записей проводится многими компаниями, известными как реестры.
Любой может запросить список записей. Когда вы это сделаете, один из реестров обработает ваш запрос и отправит вам данные из соответствующей записи whois.
Прежде чем идти дальше, важно, чтобы вы ознакомились со следующими терминами:
- Реестр: компания, которая управляет списком, содержащим набор доменных имен (их много).
- Регистрант: законный владелец домена; это зарегистрировано для этого человека.
- Регистратор. Регистрант использует регистратора для своей регистрации.
Запись Whois содержит всю контактную информацию, связанную с лицом, компанией или другим лицом, зарегистрировавшим доменное имя. Некоторые регистрации содержат больше информации, чем другие, а некоторые реестры возвращают различное количество информации.
Типичная запись whois будет содержать следующую информацию:
- The name and contact information of the registrant: владелец домена.
- The name and contact information of the registrar: организация, которая зарегистрировала доменное имя.
- The registration date: дата регистрации домена.
- When the information was last updated: дата последнего обновления информации о домене.
- The expiration date: дата освобождения домена.
Вы можете делать запросы whois в Интернете, но с помощью whoisкоманды Linux вы можете выполнять поиск прямо из командной строки. Это полезно, если вам нужно выполнить поиск с компьютера без графического интерфейса пользователя или если вы хотите сделать это из сценария оболочки.
Установка Whois
Команда whoisуже была установлена в Ubuntu 20.04. Если вам нужно установить его в вашей версии Ubuntu, вы можете сделать это с помощью следующей команды:
На Fedora используйте команду ниже:
И, наконец, на Манджаро введите следующее:
Использование whois с доменным именем
Вы можете использовать whoisкоманду с доменными именами или Internet Protocol (IP) адреса. Для каждого из них возвращается немного другой набор информации.
Мы будем использовать доменное имя для нашего первого примера:
Ответ из реестра whois начинается со сводки, а затем повторяется с добавлением дополнительной информации. Ниже приведен пример с удаленными заявлениями о товарных знаках и условиями использования:
Это достаточно понятно. Мы видим различные сведения о регистраторе и реестре, в том числе контактные данные, даты регистрации и т. Д. В списке есть несколько записей, которые вы можете не распознать.
Управление по присвоению номеров в Интернете (IANA) контролирует и координирует такие вещи, как зоны системы доменных имен верхнего уровня, системы адресации по протоколу IP и список реестров. Этот реестр имеет номер 299, который указан в списке как «IANA ID: 299.»
Строки «Статус домена» показывают состояние, в котором находится домен, и он может быть в нескольких одновременно. Состояния определены в расширяемом протоколе обеспечения. Некоторые из них встречаются редко, а другие ограничены определенными ситуациями, такими как правовые споры.
Следующие государства прикреплены к этой регистрации:
- clientTransferProhibited: Реестр домена будет отклонять запросы на передачу домена от текущего регистратора к другому.
- serverDeleteProhibited: домен не может быть удален.
- serverTransferProhibited: домен не может быть передан другому регистратору.
- serverUpdateProhibited: домен не может быть обновлен
Последние три обычно активируются по запросу владельца регистрации или в случае судебного разбирательства. В этом случае CNN, вероятно, потребовал, чтобы они были принудительно «заблокированы» доменом компании.
«DNSSEC» означает «Расширения безопасности системы доменных имен» , схему, которая позволяет распознавателю DNS-имен криптографически проверять, что данные, полученные из зоны DNS, действительны и не были подделаны.
Более длинная часть ответа показана ниже:
Это дает нам более или менее ту же информацию, что и резюме, с дополнительными разделами о регистранте и его контактных данных для административных и технических целей.
Имя регистранта называется «Менеджер доменных имен». Иногда за определенную плату компании предпочитают, чтобы их регистратор регистрировал домен от своего имени под общим именем, которое регистратор поддерживает для этой цели. Это, кажется, имеет место здесь. Однако, поскольку адрес регистранта — «1 Центр CCN», очевидно, кто является регистрантом.
Использование whois с IP-адресом
Использовать whoisс IP-адресом так же просто, как использовать его с доменным именем. Просто укажите IP-адрес после whois, вот так:
Это результат, возвращаемый whois:
Первый раздел содержит информацию об организации, которой принадлежит искомый IP-адрес (в данном случае один из многих, принадлежащих Amazon). Мы также получили некоторые идентификаторы, используемые для внутренней идентификации Amazon.com, Inc. в реестре.
Второй раздел содержит адрес и имя владельца регистрации, Amazon.com, Inc. Веб-адрес в поле «Ref:» содержит эту информацию в формате JavaScript Object Notation (JSON).
Другие разделы содержат контактную информацию, которая позволяет сообщать о проблемах, связанных со злоупотреблениями, работой сети, маршрутизацией трафика и т. Д.
Использование whois в скрипте
Чтобы использовать whois в скрипте, давайте предположим, что у нас есть набор доменов, для которых нам нужно проверить даты истечения срока действия. Мы можем сделать это с помощью небольшого сценария оболочки.
Введите это в редактор и сохраните как «get-expiry.sh»:
Установите для сценария разрешения на выполнение с помощью chmodкоманды, как показано ниже:
Запустите скрипт, назвав его по имени:
Срок годности для каждого домена извлекается из ответа из whoisиспользуя grepдля поиска строк , которые содержат строку «Действительно,» и используя awk для печати пятого элемента из этой строки.
Удобство и автоматизация
Да, вы также можете выполнять поиск в Интернете. Однако наличие whoisкоманды в окне терминала и сценариях обеспечивает удобство, гибкость и дает возможность автоматизировать некоторые из ваших рабочих нагрузок.
Источник
Найти hostname из IP Linux
Имена или ярлыки полезны, поскольку они позволяют нам отличить одну вещь или одного человека от другого. Даже имя человека, которое может не быть уникальным в глобальном масштабе, содержит набор символов, которые позволяют человеку отличаться от другого человека.
Точно так же компьютеры поддерживают метки или имена, которые помогают придать им уникальную идентичность в сети. Вот здесь и появляется имя хоста. Имя хоста — это набор буквенно-цифровых символов, уникальных для компьютерной сети, позволяющий устройствам связываться друг с другом.
Как правило, базовая технология, которая идентифицирует компьютер или устройство в сети, представляет собой набор чисел, известных как IP-адреса. Затем они сопоставляются с определенным именем, преобразованным в IP-адрес машины.
Однако в этом руководстве я покажу вам различные способы, которые вы можете использовать для получения имени хоста, связанного с определенным IP-адресом. Методы, обсуждаемые в этом руководстве, будут работать почти во всех Linux и Unix-подобных системах.
Разобравшись с этим, давайте погрузимся.
Метод 1: Ping
Самый простой способ получить имя хоста с IP-адреса — использовать команду ping. Ping — это простая, но мощная утилита командной строки, которая использует пакеты ECHO для связи с хостом.
ПРИМЕЧАНИЕ. Следующая команда работает только на компьютерах с Windows. Для Linux проверьте следующий метод.
Чтобы получить имя хоста с IP-адреса с помощью команды ping, используйте команду ниже:
Вот результат выполнения вышеуказанной команды:
Приведенная выше команда не всегда надежна; это часто работает только в том случае, если имя хоста доступно в файле hosts.
Метод 2: команда хоста
Второй и распространенный метод получения имени хоста из IP-адреса в Linux — это команда host. Этот простой инструмент является частью пакета dnsutil.
Источник
Серверы Linux. Часть III. Сервер DNS
Глава 4. Вводная информация о серверах DNS
Сервер DNS является фундаментальной частью каждой компьютерной сети большого масштаба. Протокол DNS используется многими сетевыми службами для преобразования доменных имен в сетевые адреса, а также для поиска служб в сети (по доменным именам).
Каждый раз при посещении веб-сайта, отправке сообщения электронной почты, входе в домен Active Directory, игре в Minecraft, переписке в сетевом чате или использовании технологии VoIP осуществляется отправка одного (или множества) запросов серверу DNS .
В случае отказа администрируемого вами сервера DNS будет нарушена работоспособность всей внутренней сети вашей организации (конечно же, в том случае, если вы не задавали сетевые адреса для всех устройств вручную).
В процессе знакомства с протоколом разрешения доменных имен вы убедитесь в том, что даже крупные организации получают выгоду от работы с единой инфраструктурой сервисов DNS . Следовательно, протокол DNS предъявляет требование, заключающееся в объединении сетевой инфраструктуры всех подразделений организации.
Даже в домашних условиях вы можете столкнуться с модемами и маршрутизаторами, в большей части которых реализована поддержка протокола DNS .
В данном разделе даются пояснения относительно принципа работы серверов DNS , а также процесса настройки сервера bind9 при работе с дистрибутивом Linux .
4.1. О протоколе DNS
4.1.1. Преобразование доменного имени в IP-адрес
Система доменных имен ( Domain Name System или DNS ) является сетевой службой, работающей со стеком протоколов TCP/IP и позволяющей клиентам преобразовывать доменные имена в IP-адреса. На самом деле с помощью аббревиатуры DNS обозначается инфраструктура гораздо большего масштаба, но на данный момент благоразумнее рассмотреть упрощенный вариант.
При использовании веб-браузера для посещения веб-сайта вы вводите строку URL веб-сайта в его адресную строку. Но для того, чтобы ваш компьютер смог начать взаимодействие с веб-сервером, на котором расположен необходимый вам веб-сайт, ему потребуется IP-адрес этого веб-сервера. Это именно тот момент, когда используется сервер DNS .
При работе со сниффером Wireshark вы можете использовать фильтр dns для перехвата соответствующего трафика.
4.1.2. История создания протокола DNS
В семидесятые годы к сети Интернет было подключено всего несколько сотен компьютеров. Для разрешения доменных имен на каждом из этих компьютеров использовался текстовый файл, содержащий таблицу из доменных имен и соответствующих им IP-адресов. Этот локальный файл являлся копией файла hosts.txt , расположенного на FTP-сервере Университета Стэнфорда.
В 1984 году Paul Mockapetris создал систему DNS , являющуюся распределенной древовидной иерархической базой данных, которая будет подробно описываться в нескольких главах данной книги.
На сегодняшний день система доменных имен ( Domain Name System или DNS ) является общемировой распределенной иерархической базой данных, находящейся под контролем организации ICANN . Ее главная функция заключается в преобразовании доменных имен в IP-адреса и указании на серверы в сети Интернет, предоставляющие сервисы SMTP и LDAP .
Старый файл hosts.txt по прежнему активно используется в большинстве операционных систем под именем /etc/hosts (или C:/Windows/System32/Drivers/etc/hosts). Далее мы вернемся к рассмотрению этого файла, а также его влияния на процесс разрешения доменных имен.
4.1.3. Прямой и обратный запросы
Вопрос, задаваемый клиентом серверу DNS, называется запросом (DNS query). В ситуации, когда клиент запрашивает IP-адрес узла говорят о прямом запросе DNS (forward lookup query, как было показано на предыдущей иллюстрации).
Противоположный по смыслу запрос доменного имени узла называется обратным запросом DNS (reverse lookup query).
Ниже приведена иллюстрация обратного запроса DNS .
А это пример осуществления обратного запроса DNS с помощью утилиты nslookup .
В случае использования сниффера tcpdump обратный запрос DNS будет выглядеть аналогичным образом.
А ниже приведен результат перехвата данного запроса с помощью сниффера wireshark (учтите, что данный снимок окна приложения был сделан довольно давно).
4.1.4. Файл /etc/resolv.conf
Клиентский компьютер должен обладать информацией об IP-адресе сервера DNS для того, чтобы иметь возможность передавать запросы этому серверу. Данный адрес либо передается сервером DHCP , либо вводится вручную администратором системы.
Клиентские системы Linux хранят упомянутую информацию в файле /etc/resolv.conf .
Вы можете вручную осуществить модификацию IP-адреса с пометкой nameserver для использования другого сервера DNS . Например, компания Google предоставляет доступ к публичному серверу DNS с IP-адресами 8.8.8.8 и 8.8.4.4.
Обратите внимание на то, что при использовании клиента DHCP данные IP-адреса могут быть перезаписаны в процессе обновления базы данных адресов DHCP ( DHCP lease ).
4.2. Пространство имен DNS
Пространство имен DNS является иерархической древовидной структурой с корневыми серверами ( root-servers или dot-servers ) на вершине. Корневые серверы обычно обозначаются с помощью точки.
Далее мы будем говорить не о корневых серверах , а о доменах верхнего уровня ( Top Level Domains или TLDs ).
Существует гораздо большее количество доменов верхнего уровня , нежели показано на иллюстрации. На данный момент около 200 стран имеют домены верхнего уровня . Кроме того, существует множество доменов верхнего уровня общего назначения, таких, как .com, .edu, .org, .gov, .net, .mil, .int, а также сравнительно недавно введенных в строй .aero, .info, .museum,
4.2.2. Корневые серверы
В рамках сети Интернет существует тринадцать корневых серверов DNS , которые носят имена от A до M . Журналисты обычно называют эти серверы основными серверами сети Интернет , так как в том случае, если они выйдут из строя, никто не сможет использовать доменные имена для соединения с серверами, на которых расположены веб-сайты.
Корневые серверы не расположены на тринадцати физических машинах, они распределены по гораздо большему количеству машин. К примеру, корневой сервер с именем F распределен по 46 физическим машинам, которые функционируют как одна машина благодаря осуществлению произвольной передачи данных (anycast).
4.2.3. Данные для поиска корневых серверов
В комплект поставки каждого сервера DNS включается файл с данными для поиска корневых серверов ( root hints ), который предназначен для поиска корневых серверов DNS .
В данном примере показан небольшой фрагмент файла с данными поиска корневых серверов из комплекта поставки сервера DNS bind 9.8.4 .
На следующем уровне древовидной структуры после доменов верхнего уровня располагаются обычные домены . Домены могут иметь субдомены (также называемые дочерними доменами).
На иллюстрации показаны такие домены системы доменных имен DNS , как google.com, chess.com, linux-training,be (при этом не стоит забывать о существовании миллионов других доменов).
Домены системы доменных имен DNS регистрируются на серверах, обслуживающих домены верхнего уровня , а домены верхнего уровня — на корневых серверах .
4.2.5. Домены верхнего уровня
На уровне древовидной структуры ниже корневых доменов расположены домены верхнего уровня ( Top Level Domains или TLDs ). Изначально было зарегистрировано лишь семь таких доменов:
Таблица 4.1. Первые домены верхнего уровня
Год регистрации | Домен верхнего уровня | Назначение |
---|---|---|
1985 | .arpa | Домен для обработки обратных запросов DNS с использованием специального домена in-addr.arpa |
1985 | .com | Домен для коммерческих организаций |
1985 | .edu | Домен для образовательных учреждений США |
1985 | .gov | Домен для правительственных учреждений США |
1985 | .mil | Домен министерства обороны США |
1985 | .net | Домен для интернет-провайдеров и организаций, обслуживающих инфраструктуру сети Интернет |
1985 | .org | Домен для некоммерческих организаций |
1985 | .int | Домен для международных организаций, таких, как NATO (nato.int) |
Домены верхнего уровня отдельных стран регистрировались в разное время, например, домен .uk для Великобритании был зарегистрирован в 1985 году (да, это было именно так), домен .be для Бельгии — 1988 году, а домен . fr для Франции — в 1986 году. Обратитесь к стандарту RFC 1591 для получения дополнительной информации.
В 1998 году было выбрано семь новых доменов верхнего уровня , которые стали активны лишь в 21 веке.
Таблица 4.2. Новые домены верхнего уровня общего назначения
Год регистрации | Домен верхнего уровня | Назначение |
---|---|---|
2002 | .aero | Домен для ресурсов, связанных с авиацией |
2001 | .biz | Домен для ресурсов, связанных с бизнесом |
2001 | .coop | Домен для ресурсов, связанных с кооперацией |
2001 | .info | Домен для информационных ресурсов |
2001 | .museum | Домен для ресурсов музеев |
2001 | .name | Домен для ресурсов, связанных с любыми видами имен, псевдонимов и названий. |
2004 | .pro | Домен для ресурсов квалифицированных специалистов |
Многие администраторы ресурсов были удивлены выбором доменов верхнего уровня и заявили о том, что этим доменам достаточно сложно найти применение и они хотели бы использовать отдельный домен .xxx для размещения ресурсов для взрослых (был представлен в 2011 году), а также домен .kidz для ресурсов с информацией о детях, от которых отказались родители. В то же время были зарегистрированы еще более бесполезные домены верхнего уровня , такие, как .travel (для ресурсов агентств путешествий), .tel (для ресурсов, связанных с интернет-коммуникациями) и .jobs (для ресурсов по поиску работы).
В 2012 году организация ICANN опубликовала список из 2000 новых доменов верхнего уровня , которые будут постепенно регистрироваться.
4.2.6. Полностью определенное доменное имя
Полностью определенное доменное имя ( Fully Qualified Domain Name или FQDN ) является комбинацией из имени узла машины и соответствующего доменного имени .
Например, в том случае, если система носит имя gwen и использует домен linux-training.be , полностью определенным доменным именем системы будет gwen.linux-training.be .
В системах Linux вы можете использовать утилиты hostname и dnsdomainname для проверки данной информации.
Зона DNS (или зона ответственности DNS ) является частью древовидной структуры DNS, которая охватывает одно доменное имя или одно дочернее доменное имя. На иллюстрации ниже зоны DNS отображены с помощью голубых овалов. Некоторые зоны DNS поддерживают возможность делегирования функций управления дочерними доменными именами другим зонам DNS.
Сервер DNS может иметь полномочия по управлению 0, 1 или большим количеством зон DNS . Позднее мы рассмотрим некоторые другие аспекты взаимодействия между сервером DNS и зоной DNS .
Зона DNS состоит из записей , которые также называют ресурсными записями . В следующем разделе мы рассмотрим некоторые из упомянутых ресурсных записей .
4.2.7. Ресурсные записи DNS
Запись A , которая также называется записью узла ( host record ) содержит IP-адрес компьютера в формате IPv4. В момент, когда клиент DNS отправляет серверу DNS запрос данных записи A, сервер DNS осуществляет преобразование переданного с запросом доменного имени в IP-адрес. Запись AAAA аналогична рассматриваемой записи, но содержит IP-адрес формата IPv6, а не IPv4.
Запись PTR является полной противоположностью записи A. Она содержит имя компьютера и может использоваться для преобразования IP-адреса в имя узла.
Запись NS или запись сервера имен ( nameserver record ) является записью, которая указывает на сервер имен DNS (обслуживающий данную зону DNS). Вы можете получить список всех серверов имен для вашей зоны DNS, получив данные отдельных записей NS.
Связующая запись A
Запись A, которая устанавливает соответствие между именем записи NS и IP-адресом называется связующей записью .
Запись SOA зоны DNS содержит метаданные, относящиеся к самой зоне DNS. Записи SOA подробно описаны в разделе, посвященном передачам данных зон DNS. В каждой из зон DNS существует ровно по одной записи SOA.
Запись CNAME устанавливает соответствие между двумя именами узлов, позволяя создать новый псевдоним для существующего имени узла. В качестве имени почтового сервера обычно используются имена mail и smtp , а в качестве имени веб-сервера — www .
Запись MX указывает на сервер SMTP . При отправке сообщения электронной почты по адресу в другом домене, вашему почтовому серверу потребуется запись MX почтового сервера из целевого домена.
Источник