ping или запускаете любое удаленное приложение, операционка должна преобразовать указанные имена в IP-адреса. Этот процесс называется разрешением доменного имени. На первый взгляд он может показаться весьма прозрачным, однако за ним скрывается многослойный механизм.• По ссылкам ниже можно найти 4 крутых лонгрида, которые описывают работу DNS в Linux:
• Часть 1: от getaddrinfo до resolv.conf - статья посвящена низкоуровневой архитектуре разрешения имен. Поговорим о том, как устроен этот процесс в Linux на уровне ядра, различных библиотек C и системных вызовов.
• Часть 2: все уровни DNS-кэширования - во второй части описано общее представление того, как устроено кэширование DNS записей - ключевой механизм, который напрямую влияет на производительность, надежность и поведение приложений при смене IP-адресов.
• Часть 3: Разбираемся с resolv.conf, systemd-resolved, NetworkManager и другими - разберем, как взаимодействуют различные резолверы (glibc, systemd-resolved, dnsmasq, NetworkManager), что происходит, когда
/etc/resolv.conf указывает на 127.0.0.53, и как понять, кто реально управляет вашим DNS в системе.• Часть 4: DNS в контейнерах - каждая контейнерная платформа -
Docker, Podman, Kubernetes - реализует собственную DNS-архитектуру со специфическими особенностями, преимуществами и подводными камнями. Понимание этих различий критически важно для построения надежных и производительных контейнерных инфраструктур. С чем мы и попробуем разобраться в этой статье.#DNS #Linux