This article shows you how to configure routing preference via ISP network (Internet option) for a public IP address using the Azure portal, Azure PowerShell, or Azure CLI. After creating the public IP address, you can associate it with the following Azure resources for inbound and outbound traffic to the internet:
- Virtual machine
- Virtual machine scale set
- Azure Kubernetes Service (AKS)
- Internet-facing load balancer
- Application Gateway
- Azure Firewall
By default, the routing preference for public IP address is set to the Microsoft global network for all Azure services and can be associated with any Azure service.
Prerequisites
If you don't have an Azure account, create a free account before you begin.
If you don't have an Azure account, create a free account before you begin.
- This article requires version 2.0.49 or later of the Azure CLI. If using Azure Cloud Shell, the latest version is already installed.
If you don't have an Azure account, create a free account before you begin.
Azure Cloud Shell
Azure hosts Azure Cloud Shell, an interactive shell environment that you can use through your browser. You can use either Bash or PowerShell with Cloud Shell to work with Azure services. You can use the Cloud Shell preinstalled commands to run the code in this article, without having to install anything on your local environment.
To start Azure Cloud Shell:
Option |
Example/Link |
Select Try It in the upper-right corner of a code or command block. Selecting Try It doesn't automatically copy the code or command to Cloud Shell. |
 |
Go to https://shell.azure.com, or select the Launch Cloud Shell button to open Cloud Shell in your browser. |
 |
Select the Cloud Shell button on the menu bar at the upper right in the Azure portal. |
 |
To use Azure Cloud Shell:
Start Cloud Shell.
Select the Copy button on a code block (or command block) to copy the code or command.
Paste the code or command into the Cloud Shell session by selecting Ctrl+Shift+V on Windows and Linux, or by selecting Cmd+Shift+V on macOS.
Select Enter to run the code or command.
If you choose to install and use PowerShell locally, this article requires the Azure PowerShell module version 6.9.0 or later. Run Get-Module -ListAvailable Az
to find the installed version. If you need to upgrade, see Install Azure PowerShell module. If you are running PowerShell locally, you also need to run Connect-AzAccount
to create a connection with Azure.
Create a public IP address with a routing preference
Sign in to the Azure portal.
Select Create a resource.
In the search box, type Public IP address.
In the search results, select Public IP address. Next, in the Public IP address page, select Create.
In the Create public IP address page, enter or select this information:
Setting |
Value |
Project details |
|
Subscription |
Select your subscription. |
Resource group |
Select Create new, enter RoutingPreferenceResourceGroup, then select OK. |
Instance details |
|
Region |
Select East US. |
Configuration details |
|
Name |
Enter a name for the public IP address. |
IP version |
Select IPv4. |
SKU |
Select Standard. |
Tier |
Select Regional. |
Availability zone |
Select Zone-redundant. |
IP address assignment |
Select Static. |
Routing preference |
Select Internet. |
DNS name label |
Enter a DNS name label if desired. |
Select Create.
Note
Public IP addresses are created with an IPv4 or IPv6 address. However, routing preference only supports IPV4 currently.
You can associate the above created public IP address with a Windows or Linux virtual machine. Use the CLI section on the tutorial page: Associate a public IP address to a virtual machine to associate the public IP to your VM. You can also associate the public IP address created above with an Azure Load Balancer, by assigning it to the load balancer frontend configuration. The public IP address serves as a load-balanced virtual IP address (VIP).
Create a resource group with the az group create command. The following example creates a resource group in the East US Azure region:
az group create --name myResourceGroup --location eastus
Create a public IP address
Create a Public IP Address with routing preference of Internet type using command az network public-ip create, with the format as shown below.
The following command creates a new public IP with Internet routing preference in the East US Azure region.
az network public-ip create \
--name MyRoutingPrefIP \
--resource-group MyResourceGroup \
--location eastus \
--ip-tags 'RoutingPreference=Internet' \
--sku STANDARD \
--allocation-method static \
--version IPv4
Note
Currently, routing preference only supports IPV4 public IP addresses.
You can associate the above created public IP address with a Windows or Linux virtual machine. Use the CLI section on the tutorial page: Associate a public IP address to a virtual machine to associate the Public IP to your VM. You can also associate the public IP address created above with an Azure Load Balancer, by assigning it to the load balancer frontend configuration. The public IP address serves as a load-balanced virtual IP address (VIP).
The following command creates a new public IP with a routing preference type as Internet in the East US Azure region:
$iptagtype="RoutingPreference"
$tagName = "Internet"
$ipTag = New-AzPublicIpTag -IpTagType $iptagtype -Tag $tagName
# attach the tag
$publicIp = New-AzPublicIpAddress `
-Name "MyPublicIP" `
-ResourceGroupName $rg.ResourceGroupName `
-Location $rg.Location `
-IpTag $ipTag `
-AllocationMethod Static `
-Sku Standard `
-IpAddressVersion IPv4
You can associate the above created public IP address with a Windows or Linux virtual machine. Use the CLI section on the tutorial page: Associate a public IP address to a virtual machine to associate the Public IP to your VM. You can also associate the public IP address created above with an Azure Load Balancer, by assigning it to the load balancer frontend configuration. The public IP address serves as a load-balanced virtual IP address (VIP).
Next steps