Share via

Why does Azure DNS have both internal.cloudapp.net and a VNet unique internal.cloudapp.net?

Daniel Dib 20 Reputation points
2025-06-01T20:18:30.6066667+00:00

Hi,

When using Azure-provided DNS, using the recursive resolver at 168.63.129.16, it seems that VMs get registered both in internal.cloudapp.net, as well as a zone unique to the VNet, something like <random-string>.<region>.internal.cloudapp.net. For example, if the hostname of the VM is vm1, there will be an A-record vm1.internal.cloudapp.net, as well as as something like vm1.abc123.gvxx.internal.cloudapp.net.

Why are there two zones? Wouldn't internal.cloudapp.net be enough?

Is it to support having VMs with same name in case you setup a custom DNS server in the VNet and want to resolve FQDNs in another VNet? For example, if you have two VNets and put a custom DNS server in each, you could resolve FQDNs in the other VNet by forwarding DNS requests to the other server which could then forward it to the recursive resolver at 168.63.129.16. Is that the use case?

Azure DNS
Azure DNS

An Azure service that enables hosting Domain Name System (DNS) domains in Azure.

0 comments No comments

Answer accepted by question author

  1. Divyesh Govaerdhanan 10,885 Reputation points
    2025-06-01T23:12:38.9533333+00:00

    Hello,

    Welcome to Microsoft Q&A,

    When using Azure-provided DNS with the recursive resolver 168.63.129.16. Azure creates two types of DNS zones for your VMs:

    1. internal.cloudapp.net
    • This is the global internal DNS zone Azure uses across all VNets.
    • VMs get a hostname like:
        vm1.internal.cloudapp.net
      
    • Uniqueness: This zone ensures hostnames are globally unique within the same subscription and region, but not across VNets.
    1. <vnet-guid>.<region>.internal.cloudapp.net
    • This is the VNet-scoped internal DNS zone.
    • Hostname format:
        vm1.abcd1234.eastus.internal.cloudapp.net
      
      The <vnet-guid> is a hashed identifier representing your VNet.

    VM Name Uniqueness Within VNets

    You can have the same VM name (e.g., vm1) in different VNets. Azure needs a way to disambiguate those in DNS.

    If both VMs are named vm1, you'd get:

    vm1.abcd1234.eastus.internal.cloudapp.net

    vm1.wxyz5678.eastus.internal.cloudapp.net

    But they would both map to:

    • vm1.internal.cloudapp.net (first one wins in global zone)

    So the per-VNet zone ensures DNS resolution works even with duplicate names.

    Please Upvote and accept the answer if it helps!!

    2 people found this answer helpful.

0 additional answers

Sort by: Most helpful

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.