DNS Propagation — почему изменения DNS не работают сразу
Вы сменили хостинг, обновили A-запись или перенесли домен — но сайт по-прежнему открывается со старого сервера. Знакомая ситуация? Это DNS-пропагация — процесс распространения изменений DNS по серверам по всему миру. В этой статье разберём, как это работает и что делать, чтобы не ждать двое суток.
Что такое DNS-пропагация
DNS-пропагация (DNS propagation) — это время, которое требуется для распространения изменений DNS Lookup по всем DNS-серверам в интернете. Когда вы меняете запись у регистратора, обновление не происходит мгновенно — оно постепенно распространяется через иерархическую систему DNS.
Типичное время пропагации:
- A / AAAA записи — от 5 минут до 48 часов
- MX записи — от 1 до 48 часов
- NS записи — от 24 до 72 часов
- TXT записи — от 5 минут до 24 часов
- CNAME записи — от 5 минут до 24 часов
Как работает DNS и почему пропагация не мгновенна
Иерархия DNS
Система DNS работает как цепочка:
- Корневые серверы (13 групп) — знают, где искать DNS-зоны верхнего уровня (.com, .ru, .io)
- TLD-серверы — знают авторитетные NS-серверы для каждого домена в зоне
- Авторитетные NS-серверы — хранят актуальные DNS-записи вашего домена
- Рекурсивные резолверы (DNS-серверы провайдеров, 8.8.8.8, 1.1.1.1) — кэшируют результаты и отдают их пользователям
Роль TTL (Time to Live)
Каждая DNS-запись имеет TTL — время жизни в секундах. Это значение говорит рекурсивным серверам, как долго можно хранить запись в кэше. Пока TTL не истёк, сервер возвращает кэшированное значение, не обращаясь к авторитетному серверу.
example.com. 3600 IN A 93.184.216.34
; ^^^^
; TTL = 3600 секунд = 1 час
Типичные значения TTL:
| TTL | Время | Применение |
|---|---|---|
| 300 | 5 минут | Перед миграцией, failover |
| 3600 | 1 час | Стандартное значение |
| 14400 | 4 часа | Стабильные записи |
| 86400 | 24 часа | Редко меняющиеся записи |
Как проверить DNS-пропагацию
Через enterno.io
Самый удобный способ — использовать DNS Lookup enterno.io. Введите доменное имя, и инструмент покажет текущие DNS-записи, которые видит сервер. Сравните результат с тем, что вы настроили у регистратора.
Через командную строку
Проверьте запись на разных DNS-серверах:
# Google DNS
dig @8.8.8.8 example.com A
# Cloudflare DNS
dig @1.1.1.1 example.com A
# Авторитетный сервер
dig @ns1.registrar.com example.com A
# Краткий вывод
dig +short example.com A
Если авторитетный сервер возвращает новый IP, а Google DNS — старый, пропагация ещё не завершилась.
На Windows
nslookup example.com 8.8.8.8
nslookup example.com 1.1.1.1
Как ускорить DNS-пропагацию
1. Заранее уменьшите TTL
Главный приём: за 24–48 часов до планируемого изменения уменьшите TTL записи до 300 секунд (5 минут). Дождитесь, пока старый TTL истечёт, затем вносите изменения. После завершения миграции верните TTL на стандартное значение.
# За 48 часов до миграции
example.com. 300 IN A 93.184.216.34
# После миграции (когда убедились, что всё работает)
example.com. 3600 IN A NEW.IP.ADDRESS
2. Очистите локальный DNS-кэш
Ваш компьютер кэширует DNS-ответы. Очистите кэш:
# Windows
ipconfig /flushdns
# macOS
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
# Linux
sudo systemd-resolve --flush-caches
3. Смените DNS-сервер
Если провайдерский DNS обновляется медленно, переключитесь на Google (8.8.8.8) или Cloudflare (1.1.1.1) — они обновляют кэш быстрее.
4. Используйте Cloudflare Proxy
Если домен подключён к Cloudflare, изменения A-записей применяются мгновенно, так как трафик идёт через серверы Cloudflare, а не напрямую.
Частые проблемы при миграции DNS
- Не дождались истечения старого TTL — самая частая ошибка. Если TTL был 86400 (24 часа), то даже после изменения часть пользователей будет видеть старый адрес ещё сутки
- Забыли про www-запись — обновили A-запись для example.com, но не для www.example.com
- Не учли CNAME — если www указывает на CNAME, нужно проверить, что целевая запись тоже обновлена
- Проблемы с NS-делегированием — при смене NS-серверов пропагация занимает дольше всего
- Отрицательное кэширование — если DNS-запись временно отсутствовала, рекурсивные серверы кэшируют этот факт (negative caching)
DNS-пропагация и email
При изменении MX-записей будьте особенно осторожны. Во время пропагации часть писем может уходить на старый сервер, а часть — на новый. Рекомендации:
- Не удаляйте старый почтовый сервер до полного завершения пропагации
- Настройте пересылку со старого сервера на новый
- Уменьшите TTL для MX-записей заранее
- Мониторьте доставку тестовых писем
Итоги
DNS-пропагация — неизбежный процесс, но его можно контролировать. Ключевые правила:
- Планируйте миграцию заранее
- Уменьшите TTL за 48 часов до изменений
- Проверяйте пропагацию через DNS Lookup enterno.io
- Не удаляйте старые записи до полного завершения процесса
- Используйте несколько DNS-серверов для проверки
Проверьте ваш сайт прямо сейчас
Проверить →