DNS란
DNS(Domain Name System) 는 적용계층의 프로토콜 중 하나로 도메인 이름과 IP주소를 변환시킬 때 쓰는 프로토콜입니다.
naver.com 이나 tistory.com 같은 사이트 URL도 우리같은 사용자가 눈에 보기 쉽게 영어로 돼있는거지 사실은 IP 주소로 이루어져 있습니다.
예를 들자면,
위 사진들과 같이, 네이버는 사실 naver.com 이 아니라 210.89.160.88 이 그 본체 입니다.
실질적인 전송 측면에서는 naver.com 이란 URL 이름으로는 통신이 불가능합니다.
다만, DNS 가 이 naver.com 를 적재적소에 실제 IP주소인 210.89.160.88 으로 변환해주어,
이용자의 편의성을 올려주고 있는 것입니다! 🤞
참고로 DNS는 이 두가지(naver.com과 210.89.160.88)를 양방향으로 교환이 가능합니다.
도메인 공간 / 도메인 트리
그림과 같이 도메인 이름들은 다 트리 형태로 되어있습니다.
이를 Domain name space 혹은 Domain tree로 부르며, 트리의 루트는 . 입니다.
naver.com 은 사실 naver.com. 입니다. 마지막 . 이 자동 생략된 것이죠!
지금 그림에는 www.cnn.com 밖에 안나와있지만 com 으로 끝나는 도메인은 사실은 naver.com 도 있고, paran.com 도 있고, 무수히 많죠? 이와 같이 뒤에 name 이 더 상위노드인 트리구조로 되어있습니다.
항상 루트에 도달해야합니다.
naver.com. (O)
www.naver (X)
- 트리의 깊이의 제한은 없습니다! a.b.c.d.e.q.w.e.r.t.com 이 될 수도 있다는 뜻이죠.
- 각각의 노드에 길이 제한은 있습니다. loooooooooooooooooooo ... (o * 999 ) ... oooooooooooooooooooooooooong.com 은 되지 않습니다. 길이 제한은 0~63 개의 영어 알파벳, 숫자, 하이픈(-) 이 가능합니다.
- 대문자, 소문자는 따지지 않습니다!
- 영어 외의 다른 문자는 Punycode 로 변환되어 해석됩니다. (Unicode)
- 각각의 노드는 IP주소에 . 사이의 번호랑 연관이 전혀 없습니다!
* FQDN (Fully Qualified Domain Name) / PQDN (Partially Qualified Domain Name)
FQDN : 전체 도메인 이름을 의미하며, 애매함을 피하기 위해 완전히 기술된 전체 도메인을 의미합니다.
PQDN : 꼭 FQDN이 아니더라도, 하위 일부경로만을 가지고도 접속할 수 있습니다. 이 때의 부분 주소를 PQDN이라고 합니다.
TLD (Top-Level-Domain)
TLD 는 최상위 도메인을 의미합니다.
루트 노드와 인접해 있는 최상위 도메인들입니다.
크게 3가지로 분류할 수 있는데,
1. Generic (gTLD) : 영리단체, 기관
2. Country-code (ccTLD) : 국가에서 관리
3. Addressing and Routing Protocol Area (ARPA) : ARPANET의 DNS 를 위해 사용.
gTLD 는 .com 이나 .net 과 같이 우리와 친숙한 도메인들입니다. 개인 혹은 영리단체에 의해 만들어지고 쓰일 수 있습니다.
ccTLD는 각 나라 차원에서 관리하는 도메인으로, .kr(한국) , .ch(스위스), .cn 등등 이 있습니다.
ARPA는 인프라 목적으로만 사용되는 특별한 도메인으로, ARPANET의 DNS 와 연관되어 있습니다.
DNS Zone File
https://programming119.tistory.com/158
DNS 패킷 구조
https://programming119.tistory.com/159?category=904929
'컴퓨터 지식 > 네트워크&프로토콜' 카테고리의 다른 글
[네트워크📶] DNS Message Format (0) | 2020.06.15 |
---|---|
[네트워크📶] DNS Zone File / NS LOOKUP 사용법 🎶 (0) | 2020.06.13 |
[네트워크📶] ICMP in IPv6 / ICMPv6에 대해 ✨ (0) | 2020.06.12 |
[네트워크📶] ICMP란 / ICMP Type / ICMP에 대해 ✨ (0) | 2020.06.10 |
[네트워크📶] Tracert 작동원리 / Traceroute 작동 방식 ✨ (0) | 2020.06.10 |
댓글