Share via


Microsoft.Network publicIPPrefixes 2019-12-01

Bicep resource definition

The publicIPPrefixes resource type can be deployed with operations that target:

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@2019-12-01' = {
  scope: resourceSymbolicName or scope
  ___location: 'string'
  name: 'string'
  properties: {
    ipTags: [
      {
        ipTagType: 'string'
        tag: 'string'
      }
    ]
    prefixLength: int
    publicIPAddressVersion: 'string'
  }
  sku: {
    name: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
  zones: [
    'string'
  ]
}

Property Values

Microsoft.Network/publicIPPrefixes

Name Description Value
___location Resource ___location. string
name The resource name string (required)
properties Public IP prefix properties. PublicIPPrefixPropertiesFormat
scope Use when creating a resource at a scope that is different than the deployment scope. Set this property to the symbolic name of a resource to apply the extension resource.
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[]

IpTag

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

PublicIPPrefixPropertiesFormat

Name Description Value
ipTags The list of tags associated with the public IP prefix. IpTag[]
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'

ResourceTags

Name Description Value

Usage Examples

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:

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": "2019-12-01",
  "name": "string",
  "___location": "string",
  "properties": {
    "ipTags": [
      {
        "ipTagType": "string",
        "tag": "string"
      }
    ],
    "prefixLength": "int",
    "publicIPAddressVersion": "string"
  },
  "sku": {
    "name": "string"
  },
  "tags": {
    "{customized property}": "string"
  },
  "zones": [ "string" ]
}

Property Values

Microsoft.Network/publicIPPrefixes

Name Description Value
apiVersion The api version '2019-12-01'
___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[]

IpTag

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

PublicIPPrefixPropertiesFormat

Name Description Value
ipTags The list of tags associated with the public IP prefix. IpTag[]
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'

ResourceTags

Name Description Value

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:

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@2019-12-01"
  name = "string"
  parent_id = "string"
  ___location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    properties = {
      ipTags = [
        {
          ipTagType = "string"
          tag = "string"
        }
      ]
      prefixLength = int
      publicIPAddressVersion = "string"
    }
    sku = {
      name = "string"
    }
    zones = [
      "string"
    ]
  }
}

Property Values

Microsoft.Network/publicIPPrefixes

Name Description Value
___location Resource ___location. string
name The resource name string (required)
parent_id The ID of the resource to apply this extension resource to. 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@2019-12-01"
zones A list of availability zones denoting the IP allocated for the resource needs to come from. string[]

IpTag

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

PublicIPPrefixPropertiesFormat

Name Description Value
ipTags The list of tags associated with the public IP prefix. IpTag[]
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'

ResourceTags

Name Description Value

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