본문 바로가기
FE/Web

Domain, DNS, Hosting

by ideal_string 2022. 10. 27.

도메인(domain)과 디앤에스(DNS), 그리고 호스팅(Hosting). 아마 이 세 가지는 사용자가 웹을 접속해 자료를 받는 짧은 순간을 모두 압축한 조합이라 볼 수 있다. 

Domain

도메인은 영도 혹은 분야, 영역 등의 의미를 갖고 있는 단어다. 다만 웹에서는 인터넷 주소이란 의미로 확장되었다. 도메인은 일반 사용자가 웹을 접속하는 데 편리함을 가져다 준다. 우리가 www.naver.com 으로 네이버를 접속하고, www.daum.net  으로 다음을 접속할 수 있다. 그러나 이곳에 들어온 분들 중 이 두 사이트의 IP주소를 알고 있는 사람이 있으신가? 아마도 없을게다. 000.000.000.000 같이 이런 복잡하고 어려운 숫자 모음을 굳이 외울 필요가 없으니까. 이렇게 도메인은 표면적으로 도메인 네임을 뜻한다.

도메인은 www.korea.or.kr을 예시로 든다면 점(.)을 기준으로 kr을 1차 도메인 또는 최상위 도메인, or를 2차 도메인, korea를 3차 도메인이라 부른다. kr은 ISO에서 규정한 ISO 3166-1 국가코드를 기준으로 받은 최상위 도메인이다. KRNIC에서 해당 도메인을 관리하고 있다. 우리가 알고 있는 com과 net은 VeriSign에서 관리한다. 즉, 최상위 도메인은 관리하는 기관과 국적에 따라 정책이 달라질 수 있다.

 

DNS

우리가 주소 대신 도메인 네임을 기억하고 다닐 수 있는 이유는 바로 DNS(Domain Name System) 덕분이다. DNS는 사람이 읽을 수 있는 도메인 이름(예: www.amazon.com)을 기계가 읽을 수 있는 IP 주소(예: 192.0.2.44)로 변환하는 역할이기 때문. 인터넷에 존재하는 모든 서버와 컴퓨터는 숫자를 통해 서로를 찾고 통신한다. 이런 숫자를 IP 주소라 부른다. 다만 웹 브라우저를 통해 이동하기 위해 긴 숫자로 모든 사이트를 외우긴 어려우므로 도입된 시스템이 DNS다. 

 

Hosting

호스팅은 서버 기능을 대행하는 것이다. 대형 혹은 대용량, 혹은 대량의 컴퓨터를 가지고 있는 사업자가 해당 컴퓨터의 공간 일부를 사용자에게 제공하는 서비스다. 이는 이미지만 담은 이미지 클라우드 서비스가 될 수 있고, 웹을 올릴 수 있는 웹호스팅이 될 수도 있다. 특정 목적에 따라 호스팅 이름이 달라질 수 있으나, 서버의 일부 혹은 전체를 빌려 쓴다는 점은 동일하다. 

사용자는 직접 서버를 구입하고 운영할 필요가 없어 편리하기 때문에 대부분의 많은 회사들이 호스팅으로 서비스를 시작한다. 서버를 직접 구축할 경우 구축, 운영, 유지 비용 등 지출이 크기 때문이다.

호스팅 중 서버 한대를 모두 임대할 경우 서버 호스팅이라 부르며, 이는 가상 서버 호스팅과 전용 서버 호스팅으로 나뉜다. 가상 서버는 서버의 일정한 공간을 가상화 기술을 통해 한대 서버처럼 나눠주는 서비스다. 다만, 서버 자원을 한계 이상으로 파는 행위에 악용 되기도해 사용자에겐 곤욕스러움이 나타날 수 있다. 쉽게 말해 동시 접속 100명만 가능한 서버에 동시접속이 100명이 안될 것 같은 사용자 여러명을 같은 서버에 연결시켜 놓은 상태다. 한두명씩 들어올 땐 문제 없으나, 한쪽에서 100명이 다 들어왔을 경우 다른 사용자는 서버를 사용할 수 없게 된다. 가상 서버를 주문할 경우 혹시 모를 일이니 점검할 필요가 있다. 전용 서버 호스팅은 서버 컴퓨터 한대를 한 사용자에게 대여하는 서비스로 가상 서버 호스팅에서 느낄 단점은 없다. 다만, 서버를 통채로 빌리는 개념인 만큼 비용이 상대적으로 비싸다.

 

마무리

오랜만에 호스팅이란 단어를 들으니 옛 생각이 난다. 라떼 이야기일지도 모르겠다. 첫 블로그 글에서도 썼지만, 고등학생 때 동아리 홈페이지를 만들며 이런저런 시도한 게 또 생각났다. 저렴한 웹호스팅 사이트를 찾고, 마음에 드는 무료 도메인이 없어서 저렴하게 구매할 수 있는 도메인사이트도 찾고... 그렇게 BBS를 설치해서 포토샵으로 디자인하고 나모웹에디터로 나눈 웹페이지를 BBS에 입히고, 플래시로 만든 메뉴도 넣고, 기능 넣으려고 커뮤니티 사이트 찾아나서고. 이름은 바뀌었지만 흐름은 지금과 유사한 듯하다. 웹호스팅 대신 AWS를 배우고, BBS 커뮤니티 대신 npm 등 라이브러리 찾아나서고. 그나마 다행?인건 네임서버 연결하는 건 예나 지금이나 똑같다.

어릴 때부터 알고 있는 부분이라 다시 한 번 정리할 겸 적었다. 용돈 날리고 손가락으로 때우면서 배웠던 거라 십여년 이 지났음에도 잊지 않고 있어서 웃프다.

 

 

'FE > Web' 카테고리의 다른 글

SEO  (0) 2022.12.11
HTTPS vs HTTP  (0) 2022.10.27
token, XSS, CSRF  (1) 2022.10.25
Browser’s Rendering Process  (0) 2022.10.24
권한 분기  (0) 2022.10.23