DNS 8 NXRRSET vs 20 BADNAME
Both DNS 8 (NXRRSET) and 20 (BADNAME) belong to the DNS Response Codes (RCODEs) category. 8 indicates that rR Set that should exist does not. A required resource record set is missing from the zone. Meanwhile, 20 means that duplicate key name. The key name in a TKEY negotiation is already in use or conflicts with an existing key.
설명
RR Set that should exist does not. A required resource record set is missing from the zone.
이 코드를 보게 되는 경우
A DNS UPDATE prerequisite expected a certain RRset to exist (e.g., an MX record), but the zone does not contain it.
해결 방법
Create the missing RRset in the zone before retrying the update, or change the prerequisite to not require its existence.
설명
Duplicate key name. The key name in a TKEY negotiation is already in use or conflicts with an existing key.
이 코드를 보게 되는 경우
A TKEY key establishment failed because a key with the same name already exists on the server from a previous session that was not properly cleaned up.
해결 방법
Use a unique key name for each TKEY session (e.g., append a timestamp or random suffix). Delete stale keys on the server if they are no longer needed.
주요 차이점
DNS 8: RR Set that should exist does not. A required resource record set is missing from the zone.
DNS 20: Duplicate key name. The key name in a TKEY negotiation is already in use or conflicts with an existing key.
You encounter 8 when a DNS UPDATE prerequisite expected a certain RRset to exist (e.g., an MX record), but the zone does not contain it.
You encounter 20 when a TKEY key establishment failed because a key with the same name already exists on the server from a previous session that was not properly cleaned up.
언제 어떤 것을 사용할지
For 8 (NXRRSET): Create the missing RRset in the zone before retrying the update, or change the prerequisite to not require its existence. For 20 (BADNAME): Use a unique key name for each TKEY session (e.g., append a timestamp or random suffix). Delete stale keys on the server if they are no longer needed.