프라이빗 엔드포인트와 DNS 통합
프라이빗 DNS 영역은 보통 허브 VNet이 배포된 동일한 Azure 구독에서 중앙으로 호스트됩니다. 이 중앙 호스팅 방법은 프레미스 간 DNS 이름 확인 및 Active Directory와 같은 중앙 DNS 확인의 기타 요구 사항에 따라 좌우됩니다. 대부분의 경우 네트워킹/ID 관리자만 이러한 영역에서 DNS 레코드를 관리할 수 있는 권한이 있습니다.
Azure 프라이빗 엔드포인트 DNS 구성
다음 다이어그램은 중앙 DNS 확인이 있고, Private Link 리소스의 이름 확인이 Azure 프라이빗 DNS 통해 수행되는 엔터프라이즈 환경에 대한 일반적인 상위 수준 아키텍처를 보여 줍니다.
이전 다이어그램에서 다음을 강조해야 합니다.
- 온-프레미스 DNS 서버에는 허브 VNet에서 호스트되는 DNS 전달자(10.100.2.4 및 10.100.2.5)를 가리키는 각 프라이빗 엔드포인트 공용 DNS 영역 전달자용으로 구성된 조건부 전달자가 있습니다.
- 허브 VNet에서 호스트되는 DNS 서버 10.100.2.4 및 10.100.2.5는 Azure 제공 DNS 확인자(168.63.129.16)를 전달자로 사용합니다.
- 모든 Azure VNet에는 주/보조 DNS 서버로 구성된 DNS 전달자(10.100.2.4 및 10.100.2.5)가 있습니다.
- 애플리케이션 팀이 구독에 필요한 Azure PaaS 리소스를 자유롭게 만들 수 있도록 하려면 두 가지 조건을 충족해야 합니다.
- 중앙 네트워킹 및/또는 중앙 플랫폼 팀은 애플리케이션 팀이 프라이빗 엔드포인트를 통해서만 Azure PaaS 서비스를 배포하고 액세스할 수 있도록 해야 합니다.
- 중앙 네트워킹 및/또는 중앙 플랫폼 팀은 프라이빗 엔드포인트를 만들 때마다 해당 레코드가 만들어진 서비스와 일치하는 중앙 집중식 프라이빗 DNS 영역에 자동으로 만들어지도록 해야 합니다.
- DNS 레코드는 프라이빗 엔드포인트의 수명 주기를 따르고, 프라이빗 엔드포인트가 삭제되면 DNS 레코드를 자동으로 제거해야 합니다.
IP 주소 168.63.129.16의 중요도
IP 주소 168.63.129.16은 Azure 플랫폼 리소스에 대한 통신 채널을 원활하게 설정하는 데 사용되는 가상 공용 IP 주소입니다. 고객은 Azure에서 프라이빗 가상 네트워크용 주소 공간을 정의할 수 있습니다. Azure 플랫폼 리소스는 고유한 공용 IP 주소로 표시되어야 합니다. 이 가상 공용 IP 주소가 있으면 다음 작업을 원활하게 수행할 수 있습니다.
- VM 에이전트가 Azure 플랫폼과 통신하여 "준비" 상태임을 알릴 수 있습니다.
- 사용자 지정 DNS 서버가 없는 VM 등의 리소스에 필터링된 이름 확인 기능을 제공하기 위해 DNS 가상 서버와 통신할 수 있습니다. 이 필터링을 통해 고객은 리소스의 호스트 이름만 확인할 수 있습니다.
- Azure Load Balancer의 상태 프로브를 사용하여 VM의 성능 상태를 확인할 수 있습니다.
- VM이 Azure의 DHCP 서비스에서 동적 IP 주소를 가져올 수 있습니다.
- PaaS 역할에 대한 게스트 에이전트 하트비트 메시지를 사용합니다.
Azure 서비스 프라이빗 DNS 영역 구성 예제
Azure에서 공용 DNS에 정식 이름 DNS 레코드(CNAME)를 만듭니다. CNAME 레코드는 프라이빗 도메인 이름으로 확인을 리디렉션합니다. 프라이빗 엔드포인트의 개인 IP 주소를 사용하여 확인 사항을 재정의할 수 있습니다.
애플리케이션에서 연결 URL을 변경할 필요가 없습니다. 공용 DNS 서비스를 확인할 때 DNS 서버가 프라이빗 엔드포인트로 확인됩니다. 프로세스는 기존 애플리케이션에 영향을 미치지 않습니다.
지정된 형식의 프라이빗 DNS 영역을 이미 사용하고 있는 프라이빗 네트워크에서는 프라이빗 엔드포인트 연결이 없는 경우에만 공용 리소스에 연결할 수 있습니다. 그렇지 않은 경우 DNS 확인 시퀀스를 완료하려면 프라이빗 DNS 영역에서 해당 DNS를 구성해야 합니다.
Azure 서비스의 경우 설명서에 안내된 권장 영역 이름을 사용합니다.
DNS 구성 시나리오
서비스의 FQDN은 공용 IP 주소에 대해 자동으로 확인됩니다. 프라이빗 엔드포인트의 개인 IP 주소를 확인하려면 DNS 구성을 변경합니다.
DNS는 프라이빗 엔드포인트 IP 주소를 확인함으로써 애플리케이션이 제대로 작동하도록 하는 데 중요한 구성 요소입니다.
기본 설정에 따라 다음과 같은 시나리오를 DNS 확인에 통합할 수 있습니다.
- 사용자 지정 DNS 서버가 없는 가상 네트워크 워크로드
- DNS 전달자를 사용하는 온-프레미스 워크로드
- DNS 전달자를 사용하는 온-프레미스 워크로드 및 가상 네트워크
- 프라이빗 DNS 영역 그룹
DNS 전달자를 사용하는 온-프레미스 워크로드
온-프레미스 워크로드에서 프라이빗 엔드포인트의 FQDN을 확인하려면 DNS 전달자를 사용하여 Azure의 Azure 서비스 공용 DNS 영역을 확인합니다. DNS 전달자는 다른 가상 네트워크 또는 온-프레미스에서 들어오는 DNS 쿼리를 프록시할 수 있는 프라이빗 DNS 영역에 연결된 가상 네트워크에서 실행되는 가상 머신입니다. 쿼리는 Azure DNS에 대한 가상 네트워크에서 시작되어야 하므로 이 작업이 필요합니다. DNS 프록시에 대한 몇 가지 옵션은 DNS 서비스를 실행하는 Windows, DNS 서비스를 실행하는 Linux, Azure Firewall입니다.
다음 시나리오는 Azure에 DNS 전달자가 있는 온-프레미스 네트워크를 대상으로 합니다. 이 전달자는 서버 수준 전달자를 통해 Azure 제공 DNS 168.63.129.16에 대해 DNS 쿼리를 확인합니다.
이 시나리오는 Azure SQL Database 권장 프라이빗 DNS 영역을 사용합니다. 다른 서비스의 경우 다음 참조 Azure 서비스 DNS 영역 구성을 사용하여 모델을 조정할 수 있습니다.
올바르게 구성하려면 다음 리소스가 필요합니다.
- 온-프레미스 네트워크
- 온-프레미스에 연결된 가상 네트워크
- Azure에 배포된 DNS 전달자
- 프라이빗 DNS 영역 privatelink.database.windows.net(A 레코드 형식 사용)
- 프라이빗 엔드포인트 정보(FQDN 레코드 이름 및 프라이빗 IP 주소)
다음 다이어그램은 온-프레미스 네트워크의 DNS 확인 시퀀스를 보여 줍니다. 구성에서는 Azure에 배포된 DNS 전달자를 사용합니다. 확인은 가상 네트워크에 연결된 프라이빗 DNS 영역에서 이루어집니다.
Azure DNS Private Resolver를 사용하는 온-프레미스 워크로드 및 가상 네트워크
DNS Private Resolver를 사용하는 경우 DNS 전달자 VM이 필요하지 않으며, Azure DNS가 온-프레미스 도메인 이름을 확인할 수 있습니다.
다음 다이어그램에서는 허브 스포크 네트워크 토폴로지에서 DNS Private Resolver를 사용합니다. 모범 사례로 Azure 랜딩 영역 디자인 패턴은 이러한 유형의 토폴로지를 사용하는 것이 좋습니다. 하이브리드 네트워크 연결은 Azure ExpressRoute 및 Azure Firewall을 사용하여 설정됩니다. 이 설정은 안전한 하이브리드 네트워크를 제공합니다. DNS Private Resolver는 허브 네트워크에 배포됩니다.
- DNS Private Resolver 솔루션 구성 요소 검토
- 온-프레미스 DNS 쿼리에 대한 트래픽 흐름 검토
- VM DNS 쿼리에 대한 트래픽 흐름 검토
- DNS Private Resolver를 통한 VM DNS 쿼리에 대한 트래픽 흐름 검토
- DNS Private Resolver를 통한 VM DNS 쿼리에 대한 트래픽 흐름 검토