Bicep resource definition
The logicalNetworks resource type can be deployed with operations that target:
For a list of changed properties in each API version, see change log.
To create a Microsoft.AzureStackHCI/logicalNetworks resource, add the following Bicep to your template.
resource symbolicname 'Microsoft.AzureStackHCI/logicalNetworks@2026-04-01-preview' = {
extendedLocation: {
name: 'string'
type: 'string'
}
location: 'string'
name: 'string'
properties: {
dhcpOptions: {
dnsServers: [
'string'
]
}
fabricNetworkConfiguration: {
resourceId: 'string'
}
subnets: [
{
name: 'string'
properties: {
addressPrefix: 'string'
addressPrefixes: [
'string'
]
ipAllocationMethod: 'string'
ipConfigurationReferences: [
{
ID: 'string'
}
]
ipPools: [
{
end: 'string'
info: {}
ipPoolType: 'string'
name: 'string'
start: 'string'
}
]
networkSecurityGroup: {
id: 'string'
}
routeTable: {
properties: {
routes: [
{
name: 'string'
properties: {
addressPrefix: 'string'
nextHopIpAddress: 'string'
}
}
]
}
}
vlan: int
}
}
]
vmSwitchName: 'string'
}
tags: {
{customized property}: 'string'
}
}
Property Values
Microsoft.AzureStackHCI/logicalNetworks
| Name |
Description |
Value |
| extendedLocation |
The extendedLocation of the resource. |
ExtendedLocation |
| location |
The geo-location where the resource lives |
string (required) |
| name |
The resource name |
string
Constraints: Pattern = ^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,62}[a-zA-Z0-9]$ (required) |
| properties |
The resource-specific properties for this resource. |
LogicalNetworkProperties |
| tags |
Resource tags |
Dictionary of tag names and values. See Tags in templates |
ExtendedLocation
| Name |
Description |
Value |
| name |
The name of the extended location. |
string |
| type |
The type of the extended location. |
'CustomLocation' |
IPPool
| Name |
Description |
Value |
| end |
End of the IP address pool |
string |
| info |
IPPool info |
IPPoolInfo |
| ipPoolType |
Type of the IP Pool [vm, vippool] |
'vippool' 'vm' |
| name |
Name of the IP-Pool |
string |
| start |
Start of the IP address pool |
string |
IPPoolInfo
LogicalNetworkProperties
| Name |
Description |
Value |
| dhcpOptions |
DhcpOptions contains an array of DNS servers available to VMs deployed in the logical network. Standard DHCP option for a subnet overrides logical network DHCP options. |
LogicalNetworkPropertiesDhcpOptions |
| fabricNetworkConfiguration |
Managed network fabric l2/l3 ISD for this logical network. If set empty, the logical network remains entirely local. |
ManagedNetworkFabricArmReference |
| subnets |
Subnet - list of subnets under the logical network |
Subnet[] |
| vmSwitchName |
name of the network switch to be used for VMs |
string |
LogicalNetworkPropertiesDhcpOptions
| Name |
Description |
Value |
| dnsServers |
The list of DNS servers IP addresses. |
string[] |
ManagedNetworkFabricArmReference
| Name |
Description |
Value |
| resourceId |
The Azure Resource ID for a Managed Network Fabric L2ISD or L3ISD internal network |
string |
NetworkSecurityGroupArmReference
| Name |
Description |
Value |
| id |
The Azure Resource ID for a Network Security Group. |
string |
Route
| Name |
Description |
Value |
| name |
Name - name of the subnet |
string
Constraints: Pattern = ^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,78}[_a-zA-Z0-9]$ |
| properties |
Properties of the route. |
RouteProperties |
RouteProperties
| Name |
Description |
Value |
| addressPrefix |
The destination CIDR to which the route applies. |
string |
| nextHopIpAddress |
The IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance. |
string |
RouteTable
RouteTableProperties
| Name |
Description |
Value |
| routes |
Collection of routes contained within a route table. |
Route[] |
Subnet
| Name |
Description |
Value |
| name |
Name - The name of the resource that is unique within a resource group. This name can be used to access the resource. |
string
Constraints: Pattern = ^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,78}[_a-zA-Z0-9]$ |
| properties |
Properties of the subnet. |
SubnetProperties |
SubnetIpConfigurationReference
| Name |
Description |
Value |
| ID |
The Azure Resource ID for a Network Interface. |
string |
SubnetProperties
| Name |
Description |
Value |
| addressPrefix |
The address prefix for the subnet: Cidr for this subnet - IPv4, IPv6. |
string |
| addressPrefixes |
List of address prefixes for the subnet. |
string[] |
| ipAllocationMethod |
IPAllocationMethod - The IP address allocation method. Possible values include: 'Static', 'Dynamic' |
'Dynamic' 'Static' |
| ipConfigurationReferences |
IPConfigurationReferences - list of IPConfigurationReferences |
SubnetIpConfigurationReference[] |
| ipPools |
network associated pool of IP Addresses |
IPPool[] |
| networkSecurityGroup |
NetworkSecurityGroup - Network Security Group attached to the logical network. |
NetworkSecurityGroupArmReference |
| routeTable |
Route table resource. |
RouteTable |
| vlan |
Vlan to use for the subnet |
int |
Usage Examples
Azure Verified Modules
The following Azure Verified Modules can be used to deploy this resource type.
ARM template resource definition
The logicalNetworks resource type can be deployed with operations that target:
For a list of changed properties in each API version, see change log.
To create a Microsoft.AzureStackHCI/logicalNetworks resource, add the following JSON to your template.
{
"type": "Microsoft.AzureStackHCI/logicalNetworks",
"apiVersion": "2026-04-01-preview",
"name": "string",
"extendedLocation": {
"name": "string",
"type": "string"
},
"location": "string",
"properties": {
"dhcpOptions": {
"dnsServers": [ "string" ]
},
"fabricNetworkConfiguration": {
"resourceId": "string"
},
"subnets": [
{
"name": "string",
"properties": {
"addressPrefix": "string",
"addressPrefixes": [ "string" ],
"ipAllocationMethod": "string",
"ipConfigurationReferences": [
{
"ID": "string"
}
],
"ipPools": [
{
"end": "string",
"info": {
},
"ipPoolType": "string",
"name": "string",
"start": "string"
}
],
"networkSecurityGroup": {
"id": "string"
},
"routeTable": {
"properties": {
"routes": [
{
"name": "string",
"properties": {
"addressPrefix": "string",
"nextHopIpAddress": "string"
}
}
]
}
},
"vlan": "int"
}
}
],
"vmSwitchName": "string"
},
"tags": {
"{customized property}": "string"
}
}
Property Values
Microsoft.AzureStackHCI/logicalNetworks
| Name |
Description |
Value |
| apiVersion |
The api version |
'2026-04-01-preview' |
| extendedLocation |
The extendedLocation of the resource. |
ExtendedLocation |
| location |
The geo-location where the resource lives |
string (required) |
| name |
The resource name |
string
Constraints: Pattern = ^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,62}[a-zA-Z0-9]$ (required) |
| properties |
The resource-specific properties for this resource. |
LogicalNetworkProperties |
| tags |
Resource tags |
Dictionary of tag names and values. See Tags in templates |
| type |
The resource type |
'Microsoft.AzureStackHCI/logicalNetworks' |
ExtendedLocation
| Name |
Description |
Value |
| name |
The name of the extended location. |
string |
| type |
The type of the extended location. |
'CustomLocation' |
IPPool
| Name |
Description |
Value |
| end |
End of the IP address pool |
string |
| info |
IPPool info |
IPPoolInfo |
| ipPoolType |
Type of the IP Pool [vm, vippool] |
'vippool' 'vm' |
| name |
Name of the IP-Pool |
string |
| start |
Start of the IP address pool |
string |
IPPoolInfo
LogicalNetworkProperties
| Name |
Description |
Value |
| dhcpOptions |
DhcpOptions contains an array of DNS servers available to VMs deployed in the logical network. Standard DHCP option for a subnet overrides logical network DHCP options. |
LogicalNetworkPropertiesDhcpOptions |
| fabricNetworkConfiguration |
Managed network fabric l2/l3 ISD for this logical network. If set empty, the logical network remains entirely local. |
ManagedNetworkFabricArmReference |
| subnets |
Subnet - list of subnets under the logical network |
Subnet[] |
| vmSwitchName |
name of the network switch to be used for VMs |
string |
LogicalNetworkPropertiesDhcpOptions
| Name |
Description |
Value |
| dnsServers |
The list of DNS servers IP addresses. |
string[] |
ManagedNetworkFabricArmReference
| Name |
Description |
Value |
| resourceId |
The Azure Resource ID for a Managed Network Fabric L2ISD or L3ISD internal network |
string |
NetworkSecurityGroupArmReference
| Name |
Description |
Value |
| id |
The Azure Resource ID for a Network Security Group. |
string |
Route
| Name |
Description |
Value |
| name |
Name - name of the subnet |
string
Constraints: Pattern = ^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,78}[_a-zA-Z0-9]$ |
| properties |
Properties of the route. |
RouteProperties |
RouteProperties
| Name |
Description |
Value |
| addressPrefix |
The destination CIDR to which the route applies. |
string |
| nextHopIpAddress |
The IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance. |
string |
RouteTable
RouteTableProperties
| Name |
Description |
Value |
| routes |
Collection of routes contained within a route table. |
Route[] |
Subnet
| Name |
Description |
Value |
| name |
Name - The name of the resource that is unique within a resource group. This name can be used to access the resource. |
string
Constraints: Pattern = ^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,78}[_a-zA-Z0-9]$ |
| properties |
Properties of the subnet. |
SubnetProperties |
SubnetIpConfigurationReference
| Name |
Description |
Value |
| ID |
The Azure Resource ID for a Network Interface. |
string |
SubnetProperties
| Name |
Description |
Value |
| addressPrefix |
The address prefix for the subnet: Cidr for this subnet - IPv4, IPv6. |
string |
| addressPrefixes |
List of address prefixes for the subnet. |
string[] |
| ipAllocationMethod |
IPAllocationMethod - The IP address allocation method. Possible values include: 'Static', 'Dynamic' |
'Dynamic' 'Static' |
| ipConfigurationReferences |
IPConfigurationReferences - list of IPConfigurationReferences |
SubnetIpConfigurationReference[] |
| ipPools |
network associated pool of IP Addresses |
IPPool[] |
| networkSecurityGroup |
NetworkSecurityGroup - Network Security Group attached to the logical network. |
NetworkSecurityGroupArmReference |
| routeTable |
Route table resource. |
RouteTable |
| vlan |
Vlan to use for the subnet |
int |
Usage Examples
The logicalNetworks resource type can be deployed with operations that target:
For a list of changed properties in each API version, see change log.
To create a Microsoft.AzureStackHCI/logicalNetworks resource, add the following Terraform to your template.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.AzureStackHCI/logicalNetworks@2026-04-01-preview"
name = "string"
parent_id = "string"
location = "string"
tags = {
{customized property} = "string"
}
body = {
extendedLocation = {
name = "string"
type = "string"
}
properties = {
dhcpOptions = {
dnsServers = [
"string"
]
}
fabricNetworkConfiguration = {
resourceId = "string"
}
subnets = [
{
name = "string"
properties = {
addressPrefix = "string"
addressPrefixes = [
"string"
]
ipAllocationMethod = "string"
ipConfigurationReferences = [
{
ID = "string"
}
]
ipPools = [
{
end = "string"
info = {
}
ipPoolType = "string"
name = "string"
start = "string"
}
]
networkSecurityGroup = {
id = "string"
}
routeTable = {
properties = {
routes = [
{
name = "string"
properties = {
addressPrefix = "string"
nextHopIpAddress = "string"
}
}
]
}
}
vlan = int
}
}
]
vmSwitchName = "string"
}
}
}
Property Values
Microsoft.AzureStackHCI/logicalNetworks
| Name |
Description |
Value |
| extendedLocation |
The extendedLocation of the resource. |
ExtendedLocation |
| location |
The geo-location where the resource lives |
string (required) |
| name |
The resource name |
string
Constraints: Pattern = ^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,62}[a-zA-Z0-9]$ (required) |
| properties |
The resource-specific properties for this resource. |
LogicalNetworkProperties |
| tags |
Resource tags |
Dictionary of tag names and values. |
| type |
The resource type |
"Microsoft.AzureStackHCI/logicalNetworks@2026-04-01-preview" |
ExtendedLocation
| Name |
Description |
Value |
| name |
The name of the extended location. |
string |
| type |
The type of the extended location. |
'CustomLocation' |
IPPool
| Name |
Description |
Value |
| end |
End of the IP address pool |
string |
| info |
IPPool info |
IPPoolInfo |
| ipPoolType |
Type of the IP Pool [vm, vippool] |
'vippool' 'vm' |
| name |
Name of the IP-Pool |
string |
| start |
Start of the IP address pool |
string |
IPPoolInfo
LogicalNetworkProperties
| Name |
Description |
Value |
| dhcpOptions |
DhcpOptions contains an array of DNS servers available to VMs deployed in the logical network. Standard DHCP option for a subnet overrides logical network DHCP options. |
LogicalNetworkPropertiesDhcpOptions |
| fabricNetworkConfiguration |
Managed network fabric l2/l3 ISD for this logical network. If set empty, the logical network remains entirely local. |
ManagedNetworkFabricArmReference |
| subnets |
Subnet - list of subnets under the logical network |
Subnet[] |
| vmSwitchName |
name of the network switch to be used for VMs |
string |
LogicalNetworkPropertiesDhcpOptions
| Name |
Description |
Value |
| dnsServers |
The list of DNS servers IP addresses. |
string[] |
ManagedNetworkFabricArmReference
| Name |
Description |
Value |
| resourceId |
The Azure Resource ID for a Managed Network Fabric L2ISD or L3ISD internal network |
string |
NetworkSecurityGroupArmReference
| Name |
Description |
Value |
| id |
The Azure Resource ID for a Network Security Group. |
string |
Route
| Name |
Description |
Value |
| name |
Name - name of the subnet |
string
Constraints: Pattern = ^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,78}[_a-zA-Z0-9]$ |
| properties |
Properties of the route. |
RouteProperties |
RouteProperties
| Name |
Description |
Value |
| addressPrefix |
The destination CIDR to which the route applies. |
string |
| nextHopIpAddress |
The IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance. |
string |
RouteTable
RouteTableProperties
| Name |
Description |
Value |
| routes |
Collection of routes contained within a route table. |
Route[] |
Subnet
| Name |
Description |
Value |
| name |
Name - The name of the resource that is unique within a resource group. This name can be used to access the resource. |
string
Constraints: Pattern = ^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,78}[_a-zA-Z0-9]$ |
| properties |
Properties of the subnet. |
SubnetProperties |
SubnetIpConfigurationReference
| Name |
Description |
Value |
| ID |
The Azure Resource ID for a Network Interface. |
string |
SubnetProperties
| Name |
Description |
Value |
| addressPrefix |
The address prefix for the subnet: Cidr for this subnet - IPv4, IPv6. |
string |
| addressPrefixes |
List of address prefixes for the subnet. |
string[] |
| ipAllocationMethod |
IPAllocationMethod - The IP address allocation method. Possible values include: 'Static', 'Dynamic' |
'Dynamic' 'Static' |
| ipConfigurationReferences |
IPConfigurationReferences - list of IPConfigurationReferences |
SubnetIpConfigurationReference[] |
| ipPools |
network associated pool of IP Addresses |
IPPool[] |
| networkSecurityGroup |
NetworkSecurityGroup - Network Security Group attached to the logical network. |
NetworkSecurityGroupArmReference |
| routeTable |
Route table resource. |
RouteTable |
| vlan |
Vlan to use for the subnet |
int |
Usage Examples
Azure Verified Modules
The following Azure Verified Modules can be used to deploy this resource type.