강좌 & 팁
오늘은 도메인과 그와 관련된 도메인 네임 서버 그리고 HOSTS 파일 및 그와 관련된 내용에 대하여 간단하게 알아 보도록 하겠습니다.
도메인 이란?
여러분들은 ‘www.google.com’ 과 같은 인터넷 주소, 다른 말로 하면 URL(Uniform Resource Locator) 즉, 사이트명에 대해 매우 익숙할 것이라고 생각됩니다.
다시 말해 도메인 네임이 내부적으로는 IP 주소로 변환되어 컴퓨터가 이를 이해한다는 정도도 알고 있을 것이라 생각됩니다.
이 중에서 우리는 ‘www.google.com’ 이라고 영문으로 쓰고 있는 것 자체를 도메인이라고 합니다.
도메인에 대하여 보다 쉽게 이해하기 위해서 전화기를 생각해 보기로 합시다.
일반적으로 내가 상대방에게 전화를 건다고 하면 가장 필요한 정보는 전화번호 입니다.
그런데 요즘에는 친구들의 전화번호를 모두 기억하고 전화 하고 있는 사람은 거의 드물지 않을까 생각 합니다.
또는 요즘에는 스마트 폰의 발달로 인하여, 예전 보다는 전화번호를 스마트폰에 기록만 해두고 기억을 하지 않는 경우가 많을 것이라 생각 합니다.
그래서 전화기에는 친구의 이름과 그에 해당하는 전화번호를 저장해 두게 됩니다. 만일 전화를 걸 친구의 이름이 “김철수” 이었을 때 (동명이인이 핸드폰에 기록되어 있지 않고 오직 김철수라는 이름이 한명만 저장 되어 있다는 가정하에), “김철수”를 스마트폰 에서 이름을 입력을 하고 전화를 걸면, 스마트폰 에서는 “김철수” 친구의 이름에 해당하는 전화번호를 찾아서 자동으로 전화를 걸어 주게 됩니다.
위의 예와 같이 도메인도 이와 똑 같은 원리로 대입을 하여 생각 해 보면 쉽게 이해를 할 수 있습니다. 내가 찾으려고 하는 인터넷 상에 있는 컴퓨터 세상은 google.com과 같이 이름은 이해하지 못한다.
대신에 173.194.127.176과 같은 형식의 IP어드레스를 이해 하고 있습니다. 컴퓨터는 자신이 알고 있는 형태로만 불러 주어야지만 대답을 할 수 있습니다.
이렇듯 컴퓨터가 이해 할 수 있는 형태인 IP어드레스를 사람이 기억 하기 쉽고, 알기 쉬운 형태의 언어로 변환하는 작업이 필요 하게 됩니다.
아까 예로 든 전화기에서 친구의 이름을 도메인 이름인 www.google.com에 해당하고, 친구의 전화번호는 IP어드레스인 173.194.127.176에 해당 한다고 볼 수 있습니다.
시험 삼아 웹 브라우저의 주소창에 173.194.127.176을 입력해 보시기 바랍니다. 그러면, www.google. com를 입력한 것과 같이 구글의 홈페이지가 나타나게 됩니다.
참고1 : URL(Uniform Resource Locator)은 네트워크 상에서 자원이 어디 있는지를 알려주기 위한 규약이다. 흔히 일반적으로 웹 사이트 주소로들 알고 있지만, URL은 웹 사이트 주소뿐만 아니라 컴퓨터 네트워크상의 자원을 통칭 하여 표현 할 수 있다.
참고2 : IP 주소는 컴퓨터 네트워크에서 장치들이 서로를 인식하고 통신을 하기 위해서 사용하는 특수한 번호 입니다. 인터넷에 연결된 장치는 통신을 하기 위해서는 이 특수한 번호를 가지고 있어야 합니다. 일반적으로 IP 주소를 줄여서 IP라고 부르기도 하지만 IP( Internet Protocol)는 인터넷 규약 자체를 가리키는 말이기 때문에 엄밀하게는 구별해서 부르는 것이 맞습니다.
DNS ( Domain Name Service ) 서버 란?
웹 브라우저의 주소창에 도메인을 입력하면 제일 먼저 도메인에 해당하는 IP를 알아내야 합니다. 전세계에는 셀 수도 없을 만큼의 많은 도메인이 있다. 이 도메인을 모두 하나의 컴퓨터 안에 저장한다는 것은 거의 불가능 합니다.
이러한 것을 체계적으로 관리 하기 위하여 사용되는 것이 DNS 서버 입니다.
DNS는 Domain Name Service의 약자로 DNS 서버는 도메인에 대한 IP 정보를 가지고 있습니다.
사용자가 브라우저 주소창에 도메인을 입력하면 브라우저는 그 도메인에 해당하는 IP 주소를 찾기 위해서 DNS 서버에 접속합니다.
DNS 서버는 도메인에 대한 IP 주소를 알려줍니다.
IP 주소를 획득한 브라우저는 인터넷에 접속해서 IP 주소에 있는 컴퓨터를 찾아 갑니다.
그리고 사용자가 요청한 웹페이지를 서버 컴퓨터에게 요청합니다.
서버 컴퓨터에는 이러한 요청을 처리해서 응답할 수 있는 소프트웨어가 설치되어 있는데 그것이 웹 서버 입니다.
웹서버는 요청한 웹 페이지를 사용자에게 전달하고, 웹페이지가 브라우저 화면에 표시가 됩니다.
위의 설명한 내용은 아래의 그림을 보시면 쉽게 이해를 하실 수 있습니다.
인터넷 초창기에는 도메인이 많지 않았습니다. 그래서 컴퓨터에 hosts라는 파일을 만들고 이 파일에 도메인과
IP 주소를 쌍으로 기록하였습니다. 그리고 정기적으로 hosts 파일을 다운받아서 새로 갱신된 도메인을 등록했습니다.
하지만, 인터넷이 폭발적으로 팽창하면서 이런 방식으로는 도메인과 IP를 중계하는데 한계가 도달하면서
DNS 서버라는 개념이 등장한 것입니다.
DNS 서버를 사용하고 있는 현재 시점에도 hosts 파일은 남아있습니다. 이제는 특정한 도메인을 특정한 IP로 강제로 매칭시키는 작업 등을 하는데 사용합니다. 윈도우즈는 C:\windows\system32\drivers\etc 디렉토리 아래에 hosts 파일이 존재 합니다. Linux의 경우에는 /etc/ 디렉토리 아래에 hosts 파일이 존재 합니다. hosts 파일의 내용은 다음과 같은 형태를 띄게 됩니다. <IP 주소> <사용할 이름> 형태의 한줄로 적어두게 됩니다.