DNS

Лекция

3 сетевых точки работы домена 📍

Регистратор

Хостинг DNS

Веб-хостинг

О независимости трех точек

Интересно во всей этой схеме то, что эти три сетевых точки часто обслуживаться у разных провайдеров и ими могут владеть разные люди. Например, вы можете владеть доменом, но не иметь доступа к веб-хостингу. Понимая это обстоятельство вы можете, например, разместить свой сайт на чужом домене, не давая владельцу домена доступа к коду. Или, наоборот, вы можете купить домен и разместить на нем не принадлежащий вам SaaS сервис типа Tilda или Medium.


Типы DNS-записей и их параметры ⛓

Обратите внимание, что значением записей A и AAAA может быть только IP-адрес, а не домен или его часть. Именно для обхода этого ограничения была создана запись CNAME.

Примеры записей

Тип записи Имя записи Значение Результат
A flagsoft.ru (или @) 95.217.16.92 Домен flagsoft.ru размещен на сервере с IP 95.217.16.92
A www.flagsoft.ru (или www) 95.217.16.92 Поддомен www домена flagsoft.ru размещен на том же ip
AAAA flagsoft.ru (или @) 2a01:4f9:c010:5ccf:: Домен flagsoft.ru размещен на сервере с IP 2a01:4f9:c010:5ccf::
MX flagsoft.ru или @ mx.yandex.net. Почтовые ящики вида info@flagsoft.ru обслуживаются Яндекс.Почтой
NS flagsoft.ru ns1.digitalocean.com. Домен делегирован на NS сервера Digital Ocean. Такая запись обычно размещается у регистратора домена
TXT flagsoft.ru google-site-verification=usZ... TXT-запись, которую мы прописали для домена flagsoft.ru, чтобы подтвердить, что это наш домен. У TXT-записей в значении может быть произвольный набор символов

Скорость применения изменений


IPv4 и IPv6

Пример IPv4: 95.217.16.92

Пример IPv6: 2a01:4f9:c010:5ccf:4f9:5ccf (2a01:4f9:c010:5ccf:: тоже валидный)

История

IP-адреса с начала интернета были IPv4. Затем, они стали кончаться. Для решения проблемы был создан стандарт IPv6. Согласно статистике Google на январь 2020 года, доля IPv6 в сетевом трафике составляла около 30 %.

Количество адресов

Общее возможное количество адресов IPv4 — 4,3 миллиарда (2^32).

Общее количество IPv6-адресов — 2^128. Теоретически для IPv6 доступны 340,282,366,920,938,463,463,374,607,431,768,211,456 адреса или 340 ундециллионов (это число 340, за которым следует 36 нолей).


Инструменты для анализа DNS 🛠

Узнать DNS-провайдера и регистратора

Менеджерам следует пользоваться сервисами https://www.cy-pr.com/ или https://www.nic.ru/whois/.

Консольная команда для разработчиков

whois domain.ru

Узнать все DNS-записи домена

Менеджерам для проверки DNS-записей можно воспользоваться онлайн-сервисом https://www.reg.ru/nettools/dig

Консольная команда для разработчиков

dig <website.ru> any

Узнать IP

Менеджеры могут посмотреть прямо через браузер. Это надежнее, чем онлайн-сервисы, потому что такой способ учитывает влияние файла hosts (о нем ниже).

Аналог для разработчиков

ping domain.ru

Боремся с кэшем DNS у нашего интернет-провайдера

DNS-записи кэшируются у разных интернет-провадйеров по разному, поэтому после смены этих записей, пользователи разных провайдеров могут какое-то время видеть разный сайт: кто-то будет видеть старый, кто-то новый. У нас в офисе интернет-провайдер, у которого медленно обновляется кэш DNS, поэтому для проверки стоит либо зайти на сайт через телефон (через сотовую связь, не используя Wi-Fi), либо воспользоваться сервисом Netrenderer, либо настроить использование сторонних DNS. Проще всего, использовать Netrenderer. В перспективе удобнее прописать сторонние DNS на компьютере.

  1. Посмотреть на телефоне, используя 3G (LTE, EDGE), а не Wi-Fi.

  2. http://netrenderer.com - онлайн сервис, с помощью которого можно посмотреть на сайт из интернета, чтобы проверить применились ли DNS-записи у других пользователей. Важно понимать, что сервис создан не для этого, а для проверки отображения сайта в Internet Explorer. Поэтому не стоит смотреть на верстку, а только на то, отображается ли правильный сайт.

  3. Прописать сторонние DNS на компьютере можно с помощью инструкции. Используйте 8.8.8.8 и 1.1.1.1, это максимально актуальные и, при этом, бесплатные DNS-провайдеры. Пример инструкции (их полно в сети) https://vynesimozg.com/izmenit-adres-dns-servera-v-windows-10/

Управляем парой домен-IP самостоятельно

До сих пор мы учились только получать и анализировать сетевые данные. Но, если вы хоть немного связаны с веб-разработкой, вам придется иногда вставать у руля. Пусть даже только для вашего локального компьютера.

Файл hosts позволяет на вашем локальном компьютере "насильно" сопоставить домен и IP-адрес. Это нужно, например, для того, чтобы проверить как работает сайт, до того, как на него будет переключен домен.

В Linux и MacOS этот файл расположен по адресу /etc/hosts В Windows он расположен в c:\windows\system32\drivers\etc\hosts

Так как файл hosts является системным, то в любой ОС вам понадобятся права администратора для изменения этого файла.

Также имейте ввиду, что приоритет файла hosts выше, чем у любых DNS. Другими словами записи hosts перекрывают любые DNS. Поэтому при веб-разработке изменения в этот файл обычно вносятся временно.

Пример содержимого файла hosts:

135.181.82.90 m2data.net
192.241.249.96 new.pixelbuddha.net

На Windows можно воспользоваться программой https://hostsfileeditor.com/ Хотя я ее еще не пробовал ставить, так что аккуратнее.


Версия #1
Admin создал 4 December 2022 18:38:22
Admin обновил 19 April 2023 12:35:25