카테고리 없음2013. 6. 20. 10:46

 

09. 네임 서버 설치 및 운영

Section 01. 네임 서버 개념

 

 

이 절에서는 네임 서버가 어떤 역할을 하는지, 인터넷에서 어떻게 작동하는지

그 개념을 파악하도록 하자.

개념만 파악하면 설치와 운영은 그다지 어렵지 않다.

 

 

| 네임 서버 개요 

네임 서버는 DNS(Domain Name System) 서버라고도 한다.

 

네임 서버의 역할을 간단히 얘기하면 다음과 같다.

우리가 웹 브라우저나 FTP 클라이언트를 사용할 때 http://www.fedoraproject.org 또는 ftp://mirrors.kernel.org/ 등과 같은 URL을 사용하게 된다.

실제 원하는 서버에 접근하려면 이 URL을 해당 컴퓨터의 IP주소로 변환시켜야 하는데, 바로 이 일을 네임 서버 또는 DNS 서버라고 하는 컴퓨터가 담당한다.

 

다음과 같이 www.fedoraprojuct.org를 IP주소로 변환하는 과정을 이름 해석(Name Resolution)이라고 한다.

www.fedoraprojuct.org -> 209.132.176.122

 

네트워크에서 컴퓨터를 구분하는 유일한 방법은 IP주소다.

즉, 인터넷에 연결된 모든 컴퓨터는 중복되지 않는 IP주소를 가지고 있다.

 

그러므로 만약에 여러분이 자주 접속하는 웹 서버나 FTP 서버의 IP주소를 모두 알고 있다면

DNS 서버(네임 서버)를 사용할 필요가 없다.

 

오히려 www.fedoraproject.org를 209.132.176.122와 같은 IP주소로 알아내기 위한 과정이

생략되기 때문에 인터넷 속도가 더 빨라질 것이다.

그러나 웹 서핑을 할 때 URL주소를 사용하지 않고, IP 주소를 외워서 사용하는 경우는

특수한 목적 외에는 거의 없을 것이다.

 

 

네임 서버를 전반적으로 이해하기 위해서 다음과 같은 상황을 가정해보자.

 

초창기 인터넷이 생겼을때는 인터넷에 연결된 컴퓨터가 그리 많지는 않았을 것이다.

그래서 인터넷에서 상대 컴퓨터에 접속하기 위해서 IP 주소를 메모지나 수첩에 적어놓고

접속했을지도 모른다. (아니면 외웠다거나)

 

어차피 접속할 컴퓨터가 많지는 않았기 때문에 이렇게 해도 큰 혼란이나 불편은 오지 않았을 것이다.

 

[가장 초기의 네트워크 접속 방법]

 

그러다가 인터넷에 연결된 컴퓨터가 수십, 수백 대가 되자 수첩에 적어놓는 방식이나 외우는

방식으로는 한계를 느꼈을 것이다.

그래서 이젠 수첩이나 메모지에 적었던 내용을 컴퓨터에 저장을 하기 시작한다.

그 파일이 바로 "hosts" 파일이다.

 

"hosts" 파일의 예를 보면 다음과 같다.

127.0.0.1          localhost

::1                  localhost

102.54.94.97     rhino.acme.com

38.25.63.10      x.acme.com

 

"hosts" 파일은

Windows에서는 "C:\Windws\system32\drivers\etc\hosts"로

리눅스에서는 "/etc/hosts"로 존재한다.

지금도 "hosts" 파일은 종종 사용되고 있다.

 

host 파일이 존재하는 경우, 웹 브라우저에서 URL 주소를 입력하면 hosts 파일을 검색하여

해당 URL에 대응하는 IP주소를 얻을 수 있게 되었다.

위 hosts 파일을 예로 들면, 웹 브라우저에서 rhino.acme.com을 입력하면 102.54.94.97의 IP를 얻게 되어 해당 컴퓨터로 접속할 수 있게 된다.

 

[hosts 파일을 이용하여 네트워크 접속]

 

 

이렇듯 어느 정도의 규모에서는 "hosts" 파일이 해결책이 될 수는 있었지만, 기하급수적으로 늘어나는 네트워크 상의 컴퓨터에 대한 모든 IP 정보를 파일 하나에 기록하는 것은 무리가 있다.

또한, 전에는 1.1.1.1이라는 IP를 가진 컴퓨터의 이름이 AAA였는데, IP가 1.1.1.2로 바뀌었다면 사용자는 직접 자신의 hosts 파일을 열어서 새로운 정보로 수정해 줘야 한다.

 

 

 

 

그래서 이름 해석(Name Resolution)을 전문적으로 해 주는 서버 컴퓨터가 필요해졌다.

그리고 이 역할을 하는 컴퓨터를 네임 서버 또는 DNS 서버라고 부르게 되었다.

전화번호와 비교한다면 아마도 전화 안내 서비스인 114와 같은 역할을 한다고 할 수 있다.

 

예를 들어 '피자헛'이라는 이름(URL이름이라고 생각하자)으로 물어보면,

'피자헛'의 전화번호(IP주소)를 나에게 정확히 알려준다.

 

네임 서버는 인터넷에서 변화하는 모든 컴퓨터의 URL과 IP 정보를 거의 실시간으로 제공하므로

사용자는 더 이상 URL에 해당하는 IP주소를 신경 쓸 필요가 없어졌다.

즉, URL만 알고 있으면 어디서든지 해당 컴퓨터에 접속을 할 수 있게 되는 것이다.

 


[네임 서버를 이용하여 네트워크 접속]

 

위의 그림 처럼 사용자는 10.10.10.10이라는 네임 서버의 IP주소만 알고 있으면

(='114' 라는 전화번호만 알고 있으면)

언제든지 해당하는 URL(피자헛)의 IP정보(전화번호)를 알아낼 수 있는 것이다.

 

 

Posted by 아이맥스