본문 바로가기

Network

DNS (Domain Name System) 란?

반응형

DNS 란?

인터넷 표준 프로토콜인 TCP/IP 환경에서 사람이 IP를 외우기엔 어려우니 이를 문자로 변환하는 것을 Domain Name System 이라고 합니다. 또한 이러한 작업을 해주는 서버를 Domain Name Server라고 부릅니다.

 

 

DNS Port

TCP 53 

UDP 53 

둘다 open 해야합니다

 

DNS 구조

 

 

DMS Record Type

호스트 (A) 레코드

호스트 레코드 또는 A 레코드는 DNS 서버에 존재하는 가장 기본적인 레코드 유형이다. A-record는 호스트 이름 문자열을 IP 주소에 매핑하는 DNS 서버의 기본 기능을 제공한다. A 레코드 속성에서 "이름" 필드 호스트 이름에 대한 정보를 포함하고 "데이터" 필드는 호스트의 IP 주소 정보를 포함한다. 

AAAA 레코드

AAAA 레코드는 A 레코드와 매우 유사하며, 유일한 차이점은 A 레코드는 IPv4를 사용하고 AAAA 레코드는 IPv6을 사용하고 있다는 이다. AAAA 레코드가 그것의 IPv6 주소에 호스트 이름 문자열을 매핑하는 것을 제외하고, A 레코드에 적용되는 모든 조항은 AAAA 레코드에도 적용된다.

포인터(PTR) 레코드

포인터 또는 PTR 레코드는 A 레코드의 상대 기록이다. 그것은 기본적으로 "이름" 필드가 IP 주소 번호의 정보를 포함하고 "데이터" 필드가 호스트 이름 문자열을 포함하는 A 레코드의 역순이다. PTR 레코드는 IP 주소를 관련 호스트 이름에 매핑하는 데 사용되며, 일반적으로 지정된 IP 주소를 사용하는 호스트 이름을 알아내는 데 사용된다.

PTR 레코드는 역방향 조회 구역에서만 생성 및 저장할 수 있다. 그것은 A 레코드 생성의 일부 수동 또는 자동으로 생성될 수 있다. A 레코드 생성의 일부로 PTR 레코드가 생성되면 A 레코드에 이어 정적 또는 동적 레코드가 된다. 서로 다른 호스트 이름을 가리키는 동일한 "이름" 사용하는 PTR 레코드가 두 개 이상 있을 수 있지만 조회 결과에 혼란을 초래할 수 있다.

별칭(CNAME) 레코드

별칭 또는 CNAME 호스트 이름을 다른 호스트 이름으로 매핑하고 있다. CNAME은 기존 A 레코드의 별칭을 만드는 데 사용된다. 예를 들어, 가명 "service.mustbegeek.com"을 사용하여 서비스가 호스팅되는 기존 A 레코드 "AS-SVC001.mustbegeek.com"을 가리킬 수 있다.

정역 또는 역방향 조회 영역 모두에서 CNAME 레코드를 생성할 수 있으며, 동일한 A 레코드 가리키며 복수의 CNAME을 생성할 수 있지만 동일한 CNAME은 두 번 이상 생성할 수 없다. 또 다른 주목할 점은 CNAME이 A 레코드와는 다른 구역 이름으로 생성될 수 있다는 점이다.

메일 교환기(MX) 레코드

MX 레코드는 특히 이메일을 보낼 목적으로 사용된다. 도메인이 전자 메일을 수신할 의사가 있음을 나타내는 MX 레코드 존재 예를 들어, 메일을 수신인 이름 admin@mustbegeek.com으로 보내려고 할 때, 발신인 서버는 상위 도메인 mustbegeek.com에 MX 레코드가 있는지 찾으려고 할 것이다.

정적 또는 동적 레코드로만 정방향 조회 영역에서만 MX 레코드를 생성할 수 있으며 이메일 서비스가 실행 중인 호스트의 유효한 A 레코드 또는 CNAME을 가리켜야 한다.

네임서버(NS) 레코드

NS 또는 Nameserver 레코드는 또 다른 특별한 유형의 DNS 레코드 입니다. NS 레코드 영역 또는 도메인 이름 레코드가 등록되어 있는 서버의 이름을 가리키는 데 사용된다.

권한 시작(SOA) 레코드

SOA 또는 권한의 시작(Start of Authority)은 기록과 관련된 모든 정보를 보관하는 서버의 이름을 포함하는 DNS 레코드다. 서버 식별 번호, 책임 메일 주소, 기본 네임서버 등 권한 있는 정보를 포함한다. SOA 기록에서 참조되는 서버는 관련 기록의 모든 프로세스를 담당하는 것으로 가정한다.

모든 영역 또는 도메인에는 SOA 기록이 있어야 한다. DNS 서버에 새 영역 또는 도메인을 만들 때, 일반적으로 SOA 레코드는 자동으로 생성된다.

서비스(SRV) 기록

SRV 또는 서비스 레코드 서비스 검색에 사용되는 DNS 레코드의 한 유형이다. SRV 레코드는 특정 영역 또는 도메인에서 사용할 수 있는 서비스에 대한 정보를 제공한다. SRV 레코드에는 서비스 이름, 프로토콜 이름, 그리고 구역 또는 도메인 이름으로 시작하는 "이름" 값의 형식이 있다. "데이터" 값은 우선순위, 가중치, 서비스 포트 번호  서비스가 상주하는 호스트 이름과 같은 몇 가지 정보를 포함한다.

.

텍스트(TXT) 레코드

TXT 또는 텍스트 레코드는 DNS 레코드의 특별한 유형이다. 트래픽 전달에는 사용되지 않고 오히려 도메인에 대한 정보를 제공하는 데 사용된다. TXT는 정적 또는 동적 기록으로서 어느 구역에서나 생성될 수 있다. "이름" 값과 "데이터" 값은 프로그램 또는 프로토콜에서 요구하는 모든 것으로 채울 수 있다.

예시 사용 사례 중 하나는 SPF 또는 보낸 사람 정책 프레임워크라는 프로토콜을 정의하는 것인데, 대부분의 전자 메일 시스템에서 수신 전자 메일이 합법적인 도메인에서 온 것임을 증명하기 위해 이 프로토콜을 사용한다. 만약 당신이 이메일을 보내는 데 사용한 도메인이 @mustbeeek.com이라고 합시다. 그리고 당신은 DNS 서버에서 SPF 값을 정의하는 TXT 레코드를 가지고 있다면, 당신의 이메일은 신뢰할 수 있을 겁니다. 그것은 TXT 레코드의 예시  하나일 뿐이다. 당신이 살펴볼 수 있는 많은 다른 사용 사례들이 있다.

 

예를들어  www.naver.com 를 검색했을때 일어나는 작업 

 

①② 사용자가 웹 브라우저를 통해 찾고 싶은 웹 페이지의 URL 주소를 입력함.

③ 사용자가 입력한 URL 주소 중에서 도메인 네임(domain name) 부분을 DNS 서버에서 검색함.

④ DNS 서버에서 해당 도메인 네임에 해당하는 IP 주소를 찾아 사용자가 입력한 URL 정보와 함께 전달함.

 

⑤⑥ 웹 페이지 URL 정보와 전달받은 IP 주소는 HTTP 프로토콜을 사용하여 HTTP 요청 메시지를 생성함.

이렇게 생성된 HTTP 요청 메시지는 TCP 프로토콜을 사용하여 인터넷을 거쳐 해당 IP 주소의 컴퓨터로 전송됨.

 

⑦ 이렇게 도착한 HTTP 요청 메시지는 HTTP 프로토콜을 사용하여 웹 페이지 URL 정보로 변환됨.

⑧ 웹 서버는 도착한 웹 페이지 URL 정보에 해당하는 데이터를 검색함.

 

⑨⑩ 검색된 웹 페이지 데이터는 또 다시 HTTP 프로토콜을 사용하여 HTTP 응답 메시지를 생성함.

이렇게 생성된 HTTP 응답 메시지는 TCP 프로토콜을 사용하여 인터넷을 거쳐 원래 컴퓨터로 전송됨.

 

⑪ 도착한 HTTP 응답 메시지는 HTTP 프로토콜을 사용하여 웹 페이지 데이터로 변환됨.

⑫ 변환된 웹 페이지 데이터는 웹 브라우저에 의해 출력되어 사용자가 볼 수 있게 됨.

 

GSLB ?

cloud.google.com/load-balancing

 

Cloud Load Balancing  |  부하 분산  |  Google Cloud

Google의 전 세계 네트워크를 기반으로 한 확장 가능한 고성능 글로벌 부하 분산 서비스로서, HTTP(S), TCP/SSL, UDP, 자동 확장을 지원합니다.

cloud.google.com

 


tcpschool.com/webbasic/works 웹의동작원리

laptrinhx.com/understanding-different-types-of-record-in-dns-server-2768832543/ DNS Record

반응형