Многие люди не понимают концепции имени хоста и имени домена. Чтобы правильно их различать, необходимо хорошее понимание основ DNS или системы доменных имен. Это поможет администраторам сети спроектировать и защитить сеть своей организации наилучшим образом.
В следующих разделах мы рассмотрим концепцию доменного имени и имени хоста.
На заре Интернета (эпоха ARPANET) существовал файл с именем «hosts.txt», в котором были имена и IP-адреса всех компьютеров в сети. Этот файл поддерживался сайтом, с которого все остальные сетевые компьютеры получали обновления обо всех остальных компьютерах. Такой подход годился максимум для нескольких сотен компьютеров в сети. Было ясно, что размер файла «hosts.txt» со временем вырастет с добавлением дополнительных устройств в будущем. Таким образом, поддерживать этот файл стало бы практически неудобно. Это означало, что этот метод в конечном итоге не выживает. Конфликт имени хоста был другой проблемой при сохранении этого огромного файла. Чтобы преодолеть эти проблемы, в 1983 году была введена DNS (система доменных имен). Когда хост хочет подключиться к другому хосту в сети, используя имя хоста, DNS сопоставляет имя хоста с его IP-адресом. Помимо преобразования имени хоста в IP-адрес, DNS выполняет множество других операций.
DNS использует систему распределенных баз данных и иерархическую схему для управления ими. Иерархия DNS на самом деле представляет собой перевернутую древовидную структуру, вершина которой называется корневым доменом. Корневой домен далее делится на домены верхнего уровня, такие как .com, .net, .edu, .org и т. д. Домен верхнего уровня может быть дополнительно разделен на категории стран и универсальных доменов.
Домены страны – это двухбитовые коды, которые представляют каждую страну в мире. Например, .jp используется для обозначения Японии, .uk для Соединенного Королевства и т. д. Общие домены в основном представляют собой трех или более символьные TLD. Кроме того, TLD может содержать много доменов второго уровня, затем домены второго уровня могут включать больше доменов третьего уровня и так далее. Эти домены разделены точкой или точкой. Например, contact.amazon.com, support.amazon.com имеют «.com» в качестве TLD, «amazon» – это домен второго уровня, «contact» и «support» – это домены третьего уровня.
Управление доменами верхнего уровня, такими как присвоение имен, регулируется ICANN (Интернет-корпорация по присвоению имен и номеров). Домены второго уровня распределяются регистраторами, назначенными ICANN. Чтобы получить новое доменное имя, например, с TLD .com, перейдите к соответствующему регистратору «.com» и проверьте, доступен ли домен второго уровня или просто доменное имя. Вы можете зарегистрировать новый и уникальный домен, заплатив небольшую плату или бесплатно в случае некоторых TLD (.tk, .ml и т. д.).
Есть два типа доменных имен: абсолютные и относительные. Абсолютные домены – это те, которые заканчиваются обозначением точки, например «cs.mit.edu.». Относительные домены не заканчиваются точкой.
Домены именуются снизу вверх, охватывая все объекты от самого домена до корня. Обычно они интерпретируются слева направо, причем левая сущность является наиболее конкретной, а правая – наименее конкретной.
Доменные имена можно использовать с любым регистром, поскольку они нечувствительны к регистру. Переход на GOOGLE.COM эквивалентен переходу на google.com. Доменные имена должны начинаться с буквенной буквы, но могут заканчиваться символом или цифрой. Между этими двумя концами он может содержать дефисы. Длина доменного имени не должна превышать 63 символа.
Термины FQDN и Hostname используются по-разному в тексте, но основное значение остается тем же. Полное доменное имя и имя хоста используются взаимозаменяемо, тогда как считается, что полное доменное имя состоит из имени домена и имени хоста отдельно. Однако в обеих терминологиях существует уникальное имя хоста (с включенным доменным именем) или полное доменное имя (FQDN) для каждого хоста в Интернете.
Имена хостов (включая доменные имена) для конечных систем основаны на иерархии DNS организации. В качестве примера рассмотрим хост-машину host1 в домене cs.mit.edu. Полное доменное имя или имя хоста для этого хоста будет «host1.cs.mit.edu», которое будет уникальным в Интернете. Таким же образом, если это веб-URL, например www.mit.edu, мы можем интерпретировать «www» как имя хоста и «mit.edu» как имя домена.
Полное доменное имя или полное доменное имя абсолютно однозначно, так как оно должно быть уникальным для каждого хоста в Интернете. Лучшая практика для именования хостов (без имени домена) в сети – использовать разные идентификаторы для каждого из них. Однако локальное имя хоста (или имя хоста без полной информации о домене) не обязательно должно быть уникальным, но этот подход может вызвать ошибки, такие как проблемы с сетевым подключением.
Обычно у хоста только одно имя хоста, но он может принимать несколько имен хоста. Файл локального хоста может использоваться для разрешения IP-адресов или имен хостов на локальном компьютере. При разрешении имени хоста сначала проверяется содержимое файла «/etc/hosts». Если запись для имени хоста не найдена здесь, заглушка использует DNS-сервер имен.
Статическое имя хоста может быть указано в файле «/etc/hostname » в системе Linux. Используя утилиту hostnamectl, мы можем просмотреть полное доменное имя системы и также изменить этот файл.
Сетевые администраторы должны хорошо разбираться в правильной настройке доменного имени и имени хоста. Это поможет им в устранении многих сетевых проблем в сети их организации. Что вы можете сделать дальше, так это изучить различные инструменты для системного и сетевого мониторинга.