3.1.5.18 virtualNetworks

The virtualNetworks resource is used to create a virtual network using Hyper-v network virtualization (HNV) for tenant overlays. The default encapsulation for virtualNetworks is Virtual Extensible LAN (VXLAN) but this can be changed by updating the virtualNetworkManager resource. Similarly, the HNV Distributed Router is enabled by default but this can be overridden using the virtualNetworkManager resource.

It is invoked through the following URI.

 https://<url>/networking/v1/virtualNetworks/{resourceId}

url: The address or name of the REST server of the Network Controller.

resourceId: the identifier for the specific resource within the resource type. See section 2.2.3.4 for more details.

Note  The server MAY support additional versions, besides v1 in the URI.

The following HTTP methods can be performed on this resource.

HTTP method

Section

Description

PUT

3.1.5.18.1.1

Create a new or update an existing virtualNetworks resource.

GET

3.1.5.18.1.2

Get one virtualNetworks resource.

GET ALL

3.1.5.18.1.3

List all virtualNetworks resources in the Network Controller.

DELETE

3.1.5.18.1.4

Deletes a virtualNetworks resource.

The following property elements are valid.

Element name

Type

Description

etag

Read-only

Specified in Common JSON Elements, section 2.2.2.

provisioningState

Read-only

Specified in Common JSON Elements, section 2.2.2.

logicalNetwork

Required

Indicates a reference to the networks resource that is the underlay network which the virtual network runs on.

subnets

Optional

Indicates an array of the subnets that are on the virtual network. For more details see section 3.1.5.18.2.

addressSpace

Required

Indicates the address space of the virtual network.

addressSpace.addressPrefixes

Required

Indicates an array of the valid list of address prefixes that can make up this virtual network.  The value is an array of address prefixes in the IPv4 or IPv6 format. The space cannot be shrunk if addresses are in use in a subnet belonging to the virtual network.

dhcpOptions

Optional

Indicates the DHCP options used by servers in the virtual network.

dhcpOptions.dnsServers

Optional

Indicates an array of DNS servers that are being used by the virtual network.<9>

IPv6 addresses are supported.

configurationState

Optional
Read-only

See configurationState in section 2.2.4. More details are given in the section for the GET operation section 3.1.5.18.1.2.

configurationState.id

This is the instance ID of the virtual network resource.

configurationState.hostErrors

An array of configurationState objects as specified in section 2.2.4. The values for the various fields are the same as for the network interface configuration state specified in section 3.1.5.11.

UnbilledAddressRanges

Optional

Comma separated values of IP ranges for which egress traffic is not billed (not tallied towards billing).

This property is supported in URI version v2 or later.

encryptionCredential

Optional

Reference to a credential resource of type X509 certificate. The certificate will be used to encrypt virtualized traffic for this virtual network.

The certificate MUST be installed on all the hosts (servers) in both the Root and the MY stores of the local machine.

This property is supported in URI version v2 or later.

virtualNetworkPeerings

Optional

Indicates virtual networks that are peered in order to enable network traffic to flow between the virtual networks without the use of a gateway.

For more details see section 3.1.5.18.3.

This property is supported in URI version v3 or later.