Note
Access to this page requires authorization. You can try signing in or .
Access to this page requires authorization. You can try .
Microsoft.Network publicIPPrefixes
- Latest
- 2025-07-01
- 2025-05-01
- 2025-03-01
- 2025-01-01
- 2024-10-01
- 2024-07-01
- 2024-05-01
- 2024-03-01
- 2024-01-01
- 2023-11-01
- 2023-09-01
- 2023-06-01
- 2023-05-01
- 2023-04-01
- 2023-02-01
- 2022-11-01
- 2022-09-01
- 2022-07-01
- 2022-05-01
- 2022-01-01
- 2021-08-01
- 2021-05-01
- 2021-03-01
- 2021-02-01
- 2020-11-01
- 2020-08-01
- 2020-07-01
- 2020-06-01
- 2020-05-01
- 2020-04-01
- 2020-03-01
- 2019-12-01
- 2019-11-01
- 2019-09-01
- 2019-08-01
- 2019-07-01
- 2019-06-01
- 2019-04-01
- 2019-02-01
- 2018-12-01
- 2018-11-01
- 2018-10-01
- 2018-08-01
- 2018-07-01
Bicep resource definition
The publicIPPrefixes resource type can be deployed with operations that target:
- Resource groups - See resource group deployment commands
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.Network/publicIPPrefixes resource, add the following Bicep to your template.
resource symbolicname 'Microsoft.Network/publicIPPrefixes@2025-07-01' = {
extendedLocation: {
name: 'string'
type: 'string'
}
location: 'string'
name: 'string'
properties: {
customIPPrefix: {
id: 'string'
}
ipTags: [
{
ipTagType: 'string'
tag: 'string'
}
]
natGateway: {
id: 'string'
location: 'string'
properties: {
idleTimeoutInMinutes: int
nat64: 'string'
publicIpAddresses: [
{
id: 'string'
}
]
publicIpAddressesV6: [
{
id: 'string'
}
]
publicIpPrefixes: [
{
id: 'string'
}
]
publicIpPrefixesV6: [
{
id: 'string'
}
]
serviceGateway: {
id: 'string'
}
sourceVirtualNetwork: {
id: 'string'
}
}
sku: {
name: 'string'
}
tags: {
{customized property}: 'string'
}
zones: [
'string'
]
}
prefixLength: int
publicIPAddressVersion: 'string'
}
sku: {
name: 'string'
tier: 'string'
}
tags: {
{customized property}: 'string'
}
zones: [
'string'
]
}
Property Values
Microsoft.Network/publicIPPrefixes
| Name | Description | Value |
|---|---|---|
| extendedLocation | The extended location of the public ip address. | CommonExtendedLocation |
| location | Resource location. | string |
| name | The resource name | string (required) |
| properties | Public IP prefix properties. | PublicIPPrefixPropertiesFormat |
| sku | The public IP prefix SKU. | PublicIPPrefixSku |
| tags | Resource tags | Dictionary of tag names and values. See Tags in templates |
| zones | A list of availability zones denoting the IP allocated for the resource needs to come from. | string[] |
CommonExtendedLocation
| Name | Description | Value |
|---|---|---|
| name | The name of the extended location. | string |
| type | The type of the extended location. | 'EdgeZone' |
CommonIpTag
| Name | Description | Value |
|---|---|---|
| ipTagType | The IP tag type. Example: FirstPartyUsage. | string |
| tag | The value of the IP tag associated with the public IP. Example: SQL. | string |
CommonNatGateway
| Name | Description | Value |
|---|---|---|
| id | Resource ID. | string |
| location | Resource location. | string |
| properties | Nat Gateway properties. | CommonNatGatewayPropertiesFormat |
| sku | The nat gateway SKU. | CommonNatGatewaySku |
| tags | Resource tags. | CommonResourceTags |
| zones | A list of availability zones denoting the zone in which Nat Gateway should be deployed. | string[] |
CommonNatGatewayPropertiesFormat
| Name | Description | Value |
|---|---|---|
| idleTimeoutInMinutes | The idle timeout of the nat gateway. | int |
| nat64 | Whether Nat64 is enabled for the NAT gateway resource. | 'Disabled' 'Enabled' 'None' |
| publicIpAddresses | An array of public ip addresses V4 associated with the nat gateway resource. | CommonSubResource[] |
| publicIpAddressesV6 | An array of public ip addresses V6 associated with the nat gateway resource. | CommonSubResource[] |
| publicIpPrefixes | An array of public ip prefixes V4 associated with the nat gateway resource. | CommonSubResource[] |
| publicIpPrefixesV6 | An array of public ip prefixes V6 associated with the nat gateway resource. | CommonSubResource[] |
| serviceGateway | Reference to an existing service gateway. | CommonSubResource |
| sourceVirtualNetwork | A reference to the source virtual network using this nat gateway resource. | CommonSubResource |
CommonNatGatewaySku
| Name | Description | Value |
|---|---|---|
| name | Name of Nat Gateway SKU. | 'Standard' 'StandardV2' |
CommonResourceTags
| Name | Description | Value |
|---|
CommonResourceTags
| Name | Description | Value |
|---|
CommonSubResource
| Name | Description | Value |
|---|---|---|
| id | Resource ID. | string |
PublicIPPrefixPropertiesFormat
| Name | Description | Value |
|---|---|---|
| customIPPrefix | The customIpPrefix that this prefix is associated with. | CommonSubResource |
| ipTags | The list of tags associated with the public IP prefix. | CommonIpTag[] |
| natGateway | NatGateway of Public IP Prefix. | CommonNatGateway |
| prefixLength | The Length of the Public IP Prefix. | int |
| publicIPAddressVersion | The public IP address version. | 'IPv4' 'IPv6' |
PublicIPPrefixSku
| Name | Description | Value |
|---|---|---|
| name | Name of a public IP prefix SKU. | 'Standard' 'StandardV2' |
| tier | Tier of a public IP prefix SKU. | 'Global' 'Regional' |
Usage Examples
Bicep Samples
A basic example of deploying Public IP Prefix.
param resourceName string = 'acctest0001'
param location string = 'westeurope'
resource publicIPPrefix 'Microsoft.Network/publicIPPrefixes@2022-07-01' = {
name: resourceName
location: location
sku: {
name: 'Standard'
}
properties: {
prefixLength: 30
publicIPAddressVersion: 'IPv4'
}
}
Azure Verified Modules
The following Azure Verified Modules can be used to deploy this resource type.
| Module | Description |
|---|---|
| Public IP Prefix | AVM Resource Module for Public IP Prefix |
Azure Quickstart Samples
The following Azure Quickstart templates contain Bicep samples for deploying this resource type.
| Bicep File | Description |
|---|---|
| AKS Cluster with a NAT Gateway and an Application Gateway | This sample shows how to a deploy an AKS cluster with NAT Gateway for outbound connections and an Application Gateway for inbound connections. |
| Create an Azure Firewall with multiple IP public addresses | This template creates an Azure Firewall with two public IP addresses and two Windows Server 2019 servers to test. |
| VMSS with Public IP Prefix | Template for deploying VMSS with Public IP Prefix |
ARM template resource definition
The publicIPPrefixes resource type can be deployed with operations that target:
- Resource groups - See resource group deployment commands
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.Network/publicIPPrefixes resource, add the following JSON to your template.
{
"type": "Microsoft.Network/publicIPPrefixes",
"apiVersion": "2025-07-01",
"name": "string",
"extendedLocation": {
"name": "string",
"type": "string"
},
"location": "string",
"properties": {
"customIPPrefix": {
"id": "string"
},
"ipTags": [
{
"ipTagType": "string",
"tag": "string"
}
],
"natGateway": {
"id": "string",
"location": "string",
"properties": {
"idleTimeoutInMinutes": "int",
"nat64": "string",
"publicIpAddresses": [
{
"id": "string"
}
],
"publicIpAddressesV6": [
{
"id": "string"
}
],
"publicIpPrefixes": [
{
"id": "string"
}
],
"publicIpPrefixesV6": [
{
"id": "string"
}
],
"serviceGateway": {
"id": "string"
},
"sourceVirtualNetwork": {
"id": "string"
}
},
"sku": {
"name": "string"
},
"tags": {
"{customized property}": "string"
},
"zones": [ "string" ]
},
"prefixLength": "int",
"publicIPAddressVersion": "string"
},
"sku": {
"name": "string",
"tier": "string"
},
"tags": {
"{customized property}": "string"
},
"zones": [ "string" ]
}
Property Values
Microsoft.Network/publicIPPrefixes
| Name | Description | Value |
|---|---|---|
| apiVersion | The api version | '2025-07-01' |
| extendedLocation | The extended location of the public ip address. | CommonExtendedLocation |
| location | Resource location. | string |
| name | The resource name | string (required) |
| properties | Public IP prefix properties. | PublicIPPrefixPropertiesFormat |
| sku | The public IP prefix SKU. | PublicIPPrefixSku |
| tags | Resource tags | Dictionary of tag names and values. See Tags in templates |
| type | The resource type | 'Microsoft.Network/publicIPPrefixes' |
| zones | A list of availability zones denoting the IP allocated for the resource needs to come from. | string[] |
CommonExtendedLocation
| Name | Description | Value |
|---|---|---|
| name | The name of the extended location. | string |
| type | The type of the extended location. | 'EdgeZone' |
CommonIpTag
| Name | Description | Value |
|---|---|---|
| ipTagType | The IP tag type. Example: FirstPartyUsage. | string |
| tag | The value of the IP tag associated with the public IP. Example: SQL. | string |
CommonNatGateway
| Name | Description | Value |
|---|---|---|
| id | Resource ID. | string |
| location | Resource location. | string |
| properties | Nat Gateway properties. | CommonNatGatewayPropertiesFormat |
| sku | The nat gateway SKU. | CommonNatGatewaySku |
| tags | Resource tags. | CommonResourceTags |
| zones | A list of availability zones denoting the zone in which Nat Gateway should be deployed. | string[] |
CommonNatGatewayPropertiesFormat
| Name | Description | Value |
|---|---|---|
| idleTimeoutInMinutes | The idle timeout of the nat gateway. | int |
| nat64 | Whether Nat64 is enabled for the NAT gateway resource. | 'Disabled' 'Enabled' 'None' |
| publicIpAddresses | An array of public ip addresses V4 associated with the nat gateway resource. | CommonSubResource[] |
| publicIpAddressesV6 | An array of public ip addresses V6 associated with the nat gateway resource. | CommonSubResource[] |
| publicIpPrefixes | An array of public ip prefixes V4 associated with the nat gateway resource. | CommonSubResource[] |
| publicIpPrefixesV6 | An array of public ip prefixes V6 associated with the nat gateway resource. | CommonSubResource[] |
| serviceGateway | Reference to an existing service gateway. | CommonSubResource |
| sourceVirtualNetwork | A reference to the source virtual network using this nat gateway resource. | CommonSubResource |
CommonNatGatewaySku
| Name | Description | Value |
|---|---|---|
| name | Name of Nat Gateway SKU. | 'Standard' 'StandardV2' |
CommonResourceTags
| Name | Description | Value |
|---|
CommonResourceTags
| Name | Description | Value |
|---|
CommonSubResource
| Name | Description | Value |
|---|---|---|
| id | Resource ID. | string |
PublicIPPrefixPropertiesFormat
| Name | Description | Value |
|---|---|---|
| customIPPrefix | The customIpPrefix that this prefix is associated with. | CommonSubResource |
| ipTags | The list of tags associated with the public IP prefix. | CommonIpTag[] |
| natGateway | NatGateway of Public IP Prefix. | CommonNatGateway |
| prefixLength | The Length of the Public IP Prefix. | int |
| publicIPAddressVersion | The public IP address version. | 'IPv4' 'IPv6' |
PublicIPPrefixSku
| Name | Description | Value |
|---|---|---|
| name | Name of a public IP prefix SKU. | 'Standard' 'StandardV2' |
| tier | Tier of a public IP prefix SKU. | 'Global' 'Regional' |
Usage Examples
Azure Quickstart Templates
The following Azure Quickstart templates deploy this resource type.
| Template | Description |
|---|---|
| AKS Cluster with a NAT Gateway and an Application Gateway 👁 Deploy to Azure |
This sample shows how to a deploy an AKS cluster with NAT Gateway for outbound connections and an Application Gateway for inbound connections. |
| Create an Azure Firewall with multiple IP public addresses 👁 Deploy to Azure |
This template creates an Azure Firewall with two public IP addresses and two Windows Server 2019 servers to test. |
| VMSS with Public IP Prefix 👁 Deploy to Azure |
Template for deploying VMSS with Public IP Prefix |
Terraform (AzAPI provider) resource definition
The publicIPPrefixes resource type can be deployed with operations that target:
- Resource groups
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.Network/publicIPPrefixes resource, add the following Terraform to your template.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Network/publicIPPrefixes@2025-07-01"
name = "string"
parent_id = "string"
location = "string"
tags = {
{customized property} = "string"
}
body = {
extendedLocation = {
name = "string"
type = "string"
}
properties = {
customIPPrefix = {
id = "string"
}
ipTags = [
{
ipTagType = "string"
tag = "string"
}
]
natGateway = {
id = "string"
location = "string"
properties = {
idleTimeoutInMinutes = int
nat64 = "string"
publicIpAddresses = [
{
id = "string"
}
]
publicIpAddressesV6 = [
{
id = "string"
}
]
publicIpPrefixes = [
{
id = "string"
}
]
publicIpPrefixesV6 = [
{
id = "string"
}
]
serviceGateway = {
id = "string"
}
sourceVirtualNetwork = {
id = "string"
}
}
sku = {
name = "string"
}
tags = {
{customized property} = "string"
}
zones = [
"string"
]
}
prefixLength = int
publicIPAddressVersion = "string"
}
sku = {
name = "string"
tier = "string"
}
zones = [
"string"
]
}
}
Property Values
Microsoft.Network/publicIPPrefixes
| Name | Description | Value |
|---|---|---|
| extendedLocation | The extended location of the public ip address. | CommonExtendedLocation |
| location | Resource location. | string |
| name | The resource name | string (required) |
| properties | Public IP prefix properties. | PublicIPPrefixPropertiesFormat |
| sku | The public IP prefix SKU. | PublicIPPrefixSku |
| tags | Resource tags | Dictionary of tag names and values. |
| type | The resource type | "Microsoft.Network/publicIPPrefixes@2025-07-01" |
| zones | A list of availability zones denoting the IP allocated for the resource needs to come from. | string[] |
CommonExtendedLocation
| Name | Description | Value |
|---|---|---|
| name | The name of the extended location. | string |
| type | The type of the extended location. | 'EdgeZone' |
CommonIpTag
| Name | Description | Value |
|---|---|---|
| ipTagType | The IP tag type. Example: FirstPartyUsage. | string |
| tag | The value of the IP tag associated with the public IP. Example: SQL. | string |
CommonNatGateway
| Name | Description | Value |
|---|---|---|
| id | Resource ID. | string |
| location | Resource location. | string |
| properties | Nat Gateway properties. | CommonNatGatewayPropertiesFormat |
| sku | The nat gateway SKU. | CommonNatGatewaySku |
| tags | Resource tags. | CommonResourceTags |
| zones | A list of availability zones denoting the zone in which Nat Gateway should be deployed. | string[] |
CommonNatGatewayPropertiesFormat
| Name | Description | Value |
|---|---|---|
| idleTimeoutInMinutes | The idle timeout of the nat gateway. | int |
| nat64 | Whether Nat64 is enabled for the NAT gateway resource. | 'Disabled' 'Enabled' 'None' |
| publicIpAddresses | An array of public ip addresses V4 associated with the nat gateway resource. | CommonSubResource[] |
| publicIpAddressesV6 | An array of public ip addresses V6 associated with the nat gateway resource. | CommonSubResource[] |
| publicIpPrefixes | An array of public ip prefixes V4 associated with the nat gateway resource. | CommonSubResource[] |
| publicIpPrefixesV6 | An array of public ip prefixes V6 associated with the nat gateway resource. | CommonSubResource[] |
| serviceGateway | Reference to an existing service gateway. | CommonSubResource |
| sourceVirtualNetwork | A reference to the source virtual network using this nat gateway resource. | CommonSubResource |
CommonNatGatewaySku
| Name | Description | Value |
|---|---|---|
| name | Name of Nat Gateway SKU. | 'Standard' 'StandardV2' |
CommonResourceTags
| Name | Description | Value |
|---|
CommonResourceTags
| Name | Description | Value |
|---|
CommonSubResource
| Name | Description | Value |
|---|---|---|
| id | Resource ID. | string |
PublicIPPrefixPropertiesFormat
| Name | Description | Value |
|---|---|---|
| customIPPrefix | The customIpPrefix that this prefix is associated with. | CommonSubResource |
| ipTags | The list of tags associated with the public IP prefix. | CommonIpTag[] |
| natGateway | NatGateway of Public IP Prefix. | CommonNatGateway |
| prefixLength | The Length of the Public IP Prefix. | int |
| publicIPAddressVersion | The public IP address version. | 'IPv4' 'IPv6' |
PublicIPPrefixSku
| Name | Description | Value |
|---|---|---|
| name | Name of a public IP prefix SKU. | 'Standard' 'StandardV2' |
| tier | Tier of a public IP prefix SKU. | 'Global' 'Regional' |
Usage Examples
Terraform Samples
A basic example of deploying Public IP Prefix.
terraform {
required_providers {
azapi = {
source = "Azure/azapi"
}
}
}
provider "azapi" {
skip_provider_registration = false
}
variable "resource_name" {
type = string
default = "acctest0001"
}
variable "location" {
type = string
default = "westeurope"
}
resource "azapi_resource" "resourceGroup" {
type = "Microsoft.Resources/resourceGroups@2020-06-01"
name = var.resource_name
location = var.location
}
resource "azapi_resource" "publicIPPrefix" {
type = "Microsoft.Network/publicIPPrefixes@2022-07-01"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
properties = {
prefixLength = 30
publicIPAddressVersion = "IPv4"
}
sku = {
name = "Standard"
}
zones = [
"1",
]
}
schema_validation_enabled = false
response_export_values = ["*"]
}
Azure Verified Modules
The following Azure Verified Modules can be used to deploy this resource type.
| Module | Description |
|---|---|
| Public IP Prefix | AVM Resource Module for Public IP Prefix |
Feedback
Was this page helpful?
