DNS - Domain Name System

2022. 5. 4. 20:18네트워크

1. DNS란?

  • 인터넷에서 목적지를 찾아가기 위한 주소에 해당된다
  • 네트워크에서 도메인이나 호스트 이름을 숫자로 된 IP 주소로 해석해주는 TCP/IP 네트워크 서비스이다.
  • IP주소는 복잡하고 외우기 쉽지 않기 때문에 이를 쉬운 도메인으로 변경한 것이다.
더보기

도메인: www.naver.com
IP: 223.130.195.200

 

 

내 컴퓨터에서 www.naver.com에 접속하려고 한다고 가정해보자.

그런데, 현재 내 브라우저는 네이버의 IP주소를 모른다.

 

그래서, 브라우저는 먼저 PC에 설정된 로컬 DNS 서버에 해당 도메인의 호스트명과 IP를 가지고 있는지 물어본다.

이 로컬 DNS 서버는 보통 통신사마다 지정된 곳이 있는데, 사용자가 다른 곳으로 바꿀 수도 있다.

로컬 DNS 서버에는 이 주소가 이미 캐싱되어서 정보를 가지고 있을 수도 있고, 없을 수도 있다.

 

있다면 바로 접속이 가능할 것이고, 없다면 로컬 DNS 서버가 Root 서버에게 이 주소에 해당하는 IP를 어디 찾을 수 있는지 물어본다. 이 루트 DNS 서버는 전세계에 13개가 있다고 한다.

 

이 루트 DNS 서버는 응답으로, .com으로 끝나는 도메인들을 담당하는 서버의 IP 주소를 반환한다.

로컬 DNS 서버는 이 주소를 받아들고 .com 담당 서버를 찾아간다.

 

그러면 .com 서버는 naver.com의 도메인 정보를 가진 DNS 서버의 IP 주소를 알려준다.

그 주소를 보고, naver.com의 여러 호스트네임 별 IP 주소들 중에서 www라는 호스트네임을 가진 IP 주소를 얻어낸다.

이 IP주소를 브라우저에 반환하면, 드디어 www.naver.com에 접속하게 되는 것이다.

 

 

2. 정리

  • DNS란, 복잡한 IP 주소 대신 사용하는 도메인들의 정보를 저장하는 곳이다.
  • 브라우저에 주소를 입력하고 접속을 시도하면, 먼저 로컬 DNS에 해당 주소의 정보가 저장되어 있는지 찾는다.
  • 로컬 DNS에 정보가 있다면 바로 접속이 가능하지만, 없다면 Root DNS 서버에 물어본다.
  • Root DNS 서버에서 얻은 도메인 정보를 타고 가 IP주소를 얻어서 해당 주소에 접속할 수 있다.

 

 

 

3. URL구조

 

 

Protocol : 컴퓨터끼리 정보를 주고받을 때의 통신방법에 대한 약속

HTTP(Hyper Text Transfer Protocol) :웹 서버와 사용자의 인터넷 브라우저 사이에 문서를 전송하기 위해 사용되는 통신 규약

 

 

 

Domain : 웹서버의 위치를 지정해 주는 역할

이를테면 네이버의 IP 주소는 223.130.195.200인데, 이걸 접속하기 쉬운 naver.com이라는 도메인 주소로 바꾼 것이다.

 

 

 

 

Port : 인터넷 상에 있는 서버에 접속할 때 브라우저와 서버 간을 연결해주는 역할

URL 또는 IP를 토대로 찾아간 서버 컴퓨터 상에는 대부분 여러개의 프로그램이 실행되고 있어서, 이 여러개의 프로그램 중 어떤 프로그램에 접속할 것인지 알려주는 역할이다.

 

 

 

 

Query Parameter 

& 기호로 구분되는 key-value 형식의 리스트로, key와 value는 = 문자로 구분한다.

 

 

 

 

Anchor

# 뒤에 나오는 녀석으로, 책갈피 역할을 한다.

정 스크롤 위치로 이동하려고 할 때 생기며, 요청이 서버로 보내지지 않는다.

 

 

 

참고

https://velog.io/@hyun/DNS%EB%9E%80

 

DNS란?

웹 브라우저의 동작 순서 포스팅을 하면서 나왔던 개념인, DNS가 무엇인지 학습한다. 학부생 시절 네트워크 수업을 수강하지 않았기 때문에, DNS나 도메인 등의 용어를 들어만 봤지 정확하게 무엇

velog.io

 

'네트워크' 카테고리의 다른 글

DOM / Virtual DOM  (0) 2022.03.02