TECHRUNBOOK · PRACTICAL GUIDE

Azure Private Endpoint DNS Resolution Troubleshooting

Fix Azure Private Endpoint DNS issues where names resolve to public IPs, return NXDOMAIN, or fail from Azure or on-premises clients.

Practical RunbookTechnical Troubleshooting
Practical Runbook10 StepsIssues → Solutions → Recommendations
Have a question about this runbook?Post your issue to the TechRunbook Community and get help from other IT professionals.
Ask the Community →
!Issue

Fix Azure Private Endpoint DNS issues where names resolve to public IPs, return NXDOMAIN, or fail from Azure or on-premises clients.

Solution

Start with Check the service FQDN and work through the six diagnostic checks in order.

Recommendations

Record results before changing configuration and validate the original symptom after each controlled change.

TechRunbook approach: Test one dependency at a time, record the result and only then change the configuration.

Quick checks

Start with the basic checks in this runbook before moving to deeper troubleshooting.

  • Confirm the affected service or component is available.
  • Check recent configuration or connectivity changes.
  • Run the relevant commands and compare the result with the expected state.
01

Check the service FQDN

Resolve the service FQDN from the affected network and compare the returned address with the private endpoint IP.

02

Check the Private DNS zone

Confirm the required privatelink zone and A record exist and are associated with the correct Azure resource.

03

Check VNet links

Verify the Private DNS zone is linked to every VNet from which clients need to resolve the name.

04

Check custom DNS forwarding

Check custom DNS servers, conditional forwarding and forwarding paths for the private-link namespace.

05

Check NXDOMAIN and stale records

Investigate NXDOMAIN or unexpected answers caused by missing records or an overriding private zone.

06

Flush and retest

Flush the client DNS cache and repeat the query from the same source network.

07

Useful commands

Run these checks from an appropriate administrative session and replace example values with your environment.

DNS lookup

Resolve-DnsName <service-fqdn>

Private DNS zones

Get-AzPrivateDnsZone -ResourceGroupName <resource-group>
08

Quick troubleshooting path

Use this sequence to isolate the failing dependency before changing production configuration.

  1. Check the service FQDN → Resolve the service FQDN from the affected network and compare the returned address with the private endpoint IP.
  2. Check the Private DNS zone → Confirm the required privatelink zone and A record exist and are associated with the correct Azure resource.
  3. Check VNet links → Verify the Private DNS zone is linked to every VNet from which clients need to resolve the name.
  4. Check custom DNS forwarding → Check custom DNS servers, conditional forwarding and forwarding paths for the private-link namespace.
  5. Check NXDOMAIN and stale records → Investigate NXDOMAIN or unexpected answers caused by missing records or an overriding private zone.
  6. Flush and retest → Flush the client DNS cache and repeat the query from the same source network.
09

What good troubleshooting looks like

Good infrastructure troubleshooting is evidence-driven. Capture the original state, test the dependency that can prove or disprove your hypothesis, make the smallest safe change and repeat the original test.

Example workflow
Symptom → hypothesis → direct test → result → controlled change → validation → documentation
10

Frequently asked questions

What should I check first?

Start with the exact symptom and validate the dependency closest to the failure in this Azure runbook.

Should I change production configuration immediately?

No. Capture the current state first, test the suspected dependency and make one controlled change at a time.

How should I document the fix?

Record the symptom, commands used, result, configuration change and validation result so the procedure can be repeated.

+

Related TechRunbook guides

Was this runbook helpful?

↑ Top