답변:
DNS 자체에는 루트 영역이 있습니다. 이 영역을 문자 그대로 "."라고했습니다. 바인드는 DNS 이름을 완전히 규정해야합니다 (. 또는 루트 영역 포함). 다른 UI는 루트 영역을 가정하여이를 단순화합니다.
바인드 내 ORIGIN
에서 FQDN (후행.을 포함한 완전한 도메인 이름)을 지정하지 않으면 자동으로 추가 되는 변수 를 정의 할 수 있습니다 . Alnitak 은 구문과 다양한 용도에 대한 탁월한 예를 보여줍니다.
.
. 빈 레이블입니다.
후행 '.' 이름을 "완전한 도메인 이름", 즉 절대 도메인 이름으로 만듭니다.
후행 '.'을 추가하지 않으면 표준 "마스터 파일 형식"파일에서 그런 다음 이름은 현재 영역 파일과 관련이있는 것으로 간주됩니다 $ORIGIN
(아래에 표시된대로 영역 파일에 지정되거나 다른 방법으로 zone
명령문에서 named.conf
가져옴).
즉
$ORIGIN example.com.
mail IN A 192.168.1.1
mail2 IN A 192.168.1.2
server IN A 192.168.1.3
@ IN MX 10 mail ; not FQDN - example.com. appended
IN MX 20 mail2.example.com. ; FQDN
IN MX 30 mail.example.net. ; FQDN in another domain
IN MX 40 mail2.example.net ; ERROR - not FQDN - example.com appended
www IN CNAME server ; not FQDN - example.com. appended
. 이름이 루트에 상대적이되게하고 이름이 없으면 현재 영역에 상대적이됩니다. 표준 영역 형식 은 rfc1035 및 rfc1034에 정의되어 있습니다.
everydns.net을 사용할 때 어떻게됩니까? 마침표를 추가하지 않아도됩니까?
이것이 구현 문제입니까?
예, easydns.net이 약간 기발한 것처럼 들립니다.
후행 점은 DNS 서버에게 이것이 정규화 된 이름임을 알려줍니다. 점은 DNS 계층의 근본입니다. 점을 사용하지 않으면 DNS 서버는 현재 영역의 레코드 인 것으로 가정하여 추가합니다. 예를 들어 exmaple.com에 host.example.org를 가리키는 CNAME이 있으면 쿼리 할 때 원하는 것이 아닌 host.example.org.example.com을 얻게됩니다.
everydns.net과 관련이없는 이유는 아마도 UI를 작성했기 때문에이 기술적 인 세부 사항에 대해 걱정할 필요가 없기 때문입니다.
fqdn에서 점은 실제 식별자입니다. "com"및 "edu", "hp"및 "stanford"는 임의의 구분 기호입니다. 점은 스핀으로 고유하게 식별됩니다.
짧은 대답 .. 글쎄, 여기에 솔직히 문서화되었습니다. :) 기본적으로 간결하게 "RFC에서는 그렇게 말합니다."
이 링크를보십시오