이름과 접속 대상을 연결하기
브라우저에 도메인 이름을 입력하면 그 이름에 대한 정보를 조회하는 과정이 필요하다. DNS는 이때 IP 주소 등을 찾는 데 쓰인다. 그러나 DNS 응답이 웹페이지의 내용 자체를 전달하는 것은 아니다. 실제 페이지 요청은 이후 별도의 통신으로 이루어진다.
관리 권한을 나누는 방식
도메인 이름은 점으로 나뉜 계층을 갖는다. 상위 영역은 하위 영역의 관리 권한을 위임할 수 있고, 각 권한 있는 서버는 자신이 맡은 영역의 정보를 제공한다. 모든 이름을 한 서버가 직접 보관하는 구조와는 다르다.
사용자 기기는 보통 재귀 확인자를 통해 조회한다. 확인자는 필요한 이름 서버에 질의하거나 이미 보관한 응답을 이용해 결과를 돌려준다.
같은 이름의 여러 레코드
A 레코드는 IPv4 주소, AAAA 레코드는 IPv6 주소와 연결된다. MX는 메일을 처리할 서버에 관한 정보를, CNAME은 다른 이름에 대한 별칭을 표현한다. 도메인 이름 하나가 하나의 고정된 컴퓨터와만 대응하는 것은 아니다.
변경이 즉시 보이지 않는 이유
응답에는 캐시에 보관할 시간을 정하는 TTL이 사용된다. 권한 있는 서버의 정보를 바꾸어도 이전 응답을 가진 확인자는 일정 시간 동안 그 정보를 사용할 수 있다. 따라서 변경 반영 시간을 살필 때는 서버의 설정과 캐시의 남은 수명을 함께 봐야 한다.
DNS 조회가 성공하는지, 연결한 서버가 응답하는지, 웹 서비스가 정상 동작하는지는 서로 다른 단계의 문제다. 장애를 구분하려면 각 단계의 결과를 따로 확인한다.