라우터가 하위 도메인을 확인할 수 없습니다


0

example.com 및 sub.example.com과 같은 집에서 몇 개의 웹 사이트를 호스팅하고 있는데 DNS 레코드가 올바르게 설정되어 있지만 (라우터의 IP 주소를 가리키는 example.com의 레코드, (* ) 값이 'example.com'인 경우 라우터가 하위 도메인을 확인할 수없는 것 같습니다. 다음은 실제 도메인 및 하위 도메인 이름이 example.com 및 sub.example.com으로 대체 된 일부 드릴의 출력입니다.

~ $ drill example.com @8.8.8.8    
;; ->>HEADER<<- opcode: QUERY, rcode: NOERROR, id: 55521
;; flags: qr rd ra ; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 
;; QUESTION SECTION:
;; example.com. IN  A

;; ANSWER SECTION:
example.com.    899 IN  A   109.133.244.17

;; AUTHORITY SECTION:

;; ADDITIONAL SECTION:

;; Query time: 70 msec
;; SERVER: 8.8.8.8
;; WHEN: Fri Oct 13 10:06:23 2017
;; MSG SIZE  rcvd: 41


~ $ drill sub.example.com @8.8.8.8                                                                                                                  <<<
;; ->>HEADER<<- opcode: QUERY, rcode: NOERROR, id: 33949
;; flags: qr rd ra ; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0 
;; QUESTION SECTION:
;; sub.example.com. IN  A

;; ANSWER SECTION:
sub.example.com.    1799    IN  CNAME   example.com.
example.com.    899 IN  A   109.133.244.17

;; AUTHORITY SECTION:

;; ADDITIONAL SECTION:

;; Query time: 105 msec
;; SERVER: 8.8.8.8
;; WHEN: Fri Oct 13 10:06:33 2017
;; MSG SIZE  rcvd: 62


~ $ drill example.com @192.168.1.1
;; ->>HEADER<<- opcode: QUERY, rcode: NOERROR, id: 59107
;; flags: qr rd ra ; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 
;; QUESTION SECTION:
;; example.com. IN  A

;; ANSWER SECTION:
example.com.    781 IN  A   109.133.244.17

;; AUTHORITY SECTION:

;; ADDITIONAL SECTION:

;; Query time: 26 msec
;; SERVER: 192.168.1.1
;; WHEN: Fri Oct 13 10:06:43 2017
;; MSG SIZE  rcvd: 41

~ $ drill -V 10000 sub.example.com @192.168.1.1 
;; ->>HEADER<<- opcode: QUERY, rcode: NOERROR, id: 0
;; flags: rd ; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0 
;; QUESTION SECTION:
;; sub.example.com. IN  A

;; ANSWER SECTION:

;; AUTHORITY SECTION:

;; ADDITIONAL SECTION:

;; Query time: 0 msec
;; WHEN: Fri Oct 13 10:17:39 2017
;; MSG SIZE  rcvd: 0
Error: error sending query: Could not send or receive, because of network error

완전성을 위해 다음은 도메인과 관련된 DNS 레코드입니다.

@ 900 IN A 109.133.244.17
@ 10800 IN SOA ns1.gandi.net. hostmaster.gandi.net. 1507886704 10800 3600 604800 10800
sub 10800 IN CNAME example.com.
imap 10800 IN CNAME access.mail.gandi.net.
pop 10800 IN CNAME access.mail.gandi.net.
smtp 10800 IN CNAME relay.mail.gandi.net.
webmail 10800 IN CNAME webmail.gandi.net.

이 호기심을 일으키는 원인이 무엇인지 아는 사람이 있습니까?

감사합니다.

답변:


0

"기본"레코드에서 CNAME을 사용하는 것이 문제입니다. 일반적인 이름은 CNAME은 단순히 도메인을 다른 도메인으로 리디렉션하는 것이 아니라 해당 도메인에서 SOA를 위임 한 것이므로 일반적으로 www.example.com에서는 CNAME을 사용하지만 example.com은 사용하지 않는 것이 좋습니다. (규칙은 도메인 이름에서 CNAME을 사용하지 않으며 하위 도메인 만 사용함)

기술적 추론은 어렵다 -rfc1034의 3.6.2에 명시되어있다 . "도메인 시스템은 표준 이름 (CNAME) RR을 사용하여 이러한 기능을 제공합니다. CNAME RR은 소유자 이름을 별명으로 식별하고 RR의 RDATA 섹션에 해당 표준 이름을 지정합니다. CNAME RR이 노드에는 다른 데이터가 없어야합니다 . 이로 인해 정식 이름 및 그 별명에 대한 데이터가 다를 수 없습니다. 또한이 규칙은 캐시 된 CNAME을 다른 RR 유형에 대한 권한있는 서버에서 확인하지 않고 사용할 수 있도록합니다. "


1
OP는 그 반대의 일을하고있는 것 같습니다.
grawity

대단히 감사합니다! 나는 이런 종류의 것들에 대한 경험이 많지 않기 때문에 이해하고 있는지 확실하지 않습니다. "기본"레코드는 무엇을 의미합니까? 도움이 될 수 있도록 DNS 레코드를 추가했습니다.
Rastapopoulos

www.example.com에서는 CNAME을 사용할 수 있지만 example.com에서는 사용할 수 없습니다. 이 경우 example.com은 기본 레코드 (또는 영역 원점)입니다.
davidgo

@grawity-당신이 맞아요. 난 당신이 거의 같은 이유는 (내 대답에 강조) 뜨거운 와일드 카드에 대한 CNAME을 사용할 수 있습니다 수 있다고 생각하지 않습니다
davidgo

감사. 도메인 자체가 아닌 모든 하위 도메인에 레코드를 적용 할 수있는 방법이 있는지 알고 있습니까?
Rastapopoulos
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.