인터넷에 연결된 리소스에 대한 계층적이고 분산된 이름 지정 시스템
DNS는 도메인 이름 목록 과 연결된 리소스(예: IP 주소)를 유지 관리를 한다.
DNS의 가장 두드러진 기능은 인간에게 친숙한 도메인 이름(www.example.com)을 숫자 IP 주소(192.168.1.0)로 변환하는 것
DNS 시스템은 이름과 숫자 간의 매핑을 관리하여 마치 전화번호부와 같은 기능
DNS 서버는 사용자가 도메인 이름을 브라우저에 입력하면, 사용자를 어떤 서버에 연결할 것인지 제어
DNS 서비스 유형
- 신뢰할 수 있는 DNS
개발자가 퍼블릭 DNS 이름을 관리하여 사용하는 업데이트 메커니즘을 제공
이를 통해 DNS 쿼리에 응답하여 도메인 이름을 IP 주소로 변환
신뢰할 수 있는 DNS는 도메인에 대해 최종 권한을 가짐
재귀적 DNS 서버에 IP 주소 정보가 담긴 답을 제공해야함
- 재귀적 DNS
보통의 클라이언트는 신뢰할 수 있는 DNS 서비스에 직접 쿼리를 수행하지 않음
해석기 또는 재귀적 DNS 서비스라고 알려진 다른 유형의 DNS 서비스에 연결 하는 경우가 일반적
재귀적 DNS 서비스는 사용자의 취향에 맞는 정보를 제공하고 불편을 막아주는 해결사
DNS 레코드를 소유하고 있지 않지만 사용자를 대신해서 DNS 정보를 가져올 수 있는 중간자의 역할
일정 기간 동안 캐시된 또는 저장된 DNS 레퍼런스를 가지고 있는 경우, 소스 또는 IP 정보를 제공하여 DNS 쿼리에 답을 하거나, 해당 정보를 찾기 위해 쿼리를 하나 이상의 신뢰할 수 있는 DNS 서버에 전달
DNS 동작 원리
- 브라우저에서 도메인 이름을 입력하면 Local DNS에게 도메인이름(hostname)에 대한 IP 주소 요청
- Local DNS에 hostname이 저장되어 있다면 응답 후 종료
- 없다면 다른 DNS 서버들과 통신 시작하며, 처음으로는 Root DNS서버에게 요청
- Root DNS 는 전세계에 13대가 구축되어있으며 우리나라의 경우 Root DNS는 없고 미러 서버를 3대 운용중
- Root DNS도 저장된 정보가 없을시 Local DNS에게 com 도메인을 관리하는 DNS 서버에게 요청하라고 답변
- Local DNS 는 com 도메인을 관리하는 DNS 서버에게 hostname에 대한 IP 주소 요청
7.com 도메인 관리하는 DNS 에도 해당정보는 없을 시 hostname.com 도메인을 관리하는 DNS 서버에게 요청하라고 답변
- Local DNS 는 hostname.com 도메인을 관리하는 DNS 서버에게 hostname에 대한 IP 주소 요청
- hostname.com 도메인을 관리하는 DNS 서버에는 1번 호스트네임에 대한 IP 주소가 있으므로 Local DNS 서버에게 hostname에 대한 IP 주소 222.122.195.6 이라고 응답
- 수신한 Local DNS 는 www.hostname.com 에 대한 IP 주소를 캐싱 하고 IP 주소 정보를 단말(PC)에 전달