Skip to content

Commit 3fcdfd1

Browse files
committed
review of scearios and wording
1 parent 86f4134 commit 3fcdfd1

File tree

3 files changed

+46
-38
lines changed

3 files changed

+46
-38
lines changed
Binary file not shown.

articles/private-link/private-endpoint-dns.md

Lines changed: 43 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,24 @@ ms.author: allensu
1010
---
1111
# Azure Private Endpoint DNS Configuration
1212

13-
## DNS configuration
13+
1414
When connecting to a private link resource using a fully qualified domain name (FQDN) as part of the connection string, it's important to correctly configure your DNS settings to resolve to the allocated private IP address. Existing Azure services might already have a DNS configuration to use when connecting over a public endpoint. This needs to be overridden to connect using your private endpoint.
1515

1616
The network interface associated with the private endpoint contains the complete set of information required to configure your DNS, including FQDN and private IP addresses allocated for a given private link resource.
1717

1818
You can use the following options to configure your DNS settings for private endpoints:
1919
- **Use the Host file (only recommended for testing)**. You can use the host file on a virtual machine to override the DNS.
20-
- **Use a private DNS zone**. You can use private DNS zones to override the DNS resolution for a given private endpoint. A private DNS zone can be linked to your virtual network to resolve specific domains.
20+
- **Use a private DNS zone**. You can use [private DNS zones](../dns/private-dns-privatednszone.md) to override the DNS resolution for a given private endpoint. A private DNS zone can be linked to your virtual network to resolve specific domains.
2121
- **Use your custom DNS server**. You can use your own DNS server to override the DNS resolution for a given private link resource. If your [DNS server](../virtual-network/virtual-networks-name-resolution-for-vms-and-role-instances.md#name-resolution-that-uses-your-own-dns-server) is hosted on a virtual network, you can create a DNS forwarding rule to use a private DNS zone to simplify the configuration for all private link resources.
2222

2323
> [!IMPORTANT]
2424
> It's not recommended to override a zone that is actively in use to resolve public endpoints. Connections to resources won't be able to resolve correctly without DNS forwarding to the public DNS. To avoid issues, create a different domain name or follow the suggested name for each service below.
25+
26+
## Azure services DNS zone configuration
27+
Azure services will create a canonical name DNS record (CNAME) on the public DNS to redirect the resolution to the suggested private domain names. You'll be able to override the resolution with the private IP address of your private endpoints.
2528

29+
Your applications don't need to change the connection URL. When attempting to resolve using a public DNS, the DNS server will now resolve to your private endpoints. The process does not impact your existing applications.
30+
2631
For Azure services, use the recommended zone names as described in the following table:
2732

2833
|Private Link resource type |Subresource |Zone name |
@@ -57,71 +62,72 @@ For Azure services, use the recommended zone names as described in the following
5762
|Azure WebApps (Microsoft.Web/sites) | site | privatelink.azurewebsites.net |
5863
|Azure Machine Learning(Microsoft.MachineLearningServices/workspaces) | workspace | privatelink.api.azureml.ms |
5964

60-
Azure will create a canonical name DNS record (CNAME) on the public DNS to redirect the resolution to the suggested domain names. You'll be able to override the resolution with the private IP address of your private endpoints.
61-
62-
Your applications don't need to change the connection URL. When attempting to resolve using a public DNS, the DNS server will now resolve to your private endpoints. The process does not impact your applications.
6365

64-
## DNS integration scenarios
6566

66-
DNS is a critical component to make private endpoints work correctly within a solution.
67-
These scenarios are oriented to guide you on how to get the dns resolution integrated based where the clients are located
67+
## DNS configuration scenarios
6868

69-
### cloud only scenarios
70-
> [!NOTE]
71-
> These scenarios use Azure SQL database as the integrated private endpoint, still the guidance applies to any other Azure service that has an integrated the private endpoint.
69+
The FQDN of the services resolves a public ip address, you have to change your DNS configuration to resolve the private IP address of the private endpoint.
7270

71+
DNS is a critical component to make the application work correctly by resolving in a right manner the private endpoint IP address.
7372

74-
- Single VNET and Azure Provided DNS
73+
Based on your preferences the following scenarios will guide you on how to get the DNS resolution integrated
7574

76-
This an Azure only scenario where the client queries for the private endpoint IP to Azure provided DNS [168.63.129.16](https://docs.microsoft.com/azure/virtual-network/what-is-ip-address-168-63-129-16) that makes the authoritative resolution and then queries the azure private dns zone for the required record.
75+
- [Virtual Network workloads without custom DNS server](#Virtual-Network-workloads-without-custom-DNS-server)
76+
- [On Premise forwarding DNS to Azure](#On-Premise-forwarding-DNS-to-Azure)
7777

78+
## Virtual Network workloads without custom DNS server
7879

79-
![single vnet and azure provided dns](media/private-endpoint-dns/single-vnet-azure-dns.png)
80+
This configuration is appropriate for virtual network workloads without custom DNS server, in this scenario the client queries for the private endpoint IP address to Azure provided DNS [168.63.129.16](https://docs.microsoft.com/azure/virtual-network/what-is-ip-address-168-63-129-16). Azure DNS will be responsible for DNS resolution of the private DNS zones.
8081

81-
- Hub and Spoke with Azure provided DNS
8282

83-
In this scenario there's a [hub & spoke](https://docs.microsoft.com/azure/architecture/reference-architectures/hybrid-networking/hub-spoke) networking topology with the spoke networks sharing a common private endpoint and all the spoke VNET are linked to the same private dns zone.
83+
> [!NOTE]
84+
> This scenario is using Azure SQL database recommended Private DNS zone. For other services you can adjust the model using the following reference [Azure services DNS zone configuration](#Azure-services-DNS-zone-configuration).
8485
85-
![hub & spoke with azure provided dns](media/private-endpoint-dns/hubandspoke-azure-dns.png)
86+
To configure properly you would need the following resources :
8687

88+
- client virtual network
8789

90+
- private dns zones [(privatelink.database.windows.net)](../dns/private-dns-privatednszone.md) with [A Record](../dns/dns-zones-records#record-types)
8891

89-
### on premise scenario
92+
- private endpoint information (FQDN record name and Private IP Address)
9093

91-
> [!NOTE]
92-
> This scenario use Azure SQL database as the integrated private endpoint, still the guidance applies to any other Azure service that has an integrated the private endpoint.
94+
The following diagram illustrates the DNS resolution sequence from virtual network workloads using private dns zone
9395

94-
- on premise forwarding to Azure
9596

96-
This scenario corresponds to an on premise network that has its internal dns solution (10.0.0.254) that forwards dns traffic via a conditional forwarder for the general zone database.windows.net and chains up the dns resolution to the custom dns (10.5.0.254) deployed in Azure.
97+
![single vnet and azure provided dns](media/private-endpoint-dns/single-vnet-azure-dns.png)
9798

98-
> [!NOTE]
99-
> The internal DNS (10.0.0.254) is applicable only if there is an existing dns solution in place , or else the clients can use directly the custom DNS deployed in Azure (10.5.0.254)
10099

101-
> [!IMPORTANT]
102-
> The conditional forwarding must be made to the original zone Ex: database.windows.net , NOT **privatelink**.database.windows.net
100+
This model can be extended to multiple VNet peered that are associated to the same private endpoint. this can be done by adding new links to the private DNS zone for all peered VNets
103101

102+
> [!IMPORTANT]
103+
> A single private DNS zone is required for this configuration, creating multiple zones with the same name for different VNets would need manual operations to merge the DNS records
104104
105-
![On-prem forward to azure](media/private-endpoint-dns/onpremdns-forward-to-azure.png)
105+
In this scenario there's a [hub & spoke](https://docs.microsoft.com/azure/architecture/reference-architectures/hybrid-networking/hub-spoke) networking topology with the spoke networks sharing a common private endpoint and all the spoke VNet are linked to the same private dns zone.
106106

107+
![hub & spoke with azure provided dns](media/private-endpoint-dns/hubandspoke-azure-dns.png)
107108

108-
### hybrid scenario
109-
> [!NOTE]
110-
> This scenario use Azure SQL database as the integrated private endpoint, still the guidance applies to any other Azure service that has an integrated the private endpoint.
111109

112-
This scenario shows:
110+
## On Premise forwarding DNS to Azure
113111

114-
- on-premise network that has its internal dns solution (10.0.0.254) that forwards dns traffic via a conditional forwarder for the general zone database.windows.net and chains up the dns resolution to the custom dns (10.5.0.254) deployed in Azure.
112+
This configuration is appropriate for an on premise network that has already an internal dns solution.
113+
This internal DNS solution needs to be configured to forward DNS traffic to Azure via a conditional forwarder.
115114

116-
- spoke vnet (vnet-spoke-eastus-001) sharing a private link endpoint and private dns zone
115+
> [!NOTE]
116+
> This scenario is using Azure SQL database recommended Private DNS zone. For other services you can adjust the model using the following reference [Azure services DNS zone configuration](#Azure-services-DNS-zone-configuration).
117+
118+
To configure properly you would need the following resources :
117119

118-
> [!NOTE]
119-
> The internal DNS (10.0.0.254) is applicable only if there is an existing dns solution in place , or else the clients can use directly the custom DNS deployed in Azure (10.5.0.254)
120+
- on premise network with a DNS solution in place
121+
- client virtual network
122+
- private dns zones [(privatelink.database.windows.net)](../dns/private-dns-privatednszone.md) with [A Record](../dns/dns-zones-records#record-types)
123+
- private endpoint information (FQDN record name and Private IP Address)
124+
125+
The following diagram illustrates the DNS resolution sequence from virtual network workloads using private dns zone
120126

121127
> [!IMPORTANT]
122-
> The conditional forwarding must be made to the original zone Ex: database.windows.net , NOT **privatelink**.database.windows.net
128+
> The conditional forwarding must be made to the base DNS zone Ex: database.windows.net , NOT **privatelink**.database.windows.net
123129
130+
![On-prem forward to azure](media/private-endpoint-dns/onpremdns-forward-to-azure.png)
124131

125-
![hybrid scenario](media/private-endpoint-dns/hybridscenario.png)
126132

127133

articles/private-link/private-endpoint-overview.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,9 @@ When connecting to a private link resource using a fully qualified domain name (
101101

102102
The network interface associated with the private endpoint contains the complete set of information required to configure your DNS, including FQDN and private IP addresses allocated for a given private link resource.
103103

104-
please review [integrate dns with private endpoints](private-endpoint-dns.md) for more details.
104+
For complete detailed information about best practices and recommendations to configure DNS for Private Endpoints, please review [Private Endpoint DNS configuration article](private-endpoint-dns.md).
105+
106+
105107

106108

107109
## Limitations

0 commit comments

Comments
 (0)