Share via

Cross-Tenant Azure App Service Private Endpoint DNS Not Resolving to Private IP

Ash B 0 Reputation points
2026-04-30T16:05:08.47+00:00

Hi all,

I’m working on a cross-tenant Azure App Service Private Endpoint configuration and am having trouble getting DNS resolution to return the Private Endpoint IP from a VM within my virtual network. I have followed Microsoft documentation and several troubleshooting guides, but DNS queries for the App Service hostname still resolve to the public IP and don't return the private IP as expected.

Scenario:

  • One tenant (Central) acts as the consumer and hosts the virtual network and a test VM.
  • A second tenant (tenant A) acts as the provider and hosts the Azure App Service.
  • A Private Endpoint is created in the consumer virtual network, targeting the App Service in the provider tenant.
  • A Private DNS zone for App Service Private Endpoints is created in the consumer tenant and linked to the virtual network.
  • The Private DNS zone contains an A record for the App Service regional private hostname that points to the Private Endpoint IP.
  • I have also tested adding a CNAME for the App Service short name pointing to the regional private hostname.

What I have tried:

  • Verified that the Private DNS zone is correctly linked to the virtual network.
  • Verified that the A record for the regional private hostname exists and points to the Private Endpoint IP.
  • Flushed the DNS cache on the VM.
  • Confirmed the VM is using Azure’s default DNS service.
  • DNS lookups for both the regional private hostname and the short hostname return “Non-existent domain.”
  • Connectivity tests to the Private Endpoint IP on port 443 succeed.
  • The App Service itself is running and accessible via the public endpoint when enabled.
  • No custom DNS servers or private DNS resolvers are configured.

Questions:

  • What might be missing in my DNS configuration for a cross-tenant App Service Private Endpoint scenario?
  • Is there an additional step required to make the regional private hostname resolvable from a VM in the consumer virtual network?
  • Do any additional DNS records need to be created manually, or is there a recommended approach for wiring up DNS in this setup?
  • Is it possible to have the standard App Service hostname resolve to the Private Endpoint IP in a cross-tenant configuration?
  • Are there any known platform limitations or common pitfalls with this type of deployment?

Thanks in advance for any guidance

Azure Private Link
Azure Private Link

An Azure service that provides private connectivity from a virtual network to Azure platform as a service, customer-owned, or Microsoft partner services.


3 answers

Sort by: Most helpful
  1. Vallepu Venkateswarlu 8,430 Reputation points Microsoft External Staff Moderator
    2026-05-01T20:07:50.41+00:00

    Hi @ Ash B,

    Thanks for your response.

    The issue is caused by incorrect DNS configuration for App Service Private Endpoint. In cross-tenant scenarios, DNS is not automatically integrated, so you must manually create a Private DNS zone named privatelink.azurewebsites.net in the consumer tenant and add an A record for <appname>.privatelink.azurewebsites.net pointing to the Private Endpoint IP.

    The standard App Service hostname resolves via a CNAME chain to this private zone, so without the correct zone and record, DNS queries return NXDOMAIN.

    Please follow the Cross-tenant secure access to apps by using private endpoints and verify the configuration.

    Diagram that shows how a private endpoint securely connects a user on a virtual machine (VM) in one tenant to a web app in another tenant.

    Ref: Troubleshoot Azure Private Endpoint connectivity problems

    Please210246-screenshot-2021-12-10-121802.pngand “up-vote” wherever the information provided helps you, this can be beneficial to other community members.

    0 comments No comments

  2. Deleted

    This answer has been deleted due to a violation of our Code of Conduct. The answer was manually reported or identified through automated detection before action was taken. Please refer to our Code of Conduct for more information.


    Comments have been turned off. Learn more

  3. Q&A Assist
    2026-04-30T16:05:45.76+00:00
    AI generated content. This question contains an answer created with AI from Q&A Assist. Learn more

    The DNS behavior matches a misconfigured or incomplete Private Endpoint DNS setup. For App Service Private Endpoints, DNS must be wired so that the standard hostname (for example, webapp.azurewebsites.net) ultimately resolves to the private endpoint IP via the privatelink zone.

    Key points for this scenario:

    1. DNS flow for cross-tenant App Service Private Endpoint

    From the cross-tenant architecture:

    1. The VM queries webapp.azurewebsites.net.
    2. Azure public DNS returns a CNAME: webapp.privatelink.azurewebsites.net.
    3. A private DNS zone handles webapp.privatelink.azurewebsites.net and returns an A record with the private endpoint IP.
    4. The VM connects to the private endpoint IP over HTTPS.

    If the VM is still resolving to a public IP or gets Non-existent domain, the private DNS zone for privatelink.azurewebsites.net is either missing, not correctly linked, or doesn’t contain the correct A record.

    1. Required DNS configuration in the consumer tenant

    For an App Service Private Endpoint in a consumer VNet:

    • Create an Azure Private DNS zone for the App Service private endpoint zone, for example:
      • privatelink.azurewebsites.net (or the appropriate regional/private zone for App Service as documented in the Private Endpoint DNS values).
    • Link this private DNS zone to the consumer virtual network that hosts the VM.
    • Ensure the private DNS zone contains an A record for the private endpoint FQDN (for example, webapp.privatelink.azurewebsites.net) pointing to the private endpoint IP.

    From the DNS integration guidance:

    • DNS is critical because the service FQDN must resolve to the private endpoint IP instead of the public IP.
    • For workloads in a virtual network, use a Private DNS zone linked to that VNet and ensure the A record exists and points to the private endpoint IP.
    • Avoid mixing multiple services in the same Private DNS zone; use a zone per like-service private endpoint to prevent record deletion or conflicts.
    1. Why Non-existent domain appears

    If nslookup for the regional private hostname and short hostname returns Non-existent domain from the VM:

    • The VM is using Azure-provided DNS, which only resolves:
      • Names within the same VNet, and
      • Names in linked Private DNS zones.
    • If the private DNS zone for privatelink.azurewebsites.net is not correctly linked to the VNet, or the A record is missing, the query will fail and fall back to public DNS, which then returns the public IP or NXDOMAIN depending on the name.

    The troubleshooting guidance for private endpoints and virtual networks emphasizes:

    • Verify that the private DNS zone exists for the resource type (for example, privatelink.azurewebsites.net for App Service).
    • Verify that the private DNS zone is linked to the virtual network.
    • Verify that the A record exists and matches the private endpoint IP.
    1. Additional steps for cross-tenant scenarios

    In cross-tenant architectures:

    • Each tenant maintains its own private DNS zone and links it to its own VNets.
    • The consumer tenant must have its own private DNS zone for the privatelink domain and link it to the consumer VNet.
    • If the VM doesn’t have access to the private DNS zone, Azure public DNS will resolve webapp.privatelink.azurewebsites.net to a public IP, and HTTPS requests to that IP receive 403 Forbidden.

    Therefore, in this scenario, the missing piece is typically:

    • Ensuring the consumer tenant’s private DNS zone for privatelink.azurewebsites.net is correctly configured and linked, and
    • Ensuring the VM’s DNS resolution path actually uses that private DNS zone.
    1. Manual records and standard hostname resolution
    • The A record for webapp.privatelink.azurewebsites.net must exist in the private DNS zone and point to the private endpoint IP.
    • The standard hostname webapp.azurewebsites.net is handled by Azure public DNS, which returns the CNAME to webapp.privatelink.azurewebsites.net. No additional public DNS records should point directly to privatelink.azurewebsites.net.
    • The provider can configure a custom domain via a CNAME that references the public azurewebsites.net entry, but that CNAME must not point directly to privatelink.azurewebsites.net.

    In a correctly configured setup, the standard App Service hostname resolves to the private endpoint IP via the CNAME chain and the private DNS zone. No extra public records are required beyond what the platform creates.

    1. Common pitfalls and limitations

    Common issues highlighted in the guidance:

    • Overriding a zone that’s actively used to resolve public endpoints without proper DNS forwarding can break resolution.
    • Using a single Private DNS zone for multiple different services or private endpoints can cause record deletion and resolution issues.
    • Not linking the private DNS zone to the correct VNet, or relying solely on Azure-provided DNS without Private DNS zones, leads to public IP resolution instead of private IP.
    • If the user or service doesn’t have access to the private DNS zone, queries resolve to a public IP and receive 403 Forbidden.

    Summary of what is likely missing:

    • A correctly configured and linked Private DNS zone for the App Service privatelink domain in the consumer tenant, with an A record for the private endpoint FQDN pointing to the private endpoint IP.
    • Ensuring the VM’s DNS path uses that private DNS zone so that webapp.azurewebsites.net → CNAME webapp.privatelink.azurewebsites.net → A record (private endpoint IP) works end-to-end.

    References:

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.