네트워크

[응용 계층] 주소창에 www.google.com 입력하면 무슨일이 일어날까?

2025-06-17 14:20


[응용 계층] 주소창에 www.google.com 입력하면 무슨일이 일어날까?

시작하기

지난 포스팅에서는 DNS가 어떤 역할을 하고, 왜 필요한지 간단히 알아보았다. 이번에는 우리가 브라우저에 www.google.com 같은 주소를 입력했을 때 실제로 어떤 일이 일어나는지를 DNS 구조를 중심으로 자세히 살펴보자.

DNS 구조 이해하기

DNS는 도메인 이름을 IP 주소로 바꾸기 위해 DNS 서버(네임 서버)가 계층적으로 연결되어 있고, 클라이언트는 이 서버들에 질의(Query) 를 보내 원하는 IP 주소를 받아온다.

✔ Name Server란?

예를 들어, example.com 도메인을 담당하는 네임 서버가 있고, 그 서버는 192.5.6.30이라는 IP 정보를 가지고 있을 수 있다.
만약 어떤 네임 서버가 특정 도메인의 정보를 모른다면, 다음 단계의 네임 서버 주소(IP) 를 알려준다. 이렇게 네임 서버들은 트리 구조를 이루고 있으며, 최상위(root) 부터 점점 더 구체적인 하위 도메인으로 탐색을 이어간다.

DNS 조회 과정 (DNS Lookup)

다음은 www.google.com을 입력했을 때 브라우저가 어떻게 IP 주소를 찾아가는지에 대한 과정이다.
단계적으로 알아보자.

1. 사용자 컴퓨터(클라이언트)에서 DNS 질의 시작

브라우저에 www.google.com 입력하면 컴퓨터가 IP 주소가 필요하기 때문에 DNS 조회를 시작한다.

내 컴퓨터의 Stub Resolver가 실행돼서 먼저 로컬 DNS Resolver로 요청을 보낸다.

2. 로컬 DNS 서버에 질의

로컬 DNS 서버의 캐시에 해당 도메인 이름에 대한 IP가 있으면 바로 응답해준다.

하지만 없다면, 최상위 DNS 서버(Root DNS) 로 질의를 전달한다.

3. Root 네임 서버에 질의

Root 네임 서버는 .com, .net 등의 최상위 도메인(TLD) 을 담당하는 네임 서버의 IP 주소를 알려준다.

예를 들어 google.com에서 최상위 도메인은 .com이기 때문에
Root 서버는 .com TLD 서버에게 물어보라고 IP 주소를 알려준다.

4. TLD(.com) 네임 서버에 질의

로컬 DNS 서버는 받은 .com 네임 서버에 google.com의 IP를 아는지 물어본다.

.com 네임 서버는 해당 도메인을 관리하는 Authoritative Name Servergoogle.com 네임 서버의 주소를 알려준다.

5. google.com 네임 서버에 질의

로컬 DNS 서버는 받은 google.com 네임 서버에 주소를 물어보고,
해당 권한 네임 서버최종 IP 주소를 응답한다.

6. 로컬 DNS 서버가 클라이언트에 IP 주소 전달

로컬 DNS 서버는 이 IP 주소를 캐시에 저장하고, 클라이언트의 Stub Resolver에 전달한다.

Stub Resolver는 이 IP 주소를 브라우저에 넘겨주며, 브라우저는 해당 IP로 실제 웹서버에 접속하게 된다.

Stub Resolver 와 Recursive Resolver

Stub Resolver

Recursive Resolver

💭 그렇다면 Recursive Resolver는 어떻게 알 수 있을까?

1. 네트워크 자동 설정

2. 사용자가 직접 설정

Recursive Resolver의 캐싱 (Caching)

요약




 DNS  네트워크  응용계층  주소창