Upgrading BASIC ip with Start-VMPublicIPUpgrade is not working

Maciej Kurzeja 25 Reputation points
2025-10-10T06:13:20.4366667+00:00

I'm trying to upgrade a Basic ip of my Virtual Machine within Central US region with below command:

This VM in not a member of VMSS, any load balancer etc. simple VM with public basic sku ip and nsg.

Start-VMPublicIPUpgrade -VMName 'MyVMName' -ResourceGroupName 'MyRGName'.

Unfortunatelly I'm getting below error:

Start-VMPublicIPUpgrade : An error occurred during the upgrade process. We will try to reassociate all IPs with the VM: DNS record myvmname.northcentralus.cloudapp.azure.com is already reserved by another resource.

StatusCode: 400

ReasonPhrase: Bad Request

ErrorCode: DnsRecordIsReserved

ErrorMessage: DNS record myvmname.northcentralus.cloudapp.azure.com is already reserved by another resource.

OperationID : be31cda9-e3b9-4225-ad12-d6d06c641ee3

At line:1 char:1

+ Start-VMPublicIPUpgrade -VMName 'myvmname' -ResourceGroupName ..

+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ CategoryInfo : NotSpecified: (:) [Write-Error], WriteErrorException

+ FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,Start-VMPublicIPUpgrade

I was trying to execute below command but is not working either.

Start-VMPublicIPUpgrade -RecoverFromFile ./PublicIPUpgrade_Recovery_2025-10-06-13-25.csv -VMName 'MyVMName' -ResourceGroupName 'MyRGName'

This dns record is of course used only especially by this very VM. So why this error? I ahve done this sript few timess for other VM in other region without errors. What am i missing here?

Azure VPN Gateway
Azure VPN Gateway
An Azure service that enables the connection of on-premises networks to Azure through site-to-site virtual private networks.
0 comments No comments
{count} votes

Answer accepted by question author
  1. Priya ranjan Jena 1,510 Reputation points Microsoft External Staff Moderator
    2025-10-15T18:16:36.24+00:00

    Hi Maciej Kurzeja,

    As you confirmed, everything is working fine for you, so for future reference you can follow the below steps if required.

    1. Check for Existing Reservations: Ensure that the DNS name myvmname.northcentralus.cloudapp.azure.com is not already in use by another resource in your Azure subscription. If it is, you might need to choose a different DNS name for your current VM.
    2. Verify VM State: Make sure the VM is in a stable state and not undergoing any other operations that might interfere with the upgrade process.
    3. Run the -WhatIf Parameter: Before proceeding with the actual upgrade command, run:
         Start-VMPublicIPUpgrade -VMName 'MyVMName' -ResourceGroupName 'MyRGName' -WhatIf
      
      This will help you understand what changes would occur without making any actual modifications.
    4. Use Recovery Option: You mentioned that you're trying the recovery command, but ensure the recovery file path is correct and that it has not been altered from the original state.
    5. Try Manual Clean-Up: If issues persist, consider de-associating the Public IP from the VM entirely and then re-associating it later after the upgrade.

    Thanks

    0 comments No comments

2 additional answers

Sort by: Most helpful
  1. Deepanshu katara 17,875 Reputation points MVP Moderator
    2025-10-10T06:20:43.7666667+00:00

    Hello,

    That error is interesting and indicates a DNS name conflict:

    “DNS record myvmname.northcentralus.cloudapp.azure.com is already reserved by another resource.” ErrorCode: DnsRecordIsReserved

    That means Azure thinks that the DNS label (the myvmname.northcentralus.cloudapp.azure.com) is already in use by some other resource in that region/namespace, even though you believe it’s uniquely used by this VM.

    Possible causes

    1. Orphaned DNS label or stale reservation Even though you think it's only used by this VM, perhaps the DNS label is still “claimed” by some other resource (e.g. a deleted VM, public IP, cloud service, or something). Azure enforces uniqueness of DNS labels in the *.cloudapp.azure.com namespace
    2. Regional mismatch / cross-region conflict Even though your VM is in Central US, the DNS name says northcentralus.cloudapp.azure.com. This mismatch suggests perhaps the DNS label is being considered in a different region (north central) than VM region (central) — could be a discrepancy or misconfiguration.

    Solution

    1-Check that your current VM’s Public IP DNS label

    $pip = Get-AzPublicIpAddress -Name <yourPublicIPName> -ResourceGroupName <RG>
    $pip.DnsSettings
    
    
    

    2- Disassociate the Public IP manually, then upgrade If safe (i.e. you're okay with downtime for that VM), try doing the upgrade manually:

    Change the public IP from Dynamic to Static (if not already). The upgrade script expects static allocation. Microsoft Learn+1

    Disassociate the public IP from the VM’s NIC (remove the PublicIP reference in the NIC’s IP configuration).

    Upgrade the Public IP SKU (set Sku.Name = "Standard") on the public IP resource itself (now that it's disassociated).

    Re-associate the (now upgraded) Public IP to the NIC.

    Pls check and let us know if any further ques

    ThankS

    Depanshu


  2. Maciej Kurzeja 25 Reputation points
    2025-10-14T10:04:53.45+00:00

    I have tried to manually Dissociate Basic SKU IP from VM(no problem with this step) and than "Upgrade to standard SKU", unfortunatelly I'm getting below error:

    failed1

    There is no place where this DNS record could be somehow reserved.

    Get-AZPublicIpAddress is just showing dna name associated with basic sku ip.

    User's image

    I have problem only with this specific IP, are there any insights logged so I can narrow the issue?

    Solved:

    Changing parameter DNS name label (optional) --> added suffix '1' resolve my issue.

    I was able to upgrade the IP. After the operation DNS name label (optional) came back to previous value (without suffix '1').

    0 comments No comments

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.