DNS

DNS 6 YXDOMAIN vs 23 BADCOOKIE

Both DNS 6 (YXDOMAIN) and 23 (BADCOOKIE) belong to the DNS Response Codes (RCODEs) category. 6 indicates that name Exists when it should not. Used in dynamic updates to indicate a name that should not exist already has records. Meanwhile, 23 means that bad or missing server cookie. The DNS COOKIE option in the request is absent, malformed, or does not match the server's expected value.

Description

Name Exists when it should not. Used in dynamic updates to indicate a name that should not exist already has records.

When You See It

A DNS UPDATE prerequisite check failed because the domain name already exists when the update expected it to be absent.

How to Fix

Review your dynamic update prerequisites. If you expect to create a new name, remove the existing records first or change the prerequisite to allow existing names.

Description

Bad or missing server cookie. The DNS COOKIE option in the request is absent, malformed, or does not match the server's expected value.

When You See It

Your resolver sent a query without a valid server cookie, or the cookie has expired. This is part of the DNS COOKIE mechanism to prevent spoofed-source attacks.

How to Fix

Retry the query — most resolvers automatically learn the correct server cookie from the first response. If the error persists, ensure your resolver supports RFC 7873 DNS Cookies.

Key Differences

1.

DNS 6: Name Exists when it should not. Used in dynamic updates to indicate a name that should not exist already has records.

2.

DNS 23: Bad or missing server cookie. The DNS COOKIE option in the request is absent, malformed, or does not match the server's expected value.

3.

You encounter 6 when a DNS UPDATE prerequisite check failed because the domain name already exists when the update expected it to be absent.

4.

You encounter 23 when your resolver sent a query without a valid server cookie, or the cookie has expired. This is part of the DNS COOKIE mechanism to prevent spoofed-source attacks.

When to Use Which

For 6 (YXDOMAIN): Review your dynamic update prerequisites. If you expect to create a new name, remove the existing records first or change the prerequisite to allow existing names. For 23 (BADCOOKIE): Retry the query — most resolvers automatically learn the correct server cookie from the first response. If the error persists, ensure your resolver supports RFC 7873 DNS Cookies.

Learn More