[백엔드 로드맵 - internet] DNS

Sierra·2022년 6월 6일
0

Backend-Roadmap

목록 보기
5/43
post-thumbnail

Intro

이번에는 DNS에 대한 글을 써 보도록 하겠다.

DNS 라는 말, 많이들 들어 보았겠지만 특히나 통신 (학부에 따라 데이터 통신이든 컴퓨터 네트워크든 여튼 그런 이름을 가진 수업에서 꼭 나오는 이야기.) 시간에 많이 들어보게 되는 용어다.

Domain Name System

아무 생각없이 DNS 라는 용어를 쓰지만, 사실 용어의 풀 네임을 보면 어떤 의미인지 대강 알 수 있다. 고등학교 시간에도 선생님들이 했던 이야기지만 단어 속에 정의가 있다.

말 그대로 도메인 이름에 대한 시스템이다. 정확히 얘기하면 호스트의 도메인 이름을 네트워크 주소로 바꾸거나 그 반대의 변환을 수행할 수 있도록 개발된 시스템이다.

컴퓨터는 기계다. 사람이라면 특정 우편번호의 특정 주소, 심지어 국가코드까지 입력하면 누구나 지구상에 존재하는 특정 주소로 화물을(뭔가 오버워치 같다...) 보낼 수 있다. 물론 그 곳에 정상적인 택배 회사가 존재해야 하고 물류 센터든 우편국이든 정상적으로 작동해야 가능하겠지. 컴퓨터도 마찬가지로 그 중간 과정이 필요하고 DNS 서버가 그러한 역할을 한다.

인터넷은 도메인 네임 계층, IP 주소 공간이라는 두 개의 네임스페이스를 관리한다. DNS에는 특정 위치에 대한 도메인 네임, 그리고 아이피 주소를 저장하고있는 데이터베이스가 존재한다. DNS 네임 서버에서는 이러한 레코드들을 관리하고 쿼리를 받게 되면 Response 를 전달함으로써 서비스를 제공한다.

이름 생성 규칙

도메인 이름은 한 개 이상의 레이블로 이뤄지고 점으로 구분된다.
www.google.com 이라는 도메인 네임 또한 그런 규칙을 통해 형성 되었다.

가장 오른쪽은 최상위 도메인을 의미한다. 흔히 우리가 말하는 닷컴, 닷넷 이러한 것들을 의미한다. 도메인 이름은 계층구조를 가지고 있는데 오른쪽 부터 왼쪽으로 내려간다.
google은 com의 서브도메인이고 www는 google.com 의 서브도메인인 셈이다. 이러한 서브도메인은 127단계까지 가능하다고 한다.
또한 각 레이블은 최대 63개 문자를 쓸 수 있고, 전체 도메인의 이름은 253개를 초과할 수 없다.

이러한 규칙들은 RFC 1035, RFC 1123, RFC 2181에 정의되어 있다.

Outro

DNS라는 용어를 정확한 이론을 이해하지 못한 채 사용한다면 나중에 소통에 큰 혼선이 올 수 있다. 간단하게 정리 해 보았다.

우리는 이미 DNS 서버를 사용하고 있다. KT, SK, LG 등에 유선 인터넷을 가입하고 있다면 이미 해당 전화국의 DNS 서버를 사용하고 있는 셈이다.

Reference

https://ko.wikipedia.org/wiki/%EB%8F%84%EB%A9%94%EC%9D%B8_%EB%84%A4%EC%9E%84_%EC%8B%9C%EC%8A%A4%ED%85%9C

profile
블로그 이전합니다 : https://swj-techblog.vercel.app/

0개의 댓글