DNS lookup 관련
DNS 메커니즘은 대략 다음과 같은것으로 알고 있습니다.
예) www.host.com 으로 접속시
1. 프로그램이 www.host.com 으로 접속을 수행한다.
2. 소켓 API 가 호출되고 시스템 함수인 name resolution API 가 호출되면서 OS 에 설정된 DNS 서버 (로컬 네임 서버) 로 lookup 이 수행된다.
3. 로컬 네임 서버는 캐쉬에 해당 정보가 없다면 루트 네임 서버로 질의를를 한다.
4. 루트 네임 서버에서 com 최상위 도메인도 같이 관리하기 때문에 바로 host.com 네임서버를 참조하라고 응답을 보낸다.
5. 로컬 네임 서버는 다시 host.com 네임 서버로 질의를 보낸다.
6. host.com 네임 서버는 www 호스트에 대해 등록된 IP 정보를 보낸다.
7. 로컬 네임 서버는 시스템 API 로 해당 IP 를 리턴하고 최종 소켓 API 에서는 접속을 수행하게 된다.
여기서 제가 궁금한 것은, 도메인 등록시 네임 서버로 IP 가 아닌 도메인명으로 등록을 했을때 이에 대한 resolution 이 어떻게 수행되는가? 라는 것입니다.
즉, host.com 도메인 등록시 네임 서버로 dns.host.com 이 등록되어 있다면 이에 대한 IP 는 어떻게 찾아지는지요?
상기 예에서 4번 과정 루트 네임서버가 host.com 네임 서버를 참조하라고 응답을 줄 때 dns.host.com 의 IP 를 돌려주나요?
만약 그렇다면 루트 네임서버는 dns.host.com 의 IP 를 어떻게 아는것인지? 결국 host.com 네임 서버에 dns 호스트에 대한 IP 를 물어봐야 할 터인데 host.com 의 네임 서버 주소가 도메인으로 되어 있으니..
답변 부탁드립니다.
자답:
자답: http://www.kr.freebsd.org/doc/PoweredByDNS/PoweredByDNS.shtml 의 "2.3. 퍼블릭 도메인(Public Domain) 신청" 에 설명되어 있군요 ;-)
댓글 달기