3.1.5.11.2 ipConfigurations

The ipConfigurations resource represents configuration information for IP addresses: allocation method, actual IP address, membership of a logical or virtual subnet, load balancing and access control information.

It is invoked through the following URI.

 https://<url>/networking/v1/networkInterfaces/{parentResourceId}/ipConfigurations/{resourceId}

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

parentResourceId: The identifier for the specific ancestor resource within the resource type. See section 2.2.3.3 for more details.

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

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

The following HTTP methods can be performed on this resource.

HTTP method

Section

Description

PUT

3.1.5.11.2.1.1

Create a new ipConfigurations resource or update an existing ipConfigurations resource.

GET

3.1.5.11.2.1.2

Get one ipConfigurations resource.

GET ALL

3.1.5.11.2.1.3

List all ipConfigurations resources in the Network Controller.

DELETE

3.1.5.11.2.1.4

Deletes an ipConfigurations 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.

accessControlList

Optional

Indicates a reference to an accessControlLists resource that defines the ACLs in and out of the IP configuration.

loadBalancerBackendAddressPool

Optional Read-only

Reference to backendAddressPools child resource of loadBalancers resource.

loadBalancerInboundNatRules

Optional

Reference to inboundNatRules child resource of loadBalancers resource.

privateIPAddress

Optional

Indicates the private IP address of the IP configuration.

privateIPAllocationMethod

Optional

Possible values are: Static, Dynamic, and Unmanged.

Static allocation

The server MUST validate that there is a privateIPAddress property in the input message and that the IP Address falls within the range of the subnet referenced by the IP configuration REST resource, and that the IP address is not already in use.

If the IP is not in the subnet range, the server MUST return an error response with the error code set to PrivateIPAddressNotInSubnet.

If the IP is already in use, the server MUST return an error response with the error code set to PrivateIPAddressInUse.

Dynamic allocation

The server SHOULD allocate an IP address from the subnet referenced by the IP configuration. The server SHOULD return an error response with code SubnetIsFull if there are no more IP Addresses available.

If the server allocates an IP address, then the server MUST return the allocated IP in the privateIPAddress property in GET operations on the resource, see section 3.1.5.11.2.1.2.

Unmanaged allocation

The server MUST support unmanaged allocation only for IP configurations with references to logical network subnets that have the networkVirtualizationEnabled property set to FALSE. The server MUST return an error response with code UnmanagedAllocationMethodNotSupported for references to any other type of subnets.

The server MUST apply all applicable policies except IP address to the network interface that contains an IP configuration with unmanaged private IP allocation. Examples of applicable policies are access control lists and QOS.

publicIPAddress

Optional

Indicates the public IP address of the IP configuration.

serviceInsertion

Optional

Indicates a reference to a serviceInsertions resource that defines the service insertion in and out of the IP configuration.

subnet

Read-only

Indicates a reference to the subnets resource that the IP configuration is connected to.

isPrimary

Optional

Indicates the primary IP address when a network interface has more than one IP configuration. Only the primary IP address is registered in DNS.

This property is supported on URI version V4 or higher.