DNS (Domain Name System) 서버 Cmdlet의 작은 문제


9

캐시 나 일부 문제를 해결해야하는지 궁금합니다.

DNS 영역에서 A 레코드를 제거하고 동일한 호스트 이름을 가진 CName 레코드로 바꾸려고합니다.

Remove-DnsServerResourceRecord -Zonename $line -InputObject $record -Force
Add-DnsServerResourceRecordCName -Zonename $line -Name $hostname -TimeToLive $ttl -HostNameAlias $target

이것은 나를 던졌습니다 :

Add-DnsServerResourceRecordCName : NS01 서버의 zone.tld 영역에 @ 리소스 레코드를 만들지 못했습니다. C : \ admin \ updatettl.ps1 : 56 char : 4 + Add-DnsServerResourceRecordCName -Zonename $ line -Name $ hostname> -TimeToLive ... + ~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : ResourceExists : (@ : root / Microsoft / ... urceRecordCName)> [Add-DnsServerResourceRecordCName], CimException + FullyQualifiedErrorId : WIN32 9709, Add-DnsServerResourceRecordCName

어떤 아이디어? 감사

답변:


9

Microsoft DNS 서버를 구현하면 RFC 1034 §3.6.2 에 따라 영역 정점에서 CNAME을 만들 수 없습니다 .

당신이받는 오류 (9709, DNS_ERROR_CNAME_COLLISION)는 약간 비밀 스럽지만 어쨌든 추가 할 수는 없습니다.

반면에 CNAME RR을 정점에 배치하면 영역에 대한 NS 및 SOA 레코드와의 충돌이 효과적으로 발생합니다.이 시점에서 오류가 의미가 있습니다.


맞습니다. @에 CName을 만들려고하면이 오류가 발생하지만 호스트 이름이 "www"와 같이 설정되어 있으면 아무런 문제가 없습니다. 감사!
Elfar Alfreðsson
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.