Перейти к основному содержимому

DNS

DNS проверки

DNS проверки позволяют отслеживать корректность работы DNS-сервера и валидировать DNS-записи ваших доменов. Это критически важный инструмент для обеспечения доступности ваших сервисов, так как проблемы с DNS часто являются причиной недоступности веб-сайтов и приложений.

DNS проверки особенно полезны для:

  • Мониторинга доступности DNS: Проверка, что DNS-серверы отвечают и корректно разрешают доменные имена.
  • Валидации DNS-записей: Контроль соответствия DNS-ответов ожидаемым значениям после изменений в конфигурации.
  • Мониторинга времени отклика DNS: Отслеживание производительности DNS-резолвинга.
  • Проверки авторитетных NS-серверов: Контроль корректности делегирования домена.
  • Мониторинга различных типов записей: A, AAAA, MX, TXT, CNAME, NS, SOA и другие.

Параметры проверки

При создании DNS проверки вы можете настроить следующие параметры:

Основные параметры

  • Хост (host) — доменное имя для запроса (обязательный параметр).
  • Таймаут (timeout) — таймаут запроса в секундах (по умолчанию: 10 секунд).

Расширенные параметры

  • Тип записи (record_type) — тип DNS-записи для запроса (по умолчанию: A). Поддерживаемые типы: A, AAAA, MX, TXT, CNAME, NS, SOA, PTR, SRV и другие.

  • DNS-серверы (dns_servers) — список IP-адресов пользовательских DNS-серверов для использования (необязательно). Если не указано, используются системные DNS-серверы.

  • Ожидаемые ответы (expected_answers) — список ожидаемых DNS-ответов для валидации (необязательно). Если не указано, валидация не проводится.

  • Режим валидации (validation_mode) — режим проверки ожидаемых ответов:

    • contains_all (по умолчанию) — все ожидаемые записи должны присутствовать в ответе
    • exact — ответ должен содержать строго указанные записи, без дополнительных
  • WHOIS запрос (whois_lookup) — получение информации WHOIS о домене (необязательно, по умолчанию: false). Если включено, в результатах проверки будет доступна информация о регистрации домена, включая дату истечения срока действия.

Результаты проверки

После выполнения DNS проверки вы получите подробный отчёт со следующей информацией:

Основные метрики

  • Статус — результат проверки: ok (успешно), failed (ошибка) или timeout (таймаут).
  • Время отклика — длительность DNS-запроса в миллисекундах.

Детальная информация

  • Домен — проверяемое доменное имя.
  • Тип записи — запрашиваемый тип DNS-записи.
  • Использованные DNS-серверыsystem_default или список пользовательских серверов.
  • Режим валидацииnone, contains_all или exact.
  • Авторитетные NS-серверы — отсортированный список авторитетных nameservers для домена.
  • Полученные ответы — отсортированный список DNS-ответов.
  • Ожидаемые ответы — список ожидаемых значений (если валидация была настроена).
  • WHOIS информация — данные о регистрации домена (если whois_lookup включен):
    • Дата регистрации домена
    • Дата истечения срока действия домена
    • Дата последнего обновления
    • Регистратор домена
    • Статус домена

Примеры использования

Базовая проверка A-записи

Простая проверка разрешения домена в IPv4-адрес:

{
"host": "example.com",
"parameters": {
"record_type": "A"
}
}

Проверка с валидацией

Проверка, что домен разрешается в конкретный IP-адрес:

{
"host": "example.com",
"parameters": {
"record_type": "A",
"expected_answers": ["93.184.216.34"],
"validation_mode": "exact"
}
}

Проверка MX-записей

Валидация почтовых серверов домена:

{
"host": "example.com",
"parameters": {
"record_type": "MX",
"expected_answers": ["10 mail.example.com."],
"validation_mode": "contains_all"
}
}

Проверка с пользовательским DNS-сервером

Использование конкретного DNS-сервера для запроса:

{
"host": "example.com",
"parameters": {
"record_type": "A",
"dns_servers": ["8.8.8.8", "1.1.1.1"]
}
}

Проверка TXT-записей

Валидация TXT-записей (например, для SPF или DKIM):

{
"host": "example.com",
"parameters": {
"record_type": "TXT",
"expected_answers": ["v=spf1 include:_spf.example.com ~all"],
"validation_mode": "contains_all"
}
}

Проверка IPv6-адреса (AAAA)

{
"host": "example.com",
"parameters": {
"record_type": "AAAA",
"expected_answers": ["2606:2800:220:1:248:1893:25c8:1946"]
}
}

Мониторинг срока действия домена

Для отслеживания даты истечения регистрации домена используйте параметр whois_lookup:

{
"host": "example.com",
"parameters": {
"record_type": "A",
"whois_lookup": true
}
}

После выполнения проверки в результатах будет доступна информация WHOIS, включая дату истечения срока действия домена. Вы можете настроить оповещения, чтобы получать уведомления заблаговременно перед истечением срока регистрации.

Режимы валидации

contains_all (по умолчанию)

В этом режиме проверка считается успешной, если все указанные в expected_answers записи присутствуют в DNS-ответе. Дополнительные записи в ответе допускаются.

Пример:

  • Ожидаемые ответы: ["93.184.216.34"]
  • Фактический ответ: ["93.184.216.34", "93.184.216.35"]
  • Результат: ✅ Успешно

exact

В этом режиме DNS-ответ должен содержать строго те записи, которые указаны в expected_answers, без дополнительных.

Пример:

  • Ожидаемые ответы: ["93.184.216.34"]
  • Фактический ответ: ["93.184.216.34", "93.184.216.35"]
  • Результат: ❌ Ошибка (есть лишняя запись)

Типичные сценарии

Успешная проверка:

  • Статус: ok
  • DNS-запрос выполнен успешно
  • Валидация пройдена (если настроена)

Ошибка валидации (contains_all):

  • Статус: failed
  • Сообщение: "Validation failed (contains_all). Missing records: ['X'], Found: ['Y']"
  • Отсутствуют ожидаемые записи

Ошибка валидации (exact):

  • Статус: failed
  • Сообщение: "Validation failed (exact). Expected: ['X'], Found: ['Y']"
  • Несоответствие между ожидаемыми и фактическими записями

Ошибка DNS-резолвинга:

  • Статус: failed
  • Сообщение с деталями проблемы (NXDOMAIN, SERVFAIL и т.д.)

Оповещения

DNS проверки интегрированы с системой оповещений Pingera. Вы можете настроить уведомления для:

  • Ошибок DNS-резолвинга
  • Несоответствия DNS-записей ожидаемым значениям
  • Изменения авторитетных NS-серверов
  • Высокого времени отклика DNS

Управление каналами оповещений доступно в разделе Оповещения → Каналы оповещений.

Мониторинг важных DNS-записей

DNS проверки особенно важны для мониторинга критических записей:

  • A/AAAA записи — основные записи для доступа к веб-сайтам и API
  • MX записи — записи почтовых серверов для корректной доставки email
  • TXT записи — записи для SPF, DKIM, DMARC и других механизмов безопасности email
  • CNAME записи — алиасы доменов, часто используемые для CDN
  • NS записи — делегирование DNS и авторитетные серверы
  • SRV записи — записи сервисов для специализированных протоколов
  • WHOIS информация — мониторинг срока действия регистрации домена

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

  • Настраивайте валидацию для критически важных DNS-записей
  • Используйте режим exact для записей, которые не должны изменяться
  • Проверяйте DNS из разных географических локаций для выявления региональных проблем
  • Мониторьте время отклика DNS для выявления проблем с производительностью
  • Настройте оповещения для своевременного обнаружения проблем с DNS
  • Включайте whois_lookup для мониторинга срока действия доменов и заблаговременного продления регистрации