DNS 4 NOTIMP vs 22 BADTRUNC
Both DNS 4 (NOTIMP) and 22 (BADTRUNC) belong to the DNS Response Codes (RCODEs) category. 4 indicates that not Implemented. The name server does not support the requested query type or operation. Meanwhile, 22 means that bad truncation. The TSIG record was truncated in a way that makes it impossible to verify the message signature.
説明
Not Implemented. The name server does not support the requested query type or operation.
このコードが表示される場合
You sent a query type (e.g., IXFR, dynamic update) that the server does not support or has disabled.
解決方法
Verify the server supports the query type you are using. If you need zone transfers or dynamic updates, enable them in the server configuration.
説明
Bad truncation. The TSIG record was truncated in a way that makes it impossible to verify the message signature.
このコードが表示される場合
A large DNS response was truncated (TC bit set) but the TSIG MAC was computed over the full message, making the truncated version unverifiable.
解決方法
Retry the query over TCP to avoid truncation. If using UDP, ensure your EDNS buffer size is large enough to receive the full signed response.
主な違い
DNS 4: Not Implemented. The name server does not support the requested query type or operation.
DNS 22: Bad truncation. The TSIG record was truncated in a way that makes it impossible to verify the message signature.
You encounter 4 when you sent a query type (e.g., IXFR, dynamic update) that the server does not support or has disabled.
You encounter 22 when a large DNS response was truncated (TC bit set) but the TSIG MAC was computed over the full message, making the truncated version unverifiable.
どちらをいつ使うか
For 4 (NOTIMP): Verify the server supports the query type you are using. If you need zone transfers or dynamic updates, enable them in the server configuration. For 22 (BADTRUNC): Retry the query over TCP to avoid truncation. If using UDP, ensure your EDNS buffer size is large enough to receive the full signed response.