✏️ Domain Name System
- ip 주소를 직관적인 단어주소로 바꿔주는 서비스
- DNS 는 ip 의 이름이지 실제 주소가 아니기 때문에 별도의 DNS 서버에 DNS 에 해당하는 ip 를 저장하는 서버가 운영되고있다.
- 클라이언트는 접속을 원하는 ip 의 DNS 를 DNS 서버에 요청해 ip 를 찾아낼 수 있고,
이렇게 찾아낸 ip 의 서버에 원하는 서비스를 요청할 수 있게된다.
- 즉, DNS 는 internet 전화번호부 라고 할 수 있다.
www.naver.com
⚠️ 사실 이 주소에서 도메인은 www 를 제외한 naver.com 이다.
✏️ DNS 를 이용한 web page ip 를 찾는 방법
www.naver.com 에 접속을 원하는 상황
- 내가 접속을 원하는 DNS 를 로컬에 저장된 로컬 DNS 서버에 IP 가 있는지 확인한다.
- 만약 있다면 ip 를 통해 원하는 web page 를 요청한다.
- 로컬 DNS 서버에 ip 가 없을경우 Root DNS 서버에서 ip 주소가 보관된 장소를 확인한다.
- Root DNS 서버는 전세계에 13개 가 존재한다.
- Root DNS 서버는 .com 으로 끝나는 도메인을 담당하는 서버의 ip 주소를 반환한다.
- .com DNS 서버는 naver.com 로 끝나는 도메인을 담당하는 서버의 ip 주소를 반환한다.
- 마지막으로 반환된 ip 주소의 서버로 가면 naver.com 의 여러 호스트 네임별 ip 주소들이 존재한다.
- 이곳에서 www 에 해당하는 ip 주소를 얻어내 로컬 브라우저로 반환되면 로컬 pc 의 웹에 페이지가 나타나게 된다.
✏️ A Record vs CNAME
이 두가지 개념은 직접 domain 을 획득할 때 사용되는 개념이다.
📍 A Record
도메인을 서버의 ip 로 직접 연결하는 방식
- ip 로의 직통 연결방식 이기 때문에 접속이 빠르다는 장점이 있다.
📍 CNAME
domain 을 별명과 연결하는 방식
- ip 가 일정하지 않고 바뀔 가능성이 있다면 변경된 ip 들에 일정하게 연결된 다른 도메인인 Canonical name 을 사용해 연결하는 방식이다.
- ip 가 변경되어도 문제가 없지만 변경된 ip 들을 연결하는 곳을 한번 더 거처야 되기 때문에 A Record 방식보다 접속이 느리다는 장단점이 있다.