DNS 4 NOTIMP vs 18 BADTIME
Both DNS 4 (NOTIMP) and 18 (BADTIME) 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, 18 means that signature out of time window. The TSIG signature timestamp is outside the allowed clock skew, indicating a time synchronization issue.
Description
Not Implemented. The name server does not support the requested query type or operation.
When You See It
You sent a query type (e.g., IXFR, dynamic update) that the server does not support or has disabled.
How to Fix
Verify the server supports the query type you are using. If you need zone transfers or dynamic updates, enable them in the server configuration.
Description
Signature out of time window. The TSIG signature timestamp is outside the allowed clock skew, indicating a time synchronization issue.
When You See It
The clocks on the DNS client and server are too far apart (usually more than 5 minutes), causing TSIG signature validation to fail.
How to Fix
Synchronize clocks on both machines using NTP. Check that the TSIG fudge value (allowed skew) is reasonable — the default 300 seconds is usually sufficient.
Key Differences
DNS 4: Not Implemented. The name server does not support the requested query type or operation.
DNS 18: Signature out of time window. The TSIG signature timestamp is outside the allowed clock skew, indicating a time synchronization issue.
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 18 when the clocks on the DNS client and server are too far apart (usually more than 5 minutes), causing TSIG signature validation to fail.
When to Use Which
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 18 (BADTIME): Synchronize clocks on both machines using NTP. Check that the TSIG fudge value (allowed skew) is reasonable — the default 300 seconds is usually sufficient.