Networking

IPv6 Ranges List

get
https://api.linode.com/v4/networking/ipv6/ranges

Displays the IPv6 ranges on your Account.

  • An IPv6 range is a /64 or /54 block of IPv6 addresses routed to a single Linode in a given Region.

  • Your Linode is responsible for routing individual addresses in the range, or handling traffic for all the addresses in the range.

  • Access the IPv6 Range Create (POST /networking/ipv6/ranges) endpoint to add a /64 or /56 block of IPv6 addresses to your account.

Query Parameters

page
integer > = 1
Default: 1

The page of a collection to return.

page_size
integer [25 .. 500]
Default: 100

The number of items to return per page.

Request Samples

curl -H "Authorization: Bearer $TOKEN" \
    https://api.linode.com/v4/networking/ipv6/ranges

Response Samples

{
  "data": [
    {
      "region": "us-east",
      "range": "2600:3c01::",
      "prefix": 64,
      "route_target": "2600:3c01::ffff:ffff:ffff:ffff"
    }
  ],
  "page": 1,
  "pages": 1,
  "results": 1
}

Responses

200: The IPv6 ranges on your Account.

data
array of objects
region
string

The region for this range of IPv6 addresses.

range
string

The IPv6 address of this range.

prefix
integer

The prefix length of the address. The total number of addresses that can be assigned from this range is calculated as 2(128 - prefix length).

route_target
string

The IPv6 SLAAC address.

page
integer

The current page.

pages
integer

The total number of pages.

results
integer

The total number of results.

default: Error

errors
array of objects
reason
string

What happened to cause this error. In most cases, this can be fixed immediately by changing the data you sent in the request, but in some cases you will be instructed to open a Support Ticket or perform some other action before you can complete the request successfully.

field
string

The field in the request that caused this error. This may be a path, separated by periods in the case of nested fields. In some cases this may come back as "null" if the error is not specific to any single element of the request.

IPv6 Range Create

post
https://api.linode.com/v4/networking/ipv6/ranges

Creates an IPv6 Range and assigns it based on the provided Linode or route target IPv6 SLAAC address. See the ipv6 property when accessing the Linode View (GET /linode/instances/{linodeId}) endpoint to view a Linode's IPv6 SLAAC address.

  • Either linode_id or route_target is required in a request.
  • linode_id and route_target are mutually exclusive. Submitting values for both properties in a request results in an error.
  • Upon a successful request, an IPv6 range is created in the Region that corresponds to the provided linode_id or route_target.
  • Your Linode is responsible for routing individual addresses in the range, or handling traffic for all the addresses in the range.
  • Access the IP Addresses Assign (POST /networking/ips/assign) endpoint to re-assign IPv6 Ranges to your Linodes.

Note: The following restrictions apply:

  • A Linode can only have one IPv6 range targeting its SLAAC address.
  • An account can only have one IPv6 range in each Region.
  • Open a Support Ticket to request expansion of these restrictions.

Request Body Schema

prefix_length
Required
integer
Enum: "56""64"

The prefix length of the IPv6 range.

linode_id
integer

The ID of the Linode to assign this range to. The SLAAC address for the provided Linode is used as the range's route_target.

  • Required if route_target is omitted from the request.

  • Mutually exclusive with route_target. Submitting values for both properties in a request results in an error.

route_target
string <ipv6>

The IPv6 SLAAC address to assign this range to.

  • Required if linode_id is omitted from the request.

  • Mutually exclusive with linode_id. Submitting values for both properties in a request results in an error.

  • Note: Omit the /128 prefix length of the SLAAC address when using this property.

Request Samples

curl -H "Authorization: Bearer $TOKEN" \
    -X POST -d '{
        "linode_id": 123,
        "prefix_length": 64
    }' \
    https://api.linode.com/v4/networking/ipv6/ranges

Response Samples

{
  "range": "2001:0db8::/64",
  "route_target": "2001:0db8::1"
}

Responses

200: IPv6 range created successfully.

range
string <ipv6/prefix_length>

The IPv6 network range, including subnet and prefix length.

route_target
string <ipv6>

The route target IPV6 SLAAC address for this range. Does not include the prefix length.

default: Error

errors
array of objects
reason
string

What happened to cause this error. In most cases, this can be fixed immediately by changing the data you sent in the request, but in some cases you will be instructed to open a Support Ticket or perform some other action before you can complete the request successfully.

field
string

The field in the request that caused this error. This may be a path, separated by periods in the case of nested fields. In some cases this may come back as "null" if the error is not specific to any single element of the request.