Skip to content
← Все статьи

DNS и производительность: оптимизация резолвинга

Влияние DNS на скорость загрузки

Каждый HTTP-запрос начинается с DNS-резолвинга — преобразования доменного имени в IP геолокацию. Этот процесс занимает от 20 до 120 мс, а при первом обращении к домену — до 200-300 мс. На странице с ресурсами из 10 разных доменов DNS-lookups могут добавить до 1-2 секунд к загрузке.

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

Как работает DNS-резолвинг

  1. Браузер проверяет свой DNS-кэш
  2. Если не найдено — запрос к ОС (hosts-файл, системный кэш)
  3. ОС обращается к рекурсивному резолверу (обычно ISP или public DNS)
  4. Резолвер проходит цепочку: root → TLD → авторитативный DNS-сервер
  5. Полученный IP-адрес кэшируется на каждом уровне согласно TTL

Используйте DNS Lookup на Enterno.io для проверки DNS Lookup и времени резолвинга вашего домена.

Выбор DNS-провайдера

Скорость авторитативного DNS-сервера напрямую влияет на время первого обращения. Публичные DNS-провайдеры с Anycast-сетями обеспечивают время ответа 5-20 мс из любой точки мира.

Критерии выбора

  • Anycast сеть — серверы в множестве точек присутствия (PoP) по всему миру
  • Время ответа — менее 30 мс из ключевых регионов вашей аудитории
  • Uptime — 100% SLA (DNS даунтайм = полная недоступность сайта)
  • Поддержка DNSSEC — для защиты от DNS-спуфинга
  • Поддержка современных типов записей — CAA, TLSA, SVCB

Популярные DNS-провайдеры

  • Cloudflare DNS — бесплатный, быстрый, 300+ PoP
  • AWS Route 53 — гибкая маршрутизация, latency-based routing
  • Google Cloud DNS — 100% SLA, глобальная anycast-сеть

Оптимизация TTL

TTL (Time To Live) определяет, как долго DNS-запись кэшируется. Правильный TTL — баланс между производительностью и гибкостью.

Рекомендации по TTL

  • Стабильные записи (MX, TXT, SPF) — 3600-86400 секунд (1 час — 1 день)
  • Основной A/AAAA-запись — 300-3600 секунд (5 мин — 1 час)
  • Перед миграцией — снизьте до 60-300 секунд за 24-48 часов
  • После миграции — верните нормальный TTL через 24-48 часов

Слишком низкий TTL (менее 60 секунд) увеличивает нагрузку на DNS-серверы и замедляет резолвинг. Слишком высокий (более 86400) затрудняет оперативные изменения.

DNS Prefetch

DNS Prefetch — механизм предварительного резолвинга доменов, от которых загружаются ресурсы страницы:

<link rel="dns-prefetch" href="//cdn.example.com">
<link rel="dns-prefetch" href="//fonts.googleapis.com">
<link rel="dns-prefetch" href="//analytics.google.com">

Браузер выполняет DNS-lookup заранее, пока парсит HTML. Когда ресурс понадобится, IP-адрес уже будет в кэше.

Preconnect — шаг дальше

Для критических ресурсов используйте preconnect — он выполняет DNS + TCP + TLS handshake заранее:

<link rel="preconnect" href="https://cdn.example.com" crossorigin>

Используйте preconnect для 2-3 самых важных внешних доменов. Для остальных — dns-prefetch.

Минимизация DNS Lookups

Сокращайте количество доменов

Каждый уникальный домен требует отдельного DNS-lookup. Сократите количество внешних доменов:

  • Разместите статику на основном домене или одном CDN-домене
  • Сократите количество сторонних скриптов (аналитика, виджеты, рекламные сети)
  • Используйте self-hosted шрифты вместо Google Fonts

Domain sharding — устаревшая техника

В эпоху HTTP/1.1 ресурсы разделяли по нескольким доменам для параллельных загрузок. С HTTP/2 это антипаттерн — мультиплексирование позволяет загружать всё через одно соединение. Дополнительные домены только добавляют DNS-lookups.

Мониторинг DNS

DNS-проблемы часто остаются незамеченными, потому что сайт «работает» для большинства пользователей (их DNS-кэш ещё актуален).

  • Мониторьте время DNS-резолвинга из разных географических точек
  • Настройте алерты на увеличение DNS lookup time
  • Используйте DNS Lookup Enterno.io для регулярной проверки DNS-записей
  • Настройте мониторинг uptime — он обнаружит проблемы с DNS, если они приводят к недоступности

Итоги

DNS-оптимизация — низко висящий фрукт, который можно собрать без изменения кода. Выберите быстрый DNS-провайдер с anycast, настройте правильные TTL, используйте dns-prefetch и preconnect для внешних доменов, и минимизируйте количество уникальных доменов на странице. Эти меры могут сэкономить 100-500 мс на каждой загрузке.

Проверьте ваш сайт прямо сейчас

Проверить DNS своего сайта →
Другие статьи: DNS
DNS
Лучшие DNS-инструменты и сервисы проверки 2026
15.06.2026 · 46 просм.
DNS
Типы DNS записей: A, AAAA, MX, CNAME, TXT и другие
10.03.2025 · 161 просм.
DNS
TTL в DNS: оптимальные значения для каждого типа записи
16.03.2026 · 278 просм.
DNS
Как проверить распространение DNS: 5 инструментов
15.04.2026 · 204 просм.