개발서/서버의 기본

4-03 DNS 서버의 역할

nohesitation 2020. 7. 31. 08:08

인터넷에서는 컴퓨터를 식별하기 위해 IP 주소를 사용하는데, 이는 "10.1.1.1"과 같이 4개의 숫자를 점으로 연결한 형태로 이 주소만 봤을 때 무엇을 의미하는지 알기가 힘들다. 

때문에 IP주소에 도메인명이라는 것을 붙여서 알아보기 쉽게 만드는데, 이 때 IP 주소와 도메인명을 변환해주는 역할을 하는 것이 바로 DNS(Domain Name System)이다.

 

# 도메인명은 트리구조

도메인명은 "www.example.co.kr"과 같이 점으로 나누어진 문자열로 구성되어 있다.

이 때 하나의 문자열을 라벨이라고 부르며, 오른쪽부터 "탑 레벨 도메인", "제2 레벨 도메인", "제3 레벨 도메인"과 같이 말한다.

라벨은 "루트"를 정점으로 해서, "탑 레벨 도메인", "제1 레벨 도메인", "제2 레벨 도메인"과 같은 트리 구조로 되어 있어서, 오른쪽부터 왼쪽 방향으로 라벨을 쫓아가면 대상이 되는 서버까지 알 수 있게 된다.

 

# DNS 서버는 2종류

DNS 서비스를 제공하는 서버를 DNS 서버라고 한다.

DNS 서버는 "캐쉬 서버"와 "컨텐츠 서버"로 나누어진다.

캐쉬 서버는, LAN 내에 있는 클라이언트에게 요청을 받아, 대신 인터넷에 요청하는 DNS 서버로, 클라이언트가 인터넷에 액세스하려고 할 때 사용한다.

컨텐츠 서버는, 외부의 호스트로부터 자신이 관리하는 도멘인에 대한 요청을 받는 DNS 서버로, 자신의 도메인내 호스트 명을 "Zone File"라고 부르는 데이터베이스에서 관리한다. 

 

클라이언트에게 요청을 받은 캐쉬 서버는 요청 받은 도메인명을 오른쪽부터 차례대로 검색해서, 그 도메인명을 관리하는 컨텐츠 서버를 찾은 뒤, 호스트명 + 도메인명 (FQDN)에 대응하는 IP 주소를 전달받는 처리가 반복된다.

'개발서 > 서버의 기본' 카테고리의 다른 글

4-05 Work Group과 Active Directory 도메인  (0) 2020.08.05
4-04 DNS서버의 다중화  (0) 2020.08.04
4-02 DHCP 서버의 역할  (0) 2020.07.30
4-01 사내 서버 배치  (0) 2020.07.30
3-11 가상 Appliance 서버  (0) 2020.07.29