IP Pools¶
Overview¶
This document describes the BIG-IQ API used to list, create, modify or delete IP pools.
REST Endpoint: /mgmt/cm/device/ip-pool/pools¶
Requests¶
GET /mgmt/cm/device/ip-pool/pools/<id>¶
List a specific pool.
Request Parameters¶
None
Query Parameters¶
Name | Type | Description |
---|---|---|
id | string(UUID) | Unique identifier |
Response¶
HTTP/1.1 200 OK
Name | Type | Description |
---|---|---|
name | string | Name of the IP pool. |
description | string | A brief description of the IP pool. |
addressFamily | string | Indication of IPv4 or IPv6 (values are ipv4 and ipv6). |
address | string | The subnet address of the IP pool. |
gateway | string | The gateway associated with the IP pool. |
addressRanges | array_of_objects | List of address ranges in the IP Pool. |
firstAddress | string | The first address in the range. |
lastAddress | string | The last address in the range. |
totalAddressCount | number | The total number of addresses in the IP pool. |
Permissions¶
Role | Allow |
---|---|
Application_Editor | Yes |
Service_Catalog_Viewer | Yes |
Device_Viewer | Yes |
device_manager | Yes |
Service_Catalog_Editor | Yes |
POST /mgmt/cm/device/ip-pool/pools/<id>¶
Add a pool to the collection.
Request Parameters¶
Name | Type | Description |
---|---|---|
name | string | Name of the IP pool. required |
description | string | A brief description of the IP pool. optional |
addressFamily | string | Either ipv4 or ipv6. optional |
address | string | The subnet address of the IP pool. required |
gateway | string | The gateway associated with the IP pool. optional |
addressRanges | array_of_objects | List of address ranges in the IP Pool. At least one range is required. required |
firstAddress | string | The first address in the range. required |
lastAddress | string | The last address in the range. required |
Query Parameters¶
Name | Type | Description |
---|---|---|
id | string(UUID) | Unique identifier |
Response¶
HTTP/1.1 200 OK
Name | Type | Description |
---|---|---|
name | string | Name of the IP pool. |
description | string | A brief description of the IP pool. |
addressFamily | string | Indication of IPv4 or IPv6 (values are ipv4 and ipv6). |
address | string | The subnet address of the IP pool. |
gateway | string | The gateway associated with the IP pool. |
addressRanges | array_of_objects | List of address ranges in the IP Pool. |
firstAddress | string | The first address in the range. |
lastAddress | string | The last address in the range. |
totalAddressCount | number | The total number of addresses in the IP pool. |
Permissions¶
Role | Allow |
---|---|
Application_Editor | No |
Service_Catalog_Viewer | No |
Device_Viewer | No |
device_manager | Yes |
Service_Catalog_Editor | No |
PATCH /mgmt/cm/device/ip-pool/pools/<id>¶
Modify a specific pool in the collection.
Request Parameters¶
Name | Type | Description |
---|---|---|
description | string | A brief description of the IP pool. optional |
gateway | string | The gateway associated with the IP pool. optional |
addressRanges | array_of_objects | List of address ranges in the IP Pool. optional |
firstAddress | string | The first address in the range. required |
lastAddress | string | The last address in the range. required |
Query Parameters¶
Name | Type | Description |
---|---|---|
id | string(UUID) | Unique identifier |
Response¶
HTTP/1.1 200 OK
Name | Type | Description |
---|---|---|
name | string | Name of the IP pool. |
description | string | A brief description of the IP pool. |
addressFamily | string | Indication of IPv4 or IPv6 (values are ipv4 and ipv6). |
address | string | The subnet address of the IP pool. |
gateway | string | The gateway associated with the IP pool. |
addressRanges | array_of_objects | List of address ranges in the IP Pool. |
firstAddress | string | The first address in the range. |
lastAddress | string | The last address in the range. |
totalAddressCount | number | The total number of addresses in the IP pool. |
Permissions¶
Role | Allow |
---|---|
Application_Editor | No |
Service_Catalog_Viewer | No |
Device_Viewer | No |
device_manager | Yes |
Service_Catalog_Editor | No |
DELETE /mgmt/cm/device/ip-pool/pools/<id>¶
Delete a specific pool in the collection.
Request Parameters¶
None
Query Parameters¶
Name | Type | Description |
---|---|---|
id | string(UUID) | Unique identifier |
Response¶
HTTP/1.1 200 OK
Name | Type | Description |
---|---|---|
name | string | Name of the IP pool. |
description | string | A brief description of the IP pool. |
addressFamily | string | Indication of IPv4 or IPv6 (values are ipv4 and ipv6). |
address | string | The subnet address of the IP pool. |
gateway | string | The gateway associated with the IP pool. |
addressRanges | array_of_objects | List of address ranges in the IP Pool. |
firstAddress | string | The first address in the range. |
lastAddress | string | The last address in the range. |
totalAddressCount | number | The total number of addresses in the IP pool. |
Permissions¶
Role | Allow |
---|---|
Application_Editor | No |
Service_Catalog_Viewer | No |
Device_Viewer | No |
device_manager | Yes |
Service_Catalog_Editor | No |
Examples¶
List an IP pool¶
GET /mgmt/cm/device/ip-pool/pools/<id>
Response¶
HTTP/1.1 200 OK
{
"id": "6a21b699-5a06-3148-bbb6-5c8f949b3fb2",
"name": "external",
"address": "10.97.0.0/24",
"addressFamily": "ipv4",
"totalAddressCount": 100,
"addressRanges": [
{
"firstAddress": "10.97.0.1",
"lastAddress": "10.97.0.100"
}
],
"generation": 1,
"lastUpdateMicros": 1529445670469318,
"kind": "cm:device:ip-pool:pools:ippoolstate",
"selfLink": "https://localhost/mgmt/cm/device/ip-pool/pools/6a21b699-5a06-3148-bbb6-5c8f949b3fb2"
}
List all IP pools¶
GET /mgmt/cm/device/ip-pool/pools
Response¶
HTTP/1.1 200 OK
{
"items": [
{
"id": "6a21b699-5a06-3148-bbb6-5c8f949b3fb2",
"address": "10.97.0.0/24",
"addressFamily": "ipv4",
"totalAddressCount": 100,
"addressRanges": [
{
"firstAddress": "10.97.0.1",
"lastAddress": "10.97.0.100"
}
],
"generation": 1,
"lastUpdateMicros": 1529445670469318,
"kind": "cm:device:ip-pool:pools:ippoolstate",
"selfLink": "https://localhost/mgmt/cm/device/ip-pool/pools/6a21b699-5a06-3148-bbb6-5c8f949b3fb2"
}
]
}
Create an IP pool¶
POST /mgmt/cm/device/ip-pool/pools
{
"name": "internal",
"address": "10.96.0.0/24",
"addressRanges": [
{
"firstAddress": "10.96.0.1",
"lastAddress": "10.96.0.20"
}
]
}
Response¶
HTTP/1.1 200 OK
{
"id": "d1efad72-dc5b-37dc-a6a4-6767c32fff40",
"name": "internal",
"addressFamily": "ipv4",
"address": "10.96.0.0/24",
"totalAddressCount": 20,
"addressRanges": [
{
"firstAddress": "10.96.0.1",
"lastAddress": "10.96.0.20"
}
],
"generation": 1,
"lastUpdateMicros": 1529539680840634,
"kind": "cm:device:ip-pool:pools:ippoolstate",
"selfLink": "https://localhost/mgmt/cm/device/ip-pool/pools/d1efad72-dc5b-37dc-a6a4-6767c32fff40"
}
Modify an IP pool¶
PATCH /mgmt/cm/device/ip-pool/pools/<id>
{
"description": "custom description",
"gateway": "10.96.0.101",
"addressRanges": [
{
"firstAddress": "10.96.0.1",
"lastAddress": "10.96.0.20"
},
{
"firstAddress": "10.96.0.25",
"lastAddress": "10.96.0.29"
}
]
}
Response¶
HTTP/1.1 200 OK
{
"id": "d1efad72-dc5b-37dc-a6a4-6767c32fff40",
"name": "internal",
"description": "custom description",
"addressFamily": "ipv4",
"address": "10.96.0.0/24",
"gateway": "10.96.0.101",
"totalAddressCount": 25,
"addressRanges": [
{
"firstAddress": "10.96.0.1",
"lastAddress": "10.96.0.20"
},
{
"firstAddress": "10.96.0.25",
"lastAddress": "10.96.0.29"
}
],
"generation": 2,
"lastUpdateMicros": 1529540017748946,
"kind": "cm:device:ip-pool:pools:ippoolstate",
"selfLink": "https://localhost/mgmt/cm/device/ip-pool/pools/d1efad72-dc5b-37dc-a6a4-6767c32fff40"
}
Delete an IP pool¶
DELETE /mgmt/cm/device/ip-pool/pools/<id>
Response¶
HTTP/1.1 200 OK
{
"id": "d1efad72-dc5b-37dc-a6a4-6767c32fff40",
"name": "internal",
"description": "custom description",
"addressFamily": "ipv4",
"address": "10.96.0.0/24",
"gateway": "10.96.0.101",
"totalAddressCount": 25,
"addressRanges": [
{
"firstAddress": "10.96.0.1",
"lastAddress": "10.96.0.20"
},
{
"firstAddress": "10.96.0.25",
"lastAddress": "10.96.0.29"
}
],
"generation": 2,
"lastUpdateMicros": 1529540017748946,
"kind": "cm:device:ip-pool:pools:ippoolstate",
"selfLink": "https://localhost/mgmt/cm/device/ip-pool/pools/d1efad72-dc5b-37dc-a6a4-6767c32fff40"
}