[This is preliminary documentation and is subject to change. Blank topics are included as placeholders.]

Creates a new call admission control (CAC) subnet.


New-CsNetworkSubnet -Identity <XdsGlobalRelativeIdentity> -MaskBits <Int32> [-Confirm [<SwitchParameter>]] [-Description <String>] [-Force <SwitchParameter>] [-InMemory <SwitchParameter>] [-NetworkSiteID <String>] [-WhatIf [<SwitchParameter>]]
New-CsNetworkSubnet -MaskBits <Int32> -SubnetID <String> [-Confirm [<SwitchParameter>]] [-Description <String>] [-Force <SwitchParameter>] [-InMemory <SwitchParameter>] [-NetworkSiteID <String>] [-WhatIf [<SwitchParameter>]]


Parameter Required Type Description




The unique subnet ID of the subnet being created. This must be either an IP address (such as or a valid URL beginning with http: or https:. If an IP address is used, it must be the first address in the subnet (i.e., the final segment of the address must be zero.)




The bitmask to be applied to the subnet being created.




This is the same value as the Identity. You must specify either an Identity or a SubnetID, but you cannot specify both. Whatever value you supply to one will automatically be applied to the other.




Prompts you for confirmation before executing the command.




A description of the subnet being created.




Creates an object reference without actually committing the object as a permanent change. If you assign the output of this cmdlet called with this parameter to a variable, you can make changes to the properties of the object reference and then commit those changes by calling this cmdlet’s matching Set- cmdlet.




The site ID of the site to which this subnet is to be applied. You can retrieve site IDs for your deployment by calling the Get-CsNetworkSite cmdlet.




Describes what would happen if you executed the command without actually executing the command.

Detailed Description

A subnet is used to associate an endpoint with a network site for the purposes of determining location and limiting bandwidth. Each subnet must be associated with a CAC network site. Use this cmdlet to create a new subnet, and at the same time (optionally) assign it to a network site.

In most deployments of Microsoft Communications Server 2010 that implement CAC there will typically be a large number of subnets. Because of this, it is often best to call New-CsNetworkSubnet in conjunction with the Windows PowerShell cmdlet Import-CSV. By using these cmdlets together, you can read in subnet settings from a comma-separated values (CSV) file and create multiple subnets at once. For more details see the “Examples” section for this cmdlet.

Return Types

Creates an object of type Microsoft.Rtc.Management.WritableConfig.Settings.NetworkConfiguration.SubnetType.


-------------------------- Example 1 --------------------------

Copy Code
New-CsNetworkSubnet -Identity -MaskBits 24 -NetworkSiteID Vancouver

This example demonstrates how to create a new subnet. The Identity of the subnet is set to This value will automatically be assigned as the SubnetID. A subnet must have mask bits defined. That is done by supplying a value – in this case 24 – to the MaskBits parameter. Finally, the site ID Vancouver is passed to the NetworkSiteID parameter to associate this subnet with that site.

-------------------------- Example 2 --------------------------

Copy Code
Import-CSV C:\subnet.csv | foreach {New-CsNetworkSubnet -Identity $_.Identity -MaskBits $_.Mask -NetworkSiteID $_.SiteID

Example 2 reads from a CSV file to create a series of subnets. The CSV file in this example looks something like this:

Copy Code
Identity, Mask, SiteID, 24, Redmond, 24, Chicago, 25, Vancouver, 31, Paris

The example starts by calling the Import-CSV cmdlet, passing it the path to a CSV file. This cmdlet will read the contents of that file into memory. Those file contents are then piped to the foreach function. The foreach function iterates through the contents one line at a time. As you can see from the example file, the first line is a list of headings that define the rest of the contents; the foreach function will use these headings to access the comma-separated values by name.

Inside the foreach statement, the New-CsNetworkSubnet cmdlet is called. As foreach iterates through each line of the file contents, that line is passed as the values for the New-CsNetworkSubnet parameters. For example, the first time through the foreach statement, New-CsNetworkSubnet will create a subnet with the Identity this is the value in the Identity position in the first comma-separated line of values. (The $_ indicates the current value in the foreach loop.) The Mask value (24) is then passed to the MaskBits parameter, and the SiteID value (Redmond) from the file is passed to the NetworkSiteID parameter.

This process continues until all lines in the file have been read, and their values used to create new subnets.