PracticeEveryday
DNS 본문
IP 주소와 Hosts의 개념
Host : 인터넷에 연결된 컴퓨터 한대 한대
IP address : Host끼리 통신을 하기 위해 필요한 주소.
DNS ( Domain: 영역 분야 범위 Name System )
- DNS는 IP 주소를 기억하는 것이어렵기 때문에 등장한 것이다!
- DNS란 Domain Name System의 약자로 인터넷 주소창에 Host Domain Name을 입력했을 때 ( Ex naver.com
google.com ... 등)의 해당 문자를 IP 주소로 변환 해 주는 시스템을 말합니다.
- URL 창에 Host Domain Name을 입력했을 때 어떤 식으로 해당 IP 주소를 받아오는 지, DNS 서버의 구조는
어떻게 되어 있는지, 더 효율적인 방법을 위해 어떤 걸 사용하는 지 등에 대해 알아보자
기지국 DNS 서버 ( Local DNS Server )
- 저희가 URL에 Domain Name을 입력했을 때 해당 IP를 찾기 위해 가장 먼저 찾는 DNS 서버입니다.
- 기본적으로 컴퓨터의 LAN 선을 통해 인터넷이 연결 되면, 인터넷을 사용할 수 있는 IP를 할당해주는
통신사 ( KT, SK, LG 등 )에 해당하는 각 통신사의 DNS 서버가 등록 됩니다.
- 각 통신사에 대한 DNS 서버의 IP 주소입니다.
예를 들어 " hwan.co.kr " 이라는 도메인 주소를 입력하면 클라이언트는 해당 DNS 서버에 묻는다.
1. " hwan.co.kr " 이라는 도메인 이름의 IP 주소를 알려줘
Case 1 찾는 도메인 주소가 있다면
=> 기지국 DNS 서버 : 해당 IP 주소는 1.1.1.100 이야.
Case 2 찾는 도메인 주소가 없다면
=> 기지국 DNS 서버 : Root DNS 서버에 물어볼게 기다려줘
의 반응을 하게 된다.
- 여기서 도메인 네임에 대한 정보를 갖고 있으면서, 해당 도메인 네임에 해당하는 IP 주소를 갖고 있는 서버를
Authoritative: 권위 있는 DNS Server라고 한다. 즉 모두 다 알고 있는 서버이다.
- 반면 두 개중 하나만을 알고 있는 서버를 Non - Authoritative DNS Server라고 한다.
- 클라이언트가 DNS서버에게 IP주소 아냐고 묻는 역할을 하는것이 리졸버(Resolver)라고 하는 녀석이 수행하게
됩니다.
Question " 도메인 이름을 알고 있으면 IP 주소도 알고 있어야 되는 것 아닌가? "
Root DNS Server
- 위에서 기지국 DNS에게 우리는 처음 해당 도메인 네임에 대한 IP 주소가 있는지 물어 보았다.
하지만 기지국 DNS 서버에서 해당 도메인에 대한 IP 주소가 없을 때 해당 NDS는 Root DNS 서버에게 물어본다.
Root DNS는 최상위 DNS 서버로 해당 DNS부터 시작해서 아래 딸린 node DNS 서버에게 차례차례 불어보게 된다.
- 트리식의 구조로 되어 있어
- 모든 DNS 서버들은 이 Root DNS Server의 주소를 기본적으로 갖고 있어 모르는 Domain Name이 온다면
Root DNS에게 물어보게 된다.
하지만 Root DNS Server의 목록에도 해당 Domain Name의 IP가 없을 수도 있다.
그럼 Root DNS Server는 우리 기지국 DNS ( Local DNS )에게 한가지 정보를 실어 없다고 전해주게 된다.
최상위 도메인
최상위 도메인은 다음과 같이 나뉜다.
1. 국가 코드 최상위 도메인 ( Contry Code Top-Level Domain, ccTLD )
( Ex, .kr, .jp, .CN, .US 등..)
2. 일반 최상위 도메인 ( Generic Top-Level Domain, gTLD )
( Ex, .com, .net, .org 등..)
COM(Component Object Model)의 뜻에서도 알 수 있듯이 Conponent 규약을 따르는, Microsoft 사가 주체가 되어 만든 표준이다.
위 두개가 대표적이며 그 밖의 신규 일반 최상위 도메인, 국제화 일반 최상위 도메인 등
다양한 도메인들이 존재한다.
인터넷 최상위 도메인 목록 - 위키백과, 우리 모두의 백과사전
위키백과, 우리 모두의 백과사전.
ko.wikipedia.org
- Root DNS Server는 Local DNS 서버에게 없다고 알려줌과 동시에 이렇게 전달해준다.
Root DNS Server : 나에겐 해당 도메인 주소가 없다 하지만 hwan.co.kr의 주소중 .kr의 주소를 알고 있으니
kr DNS에게 물어봐라
- 그럼 Local DNS 서버는 kr DNS 서버에게 다시 물어보게 된다.
1. " hwan.co.kr " 이라는 주소를 뜯어보면
이런 식으로 구성되어 있다는 걸 알 수 있다.
2. 재귀적으로 순환을 반복한다.
- 기지국 DNS ( Local DNS )에서 Root DNS Server 로 도메인 주소를 물으면,
Root DNS Server에서 다 알아서 찾아 주는 것이 아니라,
Root DNS Server 자신에 등록되어 있는 최상위 도메인 ( TLD )에서 해당 도메인에 붙어 있는 TLD 주소를 찾아
기지국 DNS ( Local DNS )에게 준다.
그럼 기지국 DNS ( Local DNS )는 Root DNS Server 에게 받은 TLD Server에게 다시 물어본다.
이하 찾을 때까지 반복한다.
이런식으로 받아오는 것을 Recursive: 반복되는 되풀이되는 Query라고 한다.
DNS Cache
- 위 과정을 통해 저희 PC는 "hwan.co.kr" 의 IP주소를 성공적으로 받아왔다고 가정해 보자.
- 그럼 몇 분 후 다시 "hwan.co.kr"에 방문하려고 했을 때, 또다시 위와 같은 과정을 반복해야하는,
비 효율적인 과정을 반복해야 하며 그렇게 되면 느리기도 하거니와 DNS서버에 부담을 줄 수밖에 없다.
때문에, 저희 PC에는 DNS Cache라는 Cache를 활용해 Cache안에 자주쓴는 Domain Name 주소를 저장해 놓게 된다.
이를 확인하는 방법은 Window 기준 다음과 같다.
도메인 이름 등록 과정과 원리
ICANN : Internet Corporation for Assigned Names and Numbers
- 도메인 이름 등록 구조에서 최상위에 위치하는 것은 ICANN이라 불리는 비영리 단체이다. 이 단체는 전세계에 있는
IP주소를 관리함과 동시에 Root Nave Server의 관리자 역할을 하고 있다.
- Root Name Server 아래에는 Registry라는 등록소가 존재하는데, 여기는 Top-Level Domain ( .com )을 관리하고 있다.
그 밑에는 Registrar이라는 등록 대행자가 있는데, 등록 대행자가 등록소에 등록하는 것을 등록해주는 대행 역할을
하는 것이다.
만약 동록자가 example.com을 등록하고 싶으면 등록자는 등록대행자에게 도메인을 전달하고 등록대행자는 등록소에
해당 도메인을 등록하도록 전달한다. 기존에 도메인이 존재한다면 등록할 수 없고 등록하기 위해서는 수수료를
해야 한다. 그리고 Root name Server는 전 세계에 있는 Top-Level Domain의 주소를 기억하고 있고, 우리의 도메인을
세팅하기 위해서는 Authoritiative name server를 구축해야 한다.
도메인 IP 주소를 확인하는 방법
223.130.195.200으로 입력하면 네이버가 뜬다 우오 짱신기 !!
[Network] DNS 과정
DNS(Domain Name System) 개인 컴퓨터의 웹에서 www.naver.com을 입력하면 어떤 과정을 통해 접속하는 지 살펴보자. DNS는 IP 주소를 기억하는 것이 어렵기 때문에 DNS가 등장한 것이다. DNS의 과정을 간략히
it-mesung.tistory.com
DNS에 대한 설명(디테일 하게....)
DNS란 무엇일까요?? Domain Name System의 약자로 인터넷 주소창에 Host Domain Name을 입력했을 때(ex, naver.com, google.com 등..) 해당 문자를 IP주소로 변환해 주는 시스템을 말합니다. 저는 URL창에 Host Do..
hwan-shell.tistory.com
[Network] DNS 과정
DNS(Domain Name System) 개인 컴퓨터의 웹에서 www.naver.com을 입력하면 어떤 과정을 통해 접속하는 지 살펴보자. DNS는 IP 주소를 기억하는 것이 어렵기 때문에 DNS가 등장한 것이다. DNS의 과정을 간략히
it-mesung.tistory.com