концепції / 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 у кафе).
Розібрано у відео
- Як працює Інтернет: основи DNS
історія hosts.txt, підміна через /etc/hosts, типи записів, round-robin, DoH, перехід UDP→TCP на 512 байтах, запит виконує glibc
- Як працює Інтернет: рекурсивний пошук у DNS
шлях root→TLD→авторитетний сервер, dig +norecurse/+trace, glue-записи, TTL і розповсюдження кешів
- Що не так з Інтернетом в кафе? Розбираємо DHCP
отруєння DNS через підставний DHCP, живий override у dnsmasq
- Як швидкість світла обмежує швидкість твого веб-сайту
DNS-запит як неврахована додаткова складова затримки
- Як не дати віртуальній машині лазити по вашій домашній мережі (офтоп для спонсорів)
гостьовий DNS виставлено на 8.8.8.8 через DHCP у pfSense
- 3 речі, які роблять програміста кращим
«хто насправді виконує DNS-запит?» як приклад прихованої глибини
Повʼязане
DHCP (Dynamic Host Configuration Protocol) — роздає адресу DNS-сервера; атака через підставний DHCP перехоплює саме DNS NAT і основи мереж — багаторівневе кешування резолверів (браузер/ОС/роутер/провайдер) і рамка серії про інтернет HTTPS і TLS — саме перевірка сертифіката ловить підміну DNS Затримка і швидкість світла — кожен запит — це багато round-trip-ів, звідси потреба в кешуванні dnsmasq — комбінований кешувальний DNS + DHCP-сервер із демонстрацій