DNS?
DOmain Name System의 약자로 호스트의 도메인네임을 네트워크 주소로 변환하거나 그 반대의 역할을 수행한다.
예를 들어 naver.com은 DNS를 이용한 도메인네임일 뿐이며 실은 문자의 탈을 쓴 IP주소이다.
ping naver.com
을 cmd창에 입력해 보면 실제 IP주소를 알 수 있다.
IP주소를 브라우저에 제공하면 해당 서버가 뷰페이지를 제공하는 방식이지만 숫자로 외우고 있기 보다는 별명처럼 만들어 접근하기 쉽게 만들어주는 시스템인 것이다.
DNS 원리
- 도메인 주소를 입력하면 도메인 주소를 가지고 있는 DNS서버에 접속
- DNS서버에 접속한 도메인과 연결된 IP를 확인 후 PC에 전달
- PC는 전달받은 서버의 IP로 접속
- IP로 연결된 브라우저에 서버의 내용(뷰페이지) 출력
DNS 동작 순서
브라우저에 도메인을 입력하면 먼저 PC에 저장된 Local DNS에게 해당 도메인이라는 hostname에 대한 IP 주소를 요청하게 된다.
이때, Local DNS에는 (ex. "www.naver.com")
의 IP주소가 있을 수도 있고 없을 수도 있다. 네이버에 접속한 적이 있다면 접속 정보가 캐싱 정보로 저장이 되어있기 때문에 바로 IP주소를 제공하여 끝이 난다.
그럼 Local DNS는 네이버의 IP주소를 찾기 위해 다른 DNS서버와의 통신을 한다.
가장 먼저 Root DNS 서버에 요청을 하게 된다.
이때, 찾을 수 없다면 Local DNS 서버에게 찾을 수 없다고 응답을 하고 com 도메인을 관리하는 TLD DNS 서버에 다시 요청을 하게 된다.
com 도메인 관리 서버도 정보가 없다면 찾을 수 없다고 응답을 하고 Authoritative DNS 서버에게 다시 요청을 한다.
이때 찾은 IP주소를 응답해 주고 이를 수신한 Local DNS는 IP 주소를 캐싱하여 저장하게 된다.
'WEB' 카테고리의 다른 글
[WEB] CORS(the resource is in more-private address space local) (0) | 2024.10.16 |
---|---|
[WEB] CORS? (1) | 2024.10.16 |
[WEB] Apache? Tomcat? (2) | 2024.09.28 |
[WEB] HTTP, HTTPS (0) | 2024.09.19 |