본문 바로가기

Cloud

AWS - DNS

DNS(Domain Name Service)

: HostName을 대상 서버 IP주소로 번역하는 것으로 웹 브라우저에서 접근할 때 접근 가능한 곳으로 연결해주는 역할을 한다.

 

[예시]
1) www.google.com : 호스트이름
2) 웹 브라우저에서 www.google.com을 접근하려고 함
3) 해당 호스트 이름은 172.217.18.36이라는 IP를 갖게됨 (예를 든 것)
4) 웹 브라우저는 실제 보여지는건 www.google.com이라는 호스트 이름이지만 실제 이면에서는
172.217.18.36이라는 IP에 접근하는 것
5) IP에 접근을 하려 구글로부터 데이터를 획득(웹 브라우저)

 

 DNS를 통해 IP에 접근하는 과정은 DNS 계층적인 구조를 통해 하나씩 체크해가며 접근하는 것입니다.

 

1) 도메인 Registrar

: 도메인 이름을 등록하는 곳으로 Amazon Route 53, GoDaddy, ... 등이 있음

2) DNS Records

: A, AAAA, CName, NS(네임 서버), ... 등이 있음

3) Zone File

: 모든 DNS Record를 포함하며 호스트 이름과 IP 또는 주소를 일치시키는 방법(레코드에 호스트 이름에 대한 IP를 지니고 있음)

4) Name Server

: DNS 쿼리를 실제로 해결하는 서버

5) 최상위(Top Level Domain = TLD Domain) 도메인

: .com, .us, .in, .gov, .org, ... 등

6) 2단계 도메인

: amazon.com, google.com, ... 등


실제 호스트 이름 주소를 가지고 비교해보겠습니다.

 

http://api.www.example.com.

 

1) . (com. 에서 가장 마지막에 붙는 온점) = Root; 전체 도메인 이름의 루트를 의미

2) .com = TLD(Top Level Domain)로 최상위 도메인

3) .example.com = 2단계 도메인

4) www.example.com = 서브도메인 

5) api.www.example.com = 도메인 이름

6) http = 사용할 프로토콜

7) http://api.www.example.com = FQDN(Fully Qualified Domain Name) 전체 주소 도메인 이름


DNS 구조

유저는 웹 브라우저를 통해 웹 서버에 접근을 하려고 합니다. 

웹 서버에 대한 호스트 이름을 알지만 IP를 모르는 상황에서 웹 브라우저는 Local DNS 서버에 www.example.com.을 가고싶다고 

요청합니다. 

Local DNS 서버에서는 해당 호스트 이름에 대한 IP가 없기 때문에 처음엔 Root DNS Server에 요청합니다.

Root DNS Server에서도 해당 호스트 이름에 대한 정보가 없기 때문에 레코드 내 공용 IP를 전달하진 못하지만, .com에 대한 정보를

알고 있기 때문에 거기에 해당하는 공용 IP(1.2.3.4)를 Local DNS Server에 전달합니다. 

 

.com에 대한 공용 IP 정보를 알게된 Local DNS Server는 최상위 도메인 서버인 TLD DNS Server에 호스트 이름을 요청합니다.

하지만 TLD DNS 서버에서도 호스트 이름에 대한 정보가 없습니다.

그렇지만, example.com에 대한 정보를 알기 때문에 레코드를 통해 공용 IP(5.6.7.8)를 전달합니다.

이 사실을 바탕으로 Local DNS Server는 2단계 도메인 서버인 SLD DNS Server에 호스트 이름에 대한 IP를 요청합니다.

 

SLD DNS Server에서는 www.example.com.에 대한 정보를 알고 있어서 레코드에서 공용 IP(9.10.11.12)를 전달합니다. 

결국 호스트 정보를 알게된 Local DNS Server는 웹 브라우저에 공용 IP를 전달하고 그 주소를 통해 웹 서버에 접속합니다.

웹 서버에 접속하여 뿌려주는 데이터를 다시 웹 브라우저로 가지고 와 End User(Client)가 볼 수 있도록 정의됩니다.

 

 

이것이 DNS의 기본 구조입니다.

자세한 내용은 아래 링크를 조금 더 참고해주시면 감사하겠습니다.

https://aws.amazon.com/ko/route53/what-is-dns/

 

DNS란 무엇입니까? – DNS 소개 - AWS

12개월 동안 AWS 프리 티어에 액세스하고 연중무휴 24시간 고객 서비스, 지원 포럼 등을 비롯한 AWS Basic Support의 기능을 사용할 수 있습니다. 현재 Amazon Route 53는 AWS 프리 티어에서 제공되지 않는다

aws.amazon.com

 

반응형

'Cloud' 카테고리의 다른 글

AWS - Route53 Policy(1) - Simple, Weighted, Latency Based  (0) 2023.02.21
AWS - Route53  (0) 2023.02.05
AWS - Elastic Cache  (0) 2023.01.30
AWS - Aurora  (0) 2023.01.27
AWS - RDS  (0) 2023.01.25