| Предыдущий | Следующий |
| DNS_ERROR_NO_PACKET | DNS_ERROR_UNSECURE_PACKET |
DNS_ERROR_RCODE
Общий статус является лишь оболочкой
DNS_ERROR_RCODE означает, что операция DNS завершилась ошибкой из-за кода ответа, но не указывает, какой именно RCODE вызвал сбой. Полезный диагноз находится в значении заголовка DNS-ответа, возможно расширенном сведениями EDNS в записи OPT. Интерпретация каждого случая как NXDOMAIN или SERVFAIL отбрасывает фактическое объяснение сервера.
Стандартные RCODE различают ошибки формата, сбой сервера, несуществующее имя, неподдерживаемую операцию, отказ, предварительные условия обновления, авторизацию и другие состояния. Расширенные механизмы DNS увеличивают пространство кодов, поэтому декодирование пакета предпочтительнее единственного общего статуса Windows.
Что проверить
- Захватите ответ и декодируйте базовый RCODE заголовка вместе с расширенным RCODE из EDNS, если он присутствует.
- Запишите ответивший сервер, флаги AA и TC, запрошенные имя и тип и факт перехода на TCP.
- Выбирайте исправление по конкретному RCODE: создание записи не исправит REFUSED, а изменение суффикса — FORMERR.
- Если разбираемого ответа нет, исследуйте вместо этого
DNS_ERROR_NO_PACKETилиDNS_ERROR_BAD_PACKET.
Ссылки
- IANA: параметры системы доменных имён
- RFC 6895: вопросы IANA для DNS
- RFC 6891: расширенный RCODE EDNS
Нужно найти другой код? Найти другой код состояния или ошибки.