더북(TheBook)

2.7.2 DNS

DNS(domain name system, 도메인 네임 시스템) 프로토콜은 도메인과 서브도메인 네임을 IP 주소로 해석하는 데 사용한다. 사용자들이 구글로 검색을 할 때 브라우저에 www.google.com이라고 입력하지 74.125.224.112 식으로 입력하지는 않을 것이다. 도메인 네임을 IP 주소로 해석하기 위해, 브라우저는 먼저 미리 컴퓨터에 설정된 네임 서버의 IP 주소로 DNS 질의를 날린다.

네임 서버(name server)는 여러 도메인 네임에 대응되는 IP 주소 목록을 가지고 있다. 예를 들어 네임 서버 중 하나에 www.google.com의 IP 주소가 74.125.224.112로 매핑되어 있을 것이다. 인터넷엔 수천수만 개의 네임 서버가 존재하는데, 대부분은 자신이 관할하는 영역의 도메인과 서브도메인의 주소만 가지고 있다. 네임 서버는 여러 다른 네임 서버에 대한 포인터를 가지고 있어서, 자신이 관할하지 않는 도메인을 요청받으면, 그쪽을 관할하는 네임 서버로 요청을 계속 전달해 가며 찾는다. 한 번 찾은 결과는 대개 캐싱해 두어, 다음번 같은 요청이 또 오면 여기저기 물어보지 않고 바로 답해준다.

DNS 요청과 응답은 보통 UDP 포트 53으로 주고받는다. DNS 형식은 2.11 더 읽을거리 절의 RFC 1035에 정의되어 있다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.