ARPANET 운영기구는 1983년 11월 연이어 작성된 RFC881(도메인 이름 도입 계획과 일정), RFC882(도메인 이름 개념 및 설비), RFC883(도메인 이름 세부 시행 원칙)의 문서를 통해 DNS의 도입의 서막을 열게 됩니다.
도메인 이름 시스템(Domain Name System)
앞서 살펴 보았듯, 호스트는 ‘숫자로 된 주소’이고 호스트와 호스트는 이 주소로 찾아 갈 수 있습니다. 그럼에도 불구하고 인간 기억의 편의성을 위해 숫자 주소를 문자화 된 ‘이름’으로 대체하였고, 모든 호스트의 숫자 주소와 그에 해당하는 호스트 이름 정보가 담긴 명부(hosts.txt)를 통하여 원하는 호스트에 접속하였습니다. 지금이야 기술력의 발전으로 엄청난 양의 정보를 빠른 속도로 처리할 수 있지만 80년대 초반만해도 현재와는 비교할 수 없을 정도로 느렸을 것입니다.
‘어떤 호스트나 프로그램은 별 어려움 없이 오늘 내로 호스트 테이블에 있는 모든 호스트명에 .ARPA라는 도메인을 추가할 수 있을 것이다. 그러나 어떤 호스트에서는 실질적인 문제가 발생할 수 있다. 예를 들어 호스트 테이블에 5백 개가 넘는 호스트 정보를 가지고 있는 경우, 추가로 .ARPA라는 도메인이 포함된 호스트 정보를 추가할 때 테이블의 저장 용량을 초과할 수도 있다.’
출처: RFC881(도메인 이름 도입 계획과 일정)
결국 NIC을 통한 전체 호스트의 정보 관리는 한계에 다다릅니다. 이러한 기존의 문제를 극복하고, 확장하는 미래에 대비할 새로운 시스템으로서 ‘DNS(Domain Name System)’가 도입됩니다. 그럼에도 불구하고 ‘모든 호스트가 인터넷 상의 개별 호스트의 이름 정보를 통해 접속을 유지할 수 있어야 한다’는 ARPANET의 기본 목적을 상기해야 할 것입니다.
DNS는 크게 ‘도메인 이름 공간(DOMAIN NAME SPACE), 도메인 네임 서버(Domain Name Server), 리졸버(Resolver)의 3가지 요소로 구성되어 있습니다. 각각의 명칭은 DNS 개발 초기의 명칭이며 현재에도 그대로 사용되고 있습니다. 리졸버의 경우, 기본적으로 호스트 내에 프로그램화되어 작동하므로 ‘도메인 이름 공간(DOMAIN NAME SPACE)과 도메인 네임 서버(Domain Name Server)에 대해서만 알아보겠습니다.
> DNS 구성 요소 – ① 도메인 이름 공간 (Domain Name Space)