이 글은 이고잉님의 생활코딩 WEB2-Domain Name System 강의에 추가로 구글링 한 피망 IT님의 피방 IT Tistory 링크 정보를 정리한 글입니다.
컴퓨터 한대 한대를 Host라고 하면 이 Host끼리 통신을 하려면 각 집에 주소가 있듯이 컴퓨터 마다 고유의 주소가 필요하다. 이를 IP address라 한다. 처음에는 이 IP address로 다른 컴퓨터들과 통신할 수 있는 것만으로도 만족을 했지만, 점차 IP address를 외워야 하는 것 역시 불만으로 바뀌었다. 이에 Jon Postel, Paul Mockapetris 두분이서 Domain Name System 즉, DNS를 만들었다.
1~3) Root DNS 서버는 전체 FQDN 정보는 알지 못해 자신의 하위 Domain인 COM DNS 서버의 주소를 알려준다.
4~5) 이를 수신한 Local DNS 서버는 다시 Iterative Query를 사용하여 com DNS 서버에 정보를 요청하고, com DNS 서버도 자신의 하위 레벨 Domain인 naver.com의 DNS 서버 주소를 알려준다.
6~7) 4,5와 동일한 방법으로 서버에게 요청하고 naver.com DNS 서버는 www.naver.com에 대한 IP 서버 주소를 알려준다.
8) Local DNS 서버는 www.naver.com에 대한 IP주소를 수신 후 자신의 DNS Cache에 등록하고 해당 정보를 요청했던 Client에게 응답메세지로 답변한다.
FQDN(Full Qualified Domain Name: 정규화된 도메인 이름)
네트워크상에서 컴퓨터 시스템을 지칭하는 하나의 완전한 이름이다.
DNS의 서버 이름을 hostname + domain name으로 표현한다.Host name : 실제 서버에 주어진 컴퓨터의 이름 (www.naver)
Domain name: 논리적인 그룹(.com)