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

Wildcard DNS-записи: применение и подводные камни

Wildcard DNS-записи: применение и подводные камни

Wildcard-запись (*.example.com) — удобный способ обрабатывать бесконечное количество поддоменов одним правилом. Но за удобством скрываются подводные камни: wildcard-ы легко дают конфликт с более специфичными записями, мешают CAA и DNSSEC, открывают новые векторы атак. В статье — применение, ограничения по RFC 4592 и рекомендации.

Что такое wildcard

Звёздочка в DNS означает «любая строка вместо меня». Запись:

*.example.com.  3600  IN  A  93.184.216.34

Матчит foo.example.com, bar.example.com, anything.example.com — любой поддомен, для которого нет собственной записи.

Когда wildcard полезен

Ограничения RFC 4592

1. Wildcard не покрывает многоуровневые поддомены

*.example.com не матчит a.b.example.com. Для вложенных нужен *.b.example.com отдельно.

2. Конкретные записи перекрывают wildcard

Если есть shop.example.com A 10.0.0.1 и *.example.com A 10.0.0.2, запрос shop.example.com вернёт 10.0.0.1.

3. Wildcard не работает для apex

*.example.com не покрывает example.com. Для apex нужна отдельная запись.

4. Пустые нелистовые узлы блокируют wildcard

Это самая коварная ловушка. Если есть *.example.com и a.b.example.com, то запрос b.example.com не вернёт wildcard-запись — вернёт NODATA или NXDOMAIN. Потому что b.example.com становится «ENT» (empty non-terminal) между apex и a.b.example.com.

5. Не работает со всеми типами одновременно

Wildcard-запись одного типа (например, MX) не даёт автоматически wildcard для других (A, TXT). Каждый тип нужно задавать отдельно.

Примеры корректных и некорректных конфигураций

Корректно

example.com.      A    10.0.0.1
*.example.com.    A    10.0.0.2
www.example.com.  A    10.0.0.3
api.example.com.  A    10.0.0.4

; dig foo.example.com +short, ответ: 10.0.0.2
; dig www.example.com +short, ответ: 10.0.0.3

С подводным камнем

*.example.com.        A    10.0.0.2
a.b.example.com.      A    10.0.0.3

; dig b.example.com +short, ответ: NXDOMAIN (!)
; dig x.example.com +short, ответ: 10.0.0.2

Wildcard и SSL-сертификаты

Let's Encrypt поддерживает wildcard-сертификаты через DNS-01 challenge. Сертификат *.example.com покрывает все поддомены первого уровня, но не вложенные.

certbot certonly --dns-cloudflare \
    -d example.com \
    -d *.example.com

Wildcard и CAA

CAA-запись определяет, какие удостоверяющие центры могут выдавать сертификаты. Для wildcard можно задать политику отдельно:

example.com. CAA 0 issue "letsencrypt.org"
example.com. CAA 0 issuewild "letsencrypt.org"

Wildcard и DNSSEC

DNSSEC подписывает RRSET — и wildcard-запись подписывается как обычная. Но при проверке резолвер выполняет дополнительные проверки NSEC/NSEC3, чтобы убедиться, что более специфичная запись не существует.

Безопасность

Subdomain takeover

Wildcard, указывающая на CNAME облачного сервиса (напр., AWS S3 bucket), создаёт риск. Злоумышленник может зарегистрировать подобный сервис и перехватить трафик любого поддомена.

DDoS-вектор

Wildcard принимает любой поддомен — боты могут генерировать бесконечные случайные имена для обхода фильтров. Решение — специфичные записи и мониторинг сайтов аномальных паттернов.

Phishing surface

Wildcard делает phisher'у проще создавать достоверные URL (amazon-login.example.com). Мониторьте использование поддоменов.

Проверка wildcard

Через DNS Lookup или dig:

# Должна вернуть запись wildcard
dig A random-subdomain.example.com +short

# Покажет текущую зону
dig ANY example.com +noall +answer

Лучшие практики

  1. Используйте wildcard только там, где это осознанный дизайн.
  2. Для критичных поддоменов (www, mail, api) ставьте явные записи.
  3. Документируйте wildcard-стратегию в DNS-зоне (комментарии в BIND).
  4. Мониторьте аномалии через анализ логов запросов авторитативного DNS.
  5. Проверяйте поведение с пустыми non-terminal (ENT) при планировании.

FAQ

Можно ли wildcard на CNAME?
Да: *.example.com CNAME myapp.vercel.app. Работает, но осторожно с takeover.
Как отключить wildcard для конкретного поддомена?
Добавить специфичную запись — она перекроет wildcard.
Cloudflare поддерживает wildcard?
Да, на всех планах. Но оранжевое облачко (прокси) включается только на Business+.
Работает ли wildcard MX?
Да: *.example.com MX 10 mail.example.com — любые поддомены пойдут на указанный сервер.

Заключение

Wildcard — мощный, но опасный инструмент. Используйте его для SaaS-сценариев, где поддомены действительно динамические, и всегда дополняйте явными записями для ключевых имён. Проверяйте конфигурацию через DNS Lookup, мониторьте поддомены через Enterno.io Monitors, и применяйте CAA и DNSSEC чтобы минимизировать риски.

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

Проверить →
Другие статьи: DNS
DNS
Anycast DNS: как работает, преимущества и реализация
16.03.2026 · 61 просм.
DNS
Как проверить распространение DNS: 5 инструментов
15.04.2026 · 5 просм.
DNS
Обратный DNS и PTR-записи: для чего нужны
15.04.2026 · 5 просм.
DNS
DNS Propagation — почему изменения DNS не работают сразу
12.03.2026 · 48 просм.