Skip to content

Commit bdd591a

Browse files
authored
Merge pull request #576 from bbiggerr/elastic-ip
[New] POST /networking/ips/share; GET /networking/ipv6/ranges/{range}
2 parents 2241dfa + 43d4866 commit bdd591a

File tree

1 file changed

+159
-3
lines changed

1 file changed

+159
-3
lines changed

openapi.yaml

Lines changed: 159 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10307,6 +10307,90 @@ paths:
1030710307
--region us-east \
1030810308
--assignments.address 2001:db8:3c4d:15::/64 \
1030910309
--assignments.linode_id 123
10310+
/networking/ips/share:
10311+
x-linode-cli-command: networking
10312+
post:
10313+
servers:
10314+
- url: https://api.linode.com/v4beta
10315+
- url: https://api.linode.com/v4
10316+
x-linode-grant: read_write
10317+
tags:
10318+
- Networking
10319+
summary: IP Addresses Share
10320+
description: |
10321+
Configure shared IPs.
10322+
10323+
IP sharing allows IP address reassignment (also referred to as IP failover) from one Linode to another if
10324+
the primary Linode becomes unresponsive. This means that requests to the primary Linode's IP address can be
10325+
automatically rerouted to secondary Linodes at the configured shared IP addresses.
10326+
10327+
IP failover requires configuration of a failover service (such as [Keepalived](/docs/guides/ip-failover-keepalived))
10328+
within the internal system of the primary Linode.
10329+
10330+
**Note**: IPv6 range sharing has limited availability in certain regions. Please contact customer support for
10331+
assistance in enabling IPv6 range sharing for your Linodes.
10332+
operationId: shareIPs
10333+
x-linode-cli-action: ip-share
10334+
security:
10335+
- personalAccessToken: []
10336+
- oauth:
10337+
- ips:read_write
10338+
- linodes:read_write
10339+
requestBody:
10340+
description: Information about what IPs to share with which Linode.
10341+
required: true
10342+
content:
10343+
application/json:
10344+
schema:
10345+
required:
10346+
- linode_id
10347+
- ips
10348+
properties:
10349+
linode_id:
10350+
type: integer
10351+
description: >
10352+
The ID of the primary Linode that the addresses will be shared with.
10353+
example: 123
10354+
ips:
10355+
type: array
10356+
items:
10357+
type: string
10358+
format: ip
10359+
description: |
10360+
A list of secondary Linode IPs to share with the primary Linode.
10361+
* Can include both IPv4 addresses and IPv6 ranges (omit /56 and /64 prefix lengths)
10362+
* Can include both private and public IPv4 addresses.
10363+
* You must have access to all of these addresses and they must be in the same Region as the primary
10364+
Linode.
10365+
* Enter an empty array to remove all shared IP addresses.
10366+
responses:
10367+
'200':
10368+
description: IP Address sharing successful.
10369+
content:
10370+
application/json:
10371+
schema:
10372+
type: object
10373+
default:
10374+
$ref: '#/components/responses/ErrorResponse'
10375+
x-code-samples:
10376+
- lang: Shell
10377+
source: >
10378+
curl -H "Content-Type: application/json" \
10379+
-H "Authorization: Bearer $TOKEN" \
10380+
-X POST -d '{
10381+
"linode_id": 123,
10382+
"ips": [
10383+
"192.0.2.1",
10384+
"2001:db8:3c4d:15::"
10385+
]
10386+
}' \
10387+
https://api.linode.com/v4beta2/networking/ips/share
10388+
- lang: CLI
10389+
source: >
10390+
linode-cli networking ip-share \
10391+
--linode_id 123 \
10392+
--ips 192.0.2.1 \
10393+
--ips 2001:db8:3c4d:15::
1031010394
/networking/ipv4/assign:
1031110395
x-linode-cli-command: networking
1031210396
post:
@@ -10407,13 +10491,13 @@ paths:
1040710491
x-linode-grant: read_write
1040810492
tags:
1040910493
- Networking
10410-
summary: IP Sharing Configure
10494+
summary: IPv4 Sharing Configure
1041110495
description: >
1041210496
Configure shared IPs. A shared IP may be brought up on a Linode other
1041310497
than the one it lists in its response. This can be used to allow one
1041410498
Linode to begin serving requests should another become unresponsive.
10415-
operationId: shareIPs
10416-
x-linode-cli-action: ip-share
10499+
operationId: shareIPv4s
10500+
x-linode-cli-skip: true
1041710501
security:
1041810502
- personalAccessToken: []
1041910503
- oauth:
@@ -10682,12 +10766,42 @@ paths:
1068210766
type: string
1068310767
format: ipv6
1068410768
x-linode-cli-command: networking
10769+
get:
10770+
tags:
10771+
- Networking
10772+
summary: IPv6 Range View
10773+
description: |
10774+
View IPv6 range information.
10775+
operationId: getIPv6Range
10776+
x-linode-cli-action: v6-range-view
10777+
security:
10778+
- personalAccessToken: []
10779+
- oauth:
10780+
- ips:read
10781+
responses:
10782+
'200':
10783+
description: Returns IPv6 range information.
10784+
content:
10785+
application/json:
10786+
schema:
10787+
$ref: '#/components/schemas/IPv6RangeBGP'
10788+
default:
10789+
$ref: '#/components/responses/ErrorResponse'
10790+
x-code-samples:
10791+
- lang: Shell
10792+
source: >
10793+
curl -H "Authorization: Bearer $TOKEN" https://api.linode.com/v4/networking/ipv6/ranges/2001:0db8::
10794+
- lang: CLI
10795+
source: >
10796+
linode-cli networking v6-range-view 2001:0db8::
1068510797
delete:
1068610798
tags:
1068710799
- Networking
1068810800
summary: IPv6 Range Delete
1068910801
description: |
1069010802
Removes this IPv6 range from your account and disconnects the range from any assigned Linodes.
10803+
10804+
**Note:** Shared IPv6 ranges cannot be deleted at this time. Please contact Customer Support for assistance.
1069110805
operationId: deleteIPv6Range
1069210806
x-linode-cli-action: v6-range-delete
1069310807
security:
@@ -18461,6 +18575,48 @@ components:
1846118575
The last address in this block of IPv6 addresses.
1846218576
example: '2600:3c01::ffff:ffff:ffff:ffff'
1846318577
nullable: true
18578+
IPv6RangeBGP:
18579+
type: object
18580+
description: >
18581+
An object representing an IPv6 range.
18582+
properties:
18583+
range:
18584+
type: string
18585+
description: >
18586+
The IPv6 range of addresses in this pool.
18587+
example: '2600:3c01::'
18588+
readOnly: true
18589+
x-linode-cli-display: 1
18590+
prefix:
18591+
type: integer
18592+
description: >
18593+
The prefix length of the address, denoting how many addresses can be
18594+
assigned from this range calculated as 2 <sup>128-prefix</sup>.
18595+
example: 64
18596+
x-linode-cli-display: 2
18597+
region:
18598+
type: string
18599+
description: >
18600+
The region for this range of IPv6 addresses.
18601+
example: us-east
18602+
readOnly: true
18603+
x-linode-cli-display: 3
18604+
is_bgp:
18605+
type: boolean
18606+
description: >
18607+
Whether this IPv6 range is shared.
18608+
example: false
18609+
readOnly: true
18610+
linodes:
18611+
type: array
18612+
items:
18613+
type: integer
18614+
example:
18615+
- 123
18616+
description: >
18617+
A list of Linodes targeted by this IPv6 range. Includes Linodes with IP sharing.
18618+
readOnly: true
18619+
x-linode-cli-display: 4
1846418620
Kernel:
1846518621
type: object
1846618622
description: Linux kernel object

0 commit comments

Comments
 (0)