Azure DNS란?
Azure DNS는 Microsoft Azure 인프라를 사용하여 이름 확인을 제공하는 DNS(Domain Name System) 도메인을 위한 호스팅 서비스입니다.
이 단원에서는 DNS가 무엇이고 어떻게 작동하는지 알아봅니다. 또한 Azure DNS에 대해서도 알아보고 이를 사용해야 하는 이유도 알아봅니다.
DNS란?
DNS(도메인 이름 시스템)는 TCP/IP 표준 내 프로토콜입니다. DNS는 사람이 읽을 수 있는 도메인 이름(예: www.wideworldimports.com
)을 알려진 IP 주소로 변환하는 데 필수적인 역할을 합니다. IP 주소를 사용하여 컴퓨터와 네트워크 디바이스가 서로 요청을 식별하고 라우팅할 수 있습니다.
DNS는 전 세계 서버에서 호스트되는 글로벌 디렉터리를 사용합니다. Microsoft는 Azure DNS를 통해 DNS 서비스를 제공하는 네트워크의 일부입니다.
DNS 서버는 DNS 이름 서버 또는 그냥 이름 서버라고도 합니다.
DNS는 어떻게 작동하나요?
DNS 서버는 다음과 같은 두 가지 기본 기능 중 하나를 수행합니다.
- 최근에 액세스한 또는 사용된 도메인 이름과 해당 IP 주소에 대한 로컬 캐시를 유지합니다. 이 캐시는 로컬 도메인 조회 요청에 대해 빠른 응답을 제공합니다. DNS 서버는 요청된 도메인을 찾을 수 없는 경우 요청을 다른 DNS 서버로 전달합니다. 이 프로세스는 검색 되거나 검색 시간이 초과될 때까지 각 DNS 서버에서 반복됩니다.
- IP 주소와 DNS 서버가 권한이 있는 모든 호스트 또는 하위 도메인의 키-값 쌍 데이터베이스를 유지합니다. 이 기능은 메일, 웹 및 기타 인터넷 도메인 서비스와 연결되는 경우가 많습니다.
DNS 서버 할당
컴퓨터, 서버 또는 다른 네트워크 사용 디바이스가 웹 기반 리소스에 액세스하려면 DNS 서버를 참조해야 합니다.
온-프레미스 네트워크를 사용하여 연결하는 경우 DNS 설정은 서버에서 제공됩니다. 호텔과 같은 외부 위치에서 웹에 액세스하는 경우 DNS 설정은 ISP(인터넷 서비스 공급자)에서 제공됩니다.
도메인 조회 요청
다음은 DNS 서버에서 도메인 이름 조회 요청을 확인할 때 사용하는 프로세스에 대한 간략한 개요입니다.
- 도메인 이름이 단기 캐시에 저장된 경우 DNS 서버는 도메인 요청을 확인합니다.
- 도메인이 캐시에 없으면 웹에서 하나 이상의 DNS 서버에 연결하여 일치하는 항목이 있는지 확인합니다. 일치하는 항목이 검색되면 DNS 서버가 로컬 캐시를 업데이트하고 요청을 확인합니다.
- DNS를 여러번 체크했음에도 도메인을 찾을 수 없는 경우 DNS 서버는 도메인을 찾을 수 없음 이라는 오류로 응답합니다.
IPv4 및 IPv6
네트워크의 모든 컴퓨터, 서버 또는 네트워크 사용 디바이스에는 IP 주소가 있습니다. 도메인 내의 IP 주소는 고유합니다. IP 주소에는 IPv4, IPv7 이렇게 두 가지 기준이 있습니다.
IPv4는 0에서 255 사이의 숫자 집합 4개로 구성되며 각각 점으로 구분됩니다. 예: 127.0.0.1. IPv4는 현재 가장 일반적으로 사용되는 표준 IP입니다. 그러나 IoT 디바이스가 증가함에 따라 IPv4 표준은 언젠가 사용할 수 없게 될 것입니다.
IPv6은 비교적 새로운 표준이며 결국 IPv4를 바꿀 예정입니다. 8개의 16진수 그룹으로 구성되며, 각각 콜론으로 구분됩니다. 예: fe80:11a1:ac15:e9gf:e884:edb0:ddee:fea3.
현재 많은 네트워크 디바이스가 IPv4 및 IPv6 주소를 모두 사용하여 프로비전됩니다. DNS 이름 서버는 IPv4 및 IPv6 주소 모두에 대해 도메인 이름을 확인할 수 있습니다.
도메인에 대한 DNS 설정
타사가 DNS 서버를 호스팅하든 직접 관리하든, 사용하는 각 호스트 유형에 맞게 DNS 서버를 구성해야 합니다. 호스트 유형에는 웹, 이메일 또는 사용 중인 다른 서비스가 포함됩니다.
여러분은 회사의 관리자로서 Azure DNS를 사용하여 DNS 서버를 설정하려고 합니다. 이 경우 DNS 서버는 도메인에 대한 SOA(권한 시작) 역할을 합니다.
DNS 레코드 형식
DNS 서버 구성 정보는 DNS 서버의 영역에 파일로 저장됩니다. 각 파일을 레코드라고 합니다. 가장 일반적으로 생성되고 사용되는 레코드 형식은 다음과 같습니다.
- A는 호스트 레코드이며 가장 일반적인 DNS 레코드 형식입니다. 도메인 또는 호스트 이름을 IP 주소에 매핑합니다.
- CNAME은 한 도메인 이름에서 다른 도메인 이름으로 별칭을 만드는 데 사용되는 정식 이름 레코드입니다. 서로 다른 도메인 이름이 모두 동일한 웹 사이트에 액세스하는 경우 CNAME을 사용합니다.
- MX는 메일 교환 레코드입니다. 온-프레미스에서 호스트되는지 클라우드에서 호스트되는지와 상관없이 메일 서버에 메일 요청을 매핑합니다.
- TXT는 텍스트 레코드입니다. 텍스트 문자열을 도메인 이름과 연결하는 데 사용됩니다. Azure 및 Microsoft 365는 TXT 레코드를 사용하여 도메인 소유권을 확인합니다.
이 외에도 다음과 같은 레코드 형식이 있습니다.
- 와일드카드
- CA (certificate authority)
- NS(이름 서버)
- SOA(권한 개시 정보)
- SPF(발신자 정책 프레임워크)
- SRV (service location)
SOA 및 NS 레코드는 Azure DNS를 사용하여 DNS 영역을 만들 때 자동으로 생성됩니다.
레코드 집합
일부 레코드 형식은 레코드 집합 또는 리소스 레코드 집합 개념을 지원합니다. 레코드 집합을 사용하여 단일 레코드에 여러 리소스를 정의할 수 있습니다. 예를 들어 다음 A 레코드는 도메인이 하나 있고 IP 주소가 두 개 있습니다.
www.wideworldimports.com. 3600 IN A 127.0.0.1
www.wideworldimports.com. 3600 IN A 127.0.0.2
SOA 및 CNAME 레코드에는 레코드 세트가 포함될 수 없습니다.
Azure DNS란?
Azure DNS로 전 세계적으로 분산된 이름 서버 인프라를 사용하여 도메인을 호스트하고 관리할 수 있습니다. 기존 Azure 자격 증명을 사용하여 모든 도메인을 관리할 수 있습니다.
Azure DNS는 도메인에 대한 SOA 역할을 합니다.
Azure DNS를 사용하여 도메인 이름을 등록할 수 없으며, 타사 도메인 등록 기관을 통해 등록해야 합니다.
Azure DNS를 사용하여 도메인을 호스트하는 이유
Azure DNS는 Azure Resource Manager 서비스를 기반으로 하며 다음과 같은 이점을 제공합니다.
- 보안 강화
- 사용 편의성
- 프라이빗 DNS 도메인
- 별칭 레코드 집합
현재는 Azure DNS가 도메인 이름 시스템 보안 확장을 지원하지 않습니다. 보안 확장이 필요한 경우 도메인의 해당 부분을 제3자 공급자를 통해 호스팅해야 합니다.
보안 기능
Azure DNS는 다음과 같은 보안 기능을 제공합니다.
- 역할 기반 액세스 제어 - Azure 리소스에 대한 사용자 액세스를 세부적으로 제어할 수 있습니다. 사용자의 사용 현황을 모니터링할 수 있으며, 사용자의 리소스 및 서비스 권한을 제어할 수 있습니다.
- 활동 로그를 통해 리소스 변경 내용을 추적하고 장애 발생 위치를 파악할 수 있습니다.
- 리소스 잠금은 리소스 그룹, 구독 또는 모든 Azure 리소스에 대한 액세스를 제한 또는 제거하는 더 높은 수준의 제어를 제공합니다.
사용이 용이함
Azure DNS는 Azure 서비스에 대한 DNS 레코드를 관리하고 외부 리소스에 대한 DNS를 제공할 수 있습니다. Azure DNS는 다른 Azure 서비스와 동일한 Azure 자격 증명, 지원 계약 및 대금 청구를 사용합니다.
Azure Portal, Azure PowerShell cmdlet 또는 Azure CLI를 사용하여 도메인 및 레코드를 관리할 수 있습니다. 자동화된 DNS 관리가 필요한 애플리케이션은 REST API와 SDK(소프트웨어 개발 키트)를 사용하여 서비스와 통합할 수 있습니다.
프라이빗 도메인
Azure DNS는 외부 도메인 이름을 IP 주소로 변환하는 과정을 처리합니다. Azure DNS를 사용하여 프라이빗 영역을 만들 수 있습니다. 이러한 영역은 하나의 가상 네트워크 안에서, 그리고 가상 네트워크들 간에 VM(가상 머신) 이름 확인을 제공하여 사용자 지정 DNS 솔루션을 만들 필요가 없습니다. 프라이빗 영역을 사용하면 Azure에서 제공하는 이름 대신 사용자 지정 도메인 이름을 사용할 수 있습니다.
가상 네트워크에 프라이빗 DNS 영역을 게시하려면 영역 내에서 레코드를 확인할 수 있는 가상 네트워크 목록을 지정합니다.
프라이빗 DNS 영역에는 다음과 같은 이점이 있습니다.
- DNS 영역은 Azure 인프라의 일부로 지원되므로 DNS 솔루션에 투자할 필요가 없습니다.
- A, CNAME, TXT, MX, SOA, AAAA, PTR 및 SRV와 같은 모든 DNS 레코드 형식이 지원됩니다.
- 가상 네트워크 내 VM의 호스트 이름이 자동으로 유지됩니다.
- 분할-수평 DNS 지원을 사용하면 동일한 도메인 이름이 프라이빗 영역과 공용 영역 모두에 존재할 수 있습니다. 원래 요청 위치에 따라 올바른 영역으로 확인됩니다.
별칭 레코드 집합
별칭 레코드 집합은 Azure 리소스를 가리킬 수 있습니다. 예를 들어 Azure 공용 IP 주소, Azure Traffic Manager 프로필 또는 Azure Content Delivery Network 엔드포인트로 트래픽을 보내도록 별칭 레코드를 설정할 수 있습니다.
별칭 레코드 집합은 다음과 같은 DNS 레코드 형식에서 지원됩니다.
- A
- AAAA
- CNAME