Статья DNS#5956
Conversation
vitya-ne
left a comment
There was a problem hiding this comment.
Привет, спасибо за труд и статью на трудную тему.
Пока статья в драфте, рискну добавить несколько субъективных комментов.
ra1nbow1
left a comment
There was a problem hiding this comment.
Привет! Спасибо за доку. Давай напишем про TTL поподробнее - это один из ключевых атрибутов DNS-записей, который влияет на кеширование.
|
|
||
| ## Историческая справка | ||
|
|
||
| Ещё до создания Интернета существовала сеть ARPAnet, которая являлась огромным сообществом сетевых узлов (компьютеров) и всю информацию о преобразований IP-адресов в понятные названия производили в одном файле `HOSTS.TXT`, который лежал на сервере Стэнфордского научно-исследовательского института. Пользователи вручную брали этот файл и устанавливали на свою операционную систему, для удобного доступа к ресурсам. Со временем это стало неудобно, количество ресурсов и пользователей только росло, поэтому появилась отдельная система, которая проводит всю эту работу автоматически. |
There was a problem hiding this comment.
| Ещё до создания Интернета существовала сеть ARPAnet, которая являлась огромным сообществом сетевых узлов (компьютеров) и всю информацию о преобразований IP-адресов в понятные названия производили в одном файле `HOSTS.TXT`, который лежал на сервере Стэнфордского научно-исследовательского института. Пользователи вручную брали этот файл и устанавливали на свою операционную систему, для удобного доступа к ресурсам. Со временем это стало неудобно, количество ресурсов и пользователей только росло, поэтому появилась отдельная система, которая проводит всю эту работу автоматически. | |
| Ещё до создания Интернета существовала сеть ARPAnet, которая являлась огромным сообществом сетевых узлов (компьютеров) и всю информацию о преобразовании IP-адресов в понятные названия производили в одном файле `HOSTS.TXT`, который лежал на сервере Стэнфордского научно-исследовательского института. Пользователи вручную брали этот файл и устанавливали на свою операционную систему, для удобного доступа к ресурсам. Со временем это стало неудобно, количество ресурсов и пользователей только росло, поэтому появилась отдельная система, которая проводит всю эту работу автоматически. |
| На DNS сервере стоит HTTPS сервер, в нем находится GET или POST эндпоинт `/dns-query?dns=`, где в зачении dns будет base64 DNS реквеста (не забываем, DNS это протокол, где данные передаются в байтах), как при передаче по UDP. В случае успеха, придёт ответ с кодом 200 и `Content-Type: application/dns-message`, в теле будет находиться такой же ответ, состоящий из байтов, как при работе по UDP. | ||
|
|
||
| ## DNSSEC | ||
| DNSSEC используется не для шифрования запросов, а для подписи конкретных доменов, чтобы защитить записи от подмены и типов атак "человек по середине", на протяжении всего пути, от домена верхнего уровня, до конкретного домена может использоваться DNSSEC для валидации корректности домена. Для этого используются две ресурсные запси _DNSKEY_ и _RRSIG_. Для нормальной работы DNSSEC необходима ротация ключей, поэтому если вы держите свой DNS-сервер в этом может возникнуть проблема. Однако, некоторые, облачные DNS-серверы делают это автоматически, достаточно лишь включить эту опцию. |
There was a problem hiding this comment.
| DNSSEC используется не для шифрования запросов, а для подписи конкретных доменов, чтобы защитить записи от подмены и типов атак "человек по середине", на протяжении всего пути, от домена верхнего уровня, до конкретного домена может использоваться DNSSEC для валидации корректности домена. Для этого используются две ресурсные запси _DNSKEY_ и _RRSIG_. Для нормальной работы DNSSEC необходима ротация ключей, поэтому если вы держите свой DNS-сервер в этом может возникнуть проблема. Однако, некоторые, облачные DNS-серверы делают это автоматически, достаточно лишь включить эту опцию. | |
| DNSSEC используется не для шифрования запросов, а для подписи конкретных доменов, чтобы защитить записи от подмены и типов атак "человек-посередине", на протяжении всего пути, от домена верхнего уровня, до конкретного домена может использоваться DNSSEC для валидации корректности домена. Для этого используются две ресурсные записи _DNSKEY_ и _RRSIG_. Для нормальной работы DNSSEC необходима ротация ключей, поэтому если вы держите свой DNS-сервер в этом может возникнуть проблема. Однако, некоторые, облачные DNS-серверы делают это автоматически, достаточно лишь включить эту опцию. |
|
|
||
| **Domain Name System** или **DNS** — система, которая позволяет преобразовывать доменные имена в IP-адреса. | ||
|
|
||
| Интернет работает через связь между IP-адресами, но запоминать числовые последовательности неудобно. Если мы введем в браузере доменное имя _example.com_ оно будет ссылаться на IP-адрес вида _2001:0DB8::1_ или _192.0.2.1_. |
There was a problem hiding this comment.
| Интернет работает через связь между IP-адресами, но запоминать числовые последовательности неудобно. Если мы введем в браузере доменное имя _example.com_ оно будет ссылаться на IP-адрес вида _2001:0DB8::1_ или _192.0.2.1_. | |
| Интернет работает через связь между IP-адресами, но запоминать числовые последовательности неудобно. Если мы введем в браузере доменное имя _example.com_, оно будет ссылаться на IP-адрес вида _2001:0DB8::1_ или _192.0.2.1_. |
| ## Ресурсные записи | ||
|
|
||
| Служебные записи, с помощью которых и происходят привязки домена. | ||
| Рассмотрим несколько из них |
There was a problem hiding this comment.
| Рассмотрим несколько из них | |
| Рассмотрим несколько из них: |
|
|
||
| ## Под капотом | ||
|
|
||
| Находясь дома, работая в Интернете, все наши DNS запросы обрабатвыает либо маршрутизатор, либо оборудование провайдера или облачные DNS серверы компании Google или CloudFlare. Однако, мы разберем откуда они берут ответы на DNS-запросы. |
There was a problem hiding this comment.
| Находясь дома, работая в Интернете, все наши DNS запросы обрабатвыает либо маршрутизатор, либо оборудование провайдера или облачные DNS серверы компании Google или CloudFlare. Однако, мы разберем откуда они берут ответы на DNS-запросы. | |
| Находясь дома, работая в Интернете, все наши DNS запросы обрабатывает либо маршрутизатор, либо оборудование провайдера или облачные DNS серверы компании Google или CloudFlare. Однако, мы разберем откуда они берут ответы на DNS-запросы. |
|
|
||
| Так был пройден весь путь запроса информации о домене. Путь выглядит сложным, но на каждом шаге нас встречали резервные адреса для повышения отказоустойчивости, ведь DNS один из самых важных протоколов в работе Интернета. | ||
|
|
||
| Мы прошли весь путь полностью и разобрали откуда и куда переходят запросы, однако, флаг `+trace` в утилите `dig` выдал бы этот путь автоматически, например команда `dig doka.guide +trace` уместила бы весь путь в один вывод команды. |
There was a problem hiding this comment.
| Мы прошли весь путь полностью и разобрали откуда и куда переходят запросы, однако, флаг `+trace` в утилите `dig` выдал бы этот путь автоматически, например команда `dig doka.guide +trace` уместила бы весь путь в один вывод команды. | |
| Мы прошли весь путь и разобрали откуда и куда переходят запросы, однако, флаг `+trace` в утилите `dig` выдал бы этот путь автоматически, например команда `dig doka.guide +trace` уместила бы весь путь в один вывод команды. |
Написал, вроде бы норм, если есть правки добавлю. |
Превью контента из 87e32ff опубликовано. |
Описание
Статья DNS
Closes #5955
Призываю @skorobaeus, в статье есть комментарии, отмечены как
[//]: <>хотелось бы попросить сделать графикуОстальных прошу помочь с работой над статьей, так как она громозкая, где-то я мог что-то забыть, или наоборот слишком углубился. Прошу помочь.
Превью: https://content-5956.dev.doka.guide/tools/dns/
Чек-лист
/css/color/,/tools/json/,/tools/gulp/#kak-ponyat)images/example.png,demos/example/,../demos/example/)