단일 DNS 응답에 A 레코드와 cname 레코드가 모두 포함될 수 있습니까? 그렇다면 이는 비정상적인 것으로 간주됩니까, 아니면 일반적인 행동입니까?
답변1
A
참조하는 레코드가 쿼리 이름이 아닌 표준 이름(레코드의 "대상")에 대한 것이라면 이는 CNAME
완전히 정상입니다.
그러나 이는 반품 기준 CNAME
및 A
기타 기록을 위반하는 것입니다.같은이름.
유효한 예:
foo.example.com. 3600 IN CNAME bar.example.com.
bar.example.com. 3600 IN A 192.0.2.1
유효하지 않은예(낙심하지 말고,유효하지 않은):
foo.example.com. 3600 IN CNAME bar.example.com.
foo.example.com. 3600 IN A 192.0.2.1
답변2
이는 비정형적이며 실제로 RFC에 위배됩니다. 존재하는 경우 CNAME
동일한 결과에 대한 다른 유형의 레코드가 없어야 합니다.
답변3
유효한 DNS 응답이 아니라는 것을 확인할 수 있으며 해결 방법은 우연에 달려 있습니다. 이 작업을 수행하는 DNS 서버 관리자라면 A 또는 CNAME(가능한 경우 A)을 사용하십시오.
참고: 다른 유형이나 레코드의 조합을 반환할 수 있습니다.또는CNAME이지만 CNAME을 반환하면 반환할 수 없습니다.어느DNSSEC 서명을 제외한 다른 종류의 기록이 있으며 RRSIG
, 작동 중인 DNS 확인자는 답변을 전혀 심각하게 받아들이지 않으려고 시도하면 여러 번 발작을 일으킬 것입니다.