Domain Name System
- DNS 서비스는 전 세계에 배포된 서비스로서, www.example.com과 같이 사람이 읽을 수 있는 이름을 192.0.2.1과 같은 숫자 IP 주소로 변환하여 컴퓨터가 서로 통신할 수 있도록 한다.
- 인터넷의 DNS 시스템은 이름과 숫자 간의 매핑을 관리하여 마치 전화번호부와 같은 기능.
예시
- 내 컴퓨터에서 www.naver.com에 접속하려 한다.
- 내 브라우저는 현재 www.naver.com의 ip를 모르기 때문에 PC에 설정된 로컬 DNS 서버(네임서버)에 해당 도메인과 ip가 있는지 요청.
- 로컬 DNS 서버는 통신사마다 지정된 곳에 위치. 따라서 사용자가 다른 위치에 있는 DNS 서버로 연결을 바꿀 수 있다.
- 로컬 DNS 서버에 해당 도메인이 있다면 바로 반환해준다.
- 로컬 DNS 서버에 없다면 Root 서버에 해당 도메인의 ip를 어디서 찾을 수 있는지 요청.
- Root 서버는 .com으로 끝나는 도메인들을 담당하는 서버 ip주소를 반환.
- .com 서버 ip로 요청을 하면 해당 도메인 서버는 naver.com의 도메인을 가진 DNS 서버 ip 주소를 반환.
- naver.com의 도메인을 가진 DNS 서버에서 www에 대한 ip를 받아서 로컬 DNS 서버는 브라우저에게 반환하고 브라우저는 www.naver.com에 접속.
DNS spoofing
- DNS 서버에 요청하는 것을 가로채서 가짜 사이트 ip를 알려줘서 접속하게 유도.
A Record
- 도메인을 서버의 ip로 직접 연결하는 것.
- ip로 직통 연결이라 접속이 빠르다.
CNAME
- 도메인을 별명과 연결.
- ip가 유동적으로 변하는 서버의 경우 바뀌는 ip들에 대해 일정하게 연결된 다른 도메인.
- ip가 유동적인 서버를 사용하는데 도움은 되지만 하나 더 거친다는 단점.