DNS가 무엇이고 왜 필요할까
✅Domain Name
모든 웹 서버는 주소를 갖고, 이 주소의 정식 명칭은 IP주소(a.k.a. 네트워크 주소)라고 한다.
근데 이 IP 주소를 사람들이 기억하기 쉬운 어렵다고 해서 도메인 네임을 사용하는 것이다.
우리가 흔히 보는 `naver.com` 이런게 도메인 네임이다.
위 사진에서 도메인 네임은 `mystudylog.tistory.com` 이다.
도메인 네임은 왜 "주소"라고 부르지 않고, "이름"이라고 말하는 이유는 모든 웹 서버는 IP주소 기반으로 통신하기 때문에 도메인은 "주소"가 아니라 IP의 별칭(alias)이기 때문이다.
✅DNS(Domain Name System/Server)
사람들은 도메인 네임으로 소통한다면, 웹 서버끼리 통신 하려면 도메인 네임을 IP주소로 변환해야하지 않을까?
그걸 하는 과정이 DNS이다.
어떤 도메인 네임이 어떤 IP 주소인지 검색 및 변환 과정을 의미
🔷DNS 조회 순서
DNS는 도메인 네임을 IP주소로 어떤 과정을 거쳐서 변환해줄까?
1. Browser DNS
2. Local DNS
3. ISP(Internet Service Provider) = DNS Resolver
순으로 진행된다.
DNS Resolver과정을 자세히 살펴보자.
🔷 DNS Resolver 과정
- DNS Resolver는 가장 먼저 DNS Resolver내 DNS 캐시를 확인한다.
- 캐시에 가져오려는 도메인 네임과 일치하는 것이 없다면 DNS Resolver는 Name Servers까지 Recusive 조회한다.(Root -> TLD -> Name Server) -> Authoritative
- 캐시에 도메인 네임이 있다면 캐시에서 가져온다. -> Non-Authoritative
🔷Name Server까지 Recursive 조회하는 과정
DNS Resolver과정에서 DNS Resolver의 Name Server에 대한 Recursive 조회 순서를 자세히 살펴보자
1. Root Server: `.`중 `.com`은 A TLD 서버로 가시오 + `.net`은 B TLD 서버로 가시오.
🔹 어느 TLD 서버로 가라는 응답을 DNS Resolver가 받아서 X TLD에 DNS Resolver가 요청을 보냄
2. TLD Server: `.com` 중 `naver.com`은 C NS로 가시오 + `daum.net`은 D NS로 가시오.
🔹 어느 NS 서버로 가라는 응답을 DNS Resolver가 받아서 X TLD에 DNS Resolver가 요청을 보냄
3. NS, Name Server: `naver.com` 중 `finance.naver.com`은 E Server로 가시오.
🔹 NS 서버에서 key(`finance.naver.com`)에 대한 value(IP주소)를 DNS Resolver에게 반환한다.
🔹 Authoritative Server라고 부른다.
🔹Non-Authoritataive: 캐싱되어있는 DNS를 반환했다는 뜻
🔹Authoritative: 캐싱되어있지 않은 실제 NS에 저장된 실시간 DNS를 반환했다는 뜻
전체적인 DNS 과정은 아래 그림과 같다
'ASAC 웹 풀스택' 카테고리의 다른 글
[ASAC 6기] 웹 개발이란 무엇이며, 어떻게 동작하나? FE(2) - JS엔진, JS엔진 비동기 처리 (0) | 2024.08.20 |
---|---|
[ASAC 6기] 웹 개발이란 무엇이며, 어떻게 동작하나? FE(1) -jQuery, React (0) | 2024.08.20 |
[ASAC 6기] 프로그램, 프로세스와 스레드 (0) | 2024.08.19 |
[ASAC 6기] 웹 검색 엔진과 SEO (0) | 2024.08.18 |
[ASAC 6기] 인트라넷과 인터넷 (localhost, 사설ip, 공인ip, VPN) (0) | 2024.08.12 |