Віктор Турський про програмування / навігатор

концепції / dns

DNS (Domain Name System)

Канал подає DNS як флагман своєї серії «Як працює інтернет». До появи DNS (1985 рік) відповідність імен IP-адресам жила у hosts.txt, який поширювали вручну; його слід зберігся у вигляді /etc/hosts, який автор редагує наживо, підмінюючи rozetka на IP Google, — і показує і власний DNS-кеш браузера, і те, що сервер теж перевіряє домен у HTTP-запиті, тож самого лише збігу IP замало (основи DNS). Він проходить поширені типи записів (A/AAAA/MX/TXT/SPF/NS), подає DNS round-robin (кілька IP для одного імені) як найпростіше балансування навантаження і failover та розповідає про DNS-over-HTTPS (DoH) — браузери забирають резолвінг з операційної системи. Улюблена пастка: DNS працює поверх UDP на порту 53, але переходить на TCP, щойно відповідь перевищує ~512 байтів (прапорець truncated/TC стає 1), — продемонстровано на великому TXT-записі; лише 17% із 215 учасників опитування знали про це. Він також наголошує, що резолвінг виконує glibc/libc, а не браузер чи ядро, і що systemd тримає кешувальний резолвер на 127.0.0.53.

Другий випуск відповідає на питання «чи кожен DNS-сервер зберігає всі домени?» — ні (рекурсивний резолвінг DNS). На наскрізному прикладі щойно купленого itquiz.com і хмарного сервера він проходить ієрархію: кореневі сервери (зона .) → сервери TLD (.com) → авторитетний сервер (Cloudflare), який зберігає A-запис; на кожному кроці повертаються NS-записи, а резолвер стартує з ~13 root hints. Кожен крок він доводить руками через dig +norecurse (секція additional несе glue-IP, щоб заощадити зайві звернення) і автоматизує весь ланцюжок через dig +trace. TTL пояснено чітко: в itquiz.com було 300 с, типові — 24 год; низький TTL для IP, що часто змінюються, високий — для стабільних, і саме тому зміна IP розповзається нерівномірно, поки спливають кеші.

DNS — це ще й поверхня атаки у випуску про DHCP: підставний DNS-сервер, виданий через DHCP, отруює резолвінг імен, і автор перенаправляє itquiz.com на IP Google через dnsmasq, отримуючи помилку невідповідності сертифіката на планшеті жертви (DHCP у кафе).

Розібрано у відео

Повʼязане

DHCP (Dynamic Host Configuration Protocol) — роздає адресу DNS-сервера; атака через підставний DHCP перехоплює саме DNS NAT і основи мереж — багаторівневе кешування резолверів (браузер/ОС/роутер/провайдер) і рамка серії про інтернет HTTPS і TLS — саме перевірка сертифіката ловить підміну DNS Затримка і швидкість світла — кожен запит — це багато round-trip-ів, звідси потреба в кешуванні dnsmasq — комбінований кешувальний DNS + DHCP-сервер із демонстрацій