본문 바로가기

computer

네임 서버 (a.k.a. DNS)

네임서버는 사람이 인식하기 쉽도록 IP와 도메인이름을 연결하는 시스템이다. 도메인 네임 시스템 (Domain Name System, DNS)이라 부르고 이 시스템을 운영하는 서버를 네임서버라 한다.

IP주소로 웹페이지의 서버에 접근하기에는 사용성이 떨어진다. 그림과 같이 naver.com의 IP 주소인 111.222.333.444를 통해 네이버를 이용한다면 접근성이 매우 낮아질 것이다. IP 주소와 도메인의 매핑테이블을 이용하면 인터넷 사용자는 도메인 주소로 웹 서비스에 쉽게 접속할 수 있다. 

DNS 매핑 테이블 예시 (A 레코드)

도메인 이름과 IP 주소를 직접 매핑하는 것을 A 레코드라고 한다.

서브 도메인은 도메인의 일부로 도메인의 소유자는 서브도메인을 통해 웹 서비스에 기억하기 쉬운 주소를 제공한다. hosting.kr의 서브도메인으로 blog, mail 등을 붙여 blog.hosting.kr, mail.hosting.kr을 만들 수 있다. 사용자는 hosting.kr이 제공하는 블로그(blog), 메일(mail) 서비스를 직관적으로 받아들일 수 있다. 

CNAME 테이블 예시

CNAME으로 서브 도메인 관리를 편리하게 할 수 있다. CNAME으로 서브도메인을 구축하면 hosting.kr - 서브도메인을 매핑하고 최종적으로 hosting.kr - IP주소를 매핑하면 된다. 서비스의 IP주소가 바뀌면 hosting.kr - IP주소를 변경하면 간단하게 서브도메인의 주소도 변경된다.

A 레코드로 모든 서브도메인을 직접 IP주소와 매핑하는 경우에는 주소가 변경될 때 적용된 매핑을 일일히 바꾸는 불편함을 감수해야한다.

 

DNS를 운영하는 네임서버의 신뢰성은 매우 중요하다. 신뢰할 수 없는 네임서버는 해킹의 위험에 노출되어 있기 때문에 DNS 레코드를 안정적으로 관리하는 공증된 서비스(Domain host)를 이용하는 것이 좋다. 국내에서는 KT DNS, SK Broadband, LG U+ 등이 네임서버를 운용하고 있다. 규모가 큰 기업이나 기관은 직접 네임서버를 운용하기도 한다.

 

도메인 주소 체계를 이해하기 위해 인터넷 사용자가 홈페이지에 접근하는 과정을 생각해보자. 클라이언트가 웹브라우저에서 목적지 도메인을 입력하면 도메인을 분석하여 목적지를 찾아나선다.

브라우저에서 웹페이지 요청

도메인 이름 (domain name)은 www. 다음에 표시된다. 위 그림에서는 hosting.kr이다. 도메인 체계는 역트리 구조로 관리 되는데, 도메인 체계의 형태를 통해 도메인 주소의 매핑정보가 위치한 곳을 줄여나갈 수 있다. hosting.kr를 입력하면 국가 도메인인 kr 을 관리하는 서버에서 희망 문자열인 hosting을 확인할 것이다. 목적에 따라 2단계 도메인으로 회사 .co, 정부 .go, 기관 .or 등을 사용할 수도 있다.

도메인 체계 (KISA 도메인이란? 제공)

 

인터넷주소 관리기관인 KISA의 whois 서비스에서 hosting.kr을 검색하면 도메인에 대한 다양한 정보를 알 수 있다. 검색결과에서 1차 네임서버 정보, 2차 네임서버 정보를 확인할 수 있는데, 네임서버는 도메인 서비스를 안정적으로 제공하기 위해 보통 2가지 이상을 병렬적으로 사용한다.

whois 검색결과

.org의 경우 whois에서 조회를하면 등록정보 대부분이 REDACTED FOR PRIVACY라고 나온다. 호스팅 업체에 문의한 결과 유럽쪽 개인보호 정책이 바뀌면서 정보를 제공하지 않는다고 한다.

 

Reference

https://mypage.domainclub.kr/faq_view.htm?category2=faq&no=95 

https://namu.wiki/w/DNS

https://support.google.com/a/answer/2573637?hl=ko

https://xn--3e0bx5euxnjje69i70af08bea817g.xn--3e0b707e/jsp/resources/domainInfo/domainInfo.jsp

https://dev.plusblog.co.kr/30