DNS와 자원


도메인 네임과 네임 서버

domain name : 호스트의 IP 주소와 대응되는 문자열 형태의 호스트 특정 정보 (ex. www.example.com) DNS 서버: 도메인 네임을 관리하는 네임 서버

도메인 네임은 IP 주소에 비해 기억하기 쉬울뿐더러, IP 주소가 바뀌더라도 바뀐 IP 주소에 도메인 네임을 다시 대응하면 되므로 IP 주소만으로 호스트를 특정하는 것보다 간편

glob.gif

root domain : “.”, 점(.)으로 표현되며 도메인 네임의 마지막에 점이 찍힌 형태로 표기 Top-Level Domain : “com”, 도메인 네임의 마지막 부분 2단계 도메인: 최상위 도메인의 하부 도메인 3단계 도메인: 2단계 도메인의 하부 도메인 Fully-Qualified Domain Name: 도메인 네임을 모두 포함하는 도메인 네임을 전체 주소 도메인 네임이라고 함

위와 같이 도메인 네임이 계층적인 형태를 띤다. 계층적인 도메인 네임을 관리하기 위해 네임 서버 또한 계층적인 형태를 이룬다. 이렇게 계층적이고, 분산된 도메인 네임에 대한 관리 체계를 도메인 네임 시스템(DNS)라고 부른다.

계층적 네임 서버

local name server : 클라이언트와 맞닿아 있는 네임 서버로, 클라이언트가 도메인 네임을 통해 IP 주소를 알아내고자 할 때 가장 먼저 찾게 되는 네임 서버 root name server : 루트 도메인을 관장하는 네임 서버로, 질의에 대해 TLD 네임 서버의 IP 주소를 반환 TLD name server : TLD를 관리하는 서버 authoritative name server : 특정 도메인 영역을 관리하는 네임 서버로, 자신이 관리하는 도메인 영역의 질의에 대해서는 다른 네임 서버에게 떠넘기지 않고 답할 수 있는 서버

Untitled

로컬 네임 서버에게 도메인 네임을 질의하면, 로컬 네임 서버가 루트 네임 서버에게 질의하고, 루트 네임 서버가 TLD 네임 서버에게 질의하고, TLD 네임 서버가 다음 단계에 질의하는 과정을 반복하며 최종 응답 결과를 역순으로 전달받는 방식.

클라이언트가 로컬 네임 서버에게 IP 주소를 알고 싶은 도메인 네임을 질의하면, 로컬 네임 서버는 루트 도메인 서버에게 질의해서 다음으로 질의한 네임 서버의 주소를 응답받고, 다음으로 TLD 네임 서버에게 질의해서 다음으로 질의할 네임 서버의 주소를 응답받는 과정을 반복하다가 클라이언트에게 결과를 알려줌

DNS cache : 네임 서버들이 기존에 응답받은 결과를 임시로 저장했다가 추후 같은 질의에 이를 활용하는 경우

자원을 식별하는 URI

resource : 네트워크상의 메시지를 통해 주고받는 대상

URI : uniform resource identifier, 자원을 식별할 수 있는 정보, 위치를 이용해 자원을 식별하는 방법은 URL(uniform resource locator), 이름을 이용해 자원을 식별하는 건 URN(Uniform Resource Name)