blog.hanamon.kr을 생성하기 위해서는hanamon.kr도메인을 관리하는 네임 서버의 레코드만을 수정함으로써 가능하다.
이러한 위임 구조는 호스트의 증가에 대한 관리가 효율적으로 이루어지는 것을 가능하게 한다.
hanamon.kr은 kr 도메인을 관리하는 네임 서버에 등록되어있는데 해당 하위 기관은 가비아로 되어있다.
하나몬은www.hanamon.kr을 만들기 위해서 가비아에 가서 도메인 레코드에 하위 도메인을 추가하면 된다. (가비아가 하위 기관이다.)
(그래서 AWS 같은 호스팅에서 가비아에서 구매한 도메인을 사용하려한다면 route53에 생성된 네임서버를 가비아 도메인에 추가해야한다. “해당 도메인에 대한 IP 주소를 route53 네임서버에서 찾으시오”같은 것이다. route53에서는 해당 인스턴스나 버킷 등으로 연결되어있다.)
(또는 카페24 같은 호스팅에서 가비아에서 구매한 도메인을 사용하려한다면 카페24의 네임 서버를 가비아 도메인에 추가해야한다. “해당 도메인에 대한 IP 주소를 카페24 네임서버에서 찾으시오” 같은 것이다. 그리고 카페24에도 해당 도메인을 연결한다. “카페24에 추가가 가능하군요 추가하겠음, 그리고 사용중인 호스팅에 연결하세요”하면 끝난다.)
문자열로 표현된 도메인 이름을 실제 컴퓨터가 통신할 때 사용하는 IP 주소로 변환시키기 위해서는 도메인 네임 스페이스의 트리 구조에 대한 정보가 필요한데, 이러한 정보를 가지고 있는 서버를 네임 서버라고 한다.
가비아, route53 등
AWS와 같은 호스팅에서 가비아에서 구매한 도메인을 사용하려고 한다면 route53에 생성된 네임 서버를 가비아 도메인에 추가해야 한다.
“해당 도메인에 대한 IP 주소를 route53 네임 서버에서 찾으세요.”
전 세계 13개 Root DNS 서버가 구축되어 있다.
패킷의 실질적인 크기 제한으로 인해 13 개로 제한 된다.
DNS 서버를 복사하여 같은 기능을 담당하는 미러 서버가 있다.
Root DNS 서버
ICANN이 직접 관리하는 서버
TLD DNS 서버 IP 주소를 저장하고 안내하는 역할
Top Level Domain(TLD) DNS 서버
도메인 등록 기관이 관리하는 서버
Authoritative DNS 서버의 주소를 저장하고 안내한다.
Second Level Domain (SLD) DNS 서버
== Authoritative DNS 서버
실제 개인 도메인과 IP 주소의 관계가 기록(저장/변경)되는 서버
도메인/호스팅 업체의 네임 서버
권한이 없는 DNS 서버
리졸버서버
질의를 통해 IP 주소를 알아내거나 캐시한다.
권한이 있는 DNS 서버(Root, Top-Level, Second-Level DNS 서버)는 IP 주소와 도메인 이름을 매핑하고, 권한이 없는 서버(리졸버)는 질의를 통해 IP 주소를 알아내거나 캐시한다.
3. 리졸버 (Resolver)
수많은 네임서버에 접근하여 사용자로부터 요청 받은 도메인의 IP 정보를 조회하는 기능을 수행
DNS 클라이언트 요청을 네임 서버로 전달
검색 결과를 클라이언트에게 제공
하나의 네임 서버에 정보가 없으면 다른 네임 서버에 요청을 보내 정보를 받아온다.
리졸버 기능을 단말에 구현하는 것은 자원의 한계가 있기 때문에 대부분 기능을 DNS 서버에 구현한다.
이러한 단순화된 기능의 리졸버를 스터브 리졸버(Stub Resolver)라고 하며, 스터브 리졸버는 수 많은 네임 서버의 구조를 파악할 필요없이 리졸버가 구현된 DNS 서버의 IP 주소만 파악하면 된다.
클라이언트 호스트에서 설정하는 DNS 서버(Recursive DNS Server)는 이와 같은 서버를 의미하는 것으로, 도메인에 대한 질의를 받은 스터브 리졸버는 설정된 DNS 서버로 DNS Query(질의)를 전달하고 DNS 서버로부터 최종 결과를 응답 받아 웹 브라우저로 전달하는 인터페이스 기능만을 수행한다.
동작 방식 및 과정
전체 과정
도메인의 수는 매우 많기 때문에 하나의 서버에서 관리하기 어렵다. 따라서 DNS는 다음의 과정을 거쳐 IP주소를 얻는다.
주소창에 www.naver.com을 입력하면 DNS resolver가 도메인 주소를 받는다.