Establish VPN Connectivity

A VPN configuration uses an IPSec tunnel and an associated BGP to allow a remote site to receive traffic originating from clouds connected to the data interfaces of your virtual device. You can enable VPN only for Equinix-Configured devices.

Refer to Network Edge VPN tunnels and sites for more information

To create a VPN you must have:

1) A provisioned virtual device with a registered license and access control list (ACLs). Call Get Virtual Devices to check the status of your devices and find the virtualDeviceUuid.
2) If you have a redundant device, you must also provide secondary VPN details.

If you have the above, then you can skip ahead to Step 3 and create a VPN. Otherwise, follow the steps.

Step 1: Authenticate

Submit your user credentials, Client ID, and Client Secret for OAuth2 authentication.

See Generating Client id and Client Secret under the Getting Access Token section for instructions to create a client ID and client secret. See Requesting Access and Refresh tokens for instructions to call the Oauth API to validate and authenticate your credentials.

If you are unaware of your user credentials, contact your local Equinix Service Desk.

Step 2: Create/Get Virtual Devices

a) To create a virtual device, please follow these steps.
b) To check the status of your virtual device, call Get Virtual Device {uuid} API or Get Virtual Devices API.

You may skip the above step if you have a provisioned device with a registered license.

Step 3: Create VPN

POST /ne/v1/vpn
Method POST
URL or End Point /ne/v1/vpn
Headers Authorization, Content-Type
Query Parameters Not applicable
Body Parameters siteName, virtualDeviceUuid, configName, peerIp, peerSharedKey, remoteAsn, remoteIpAddress, password, localAsn, tunnelIp, useNetworkServiceConnection, secondary {configName, peerIp, peerSharedKey, remoteAsn, remoteIpAddress, password, localAsn, tunnelIp}

To obtain an authorization token, refer to Requesting Access and Refresh tokens under the Getting Access Token section.

Sample curl request to create VPN configuration for a single device.

Copy
curl -X
POST "https://api.equinix.com/ne/v1/vpn"
-H "Authorization: Bearer 4P8uH5ZWsgH4qlovBrFZG4Hzpp2V"
-H "Content-Type: application/json"
-d '{
  "siteName": "Chicago",
  "virtualDeviceUuid": "8c2845e5-be83-4561-ba2b-a53a7e4cf5ec",
  "configName": "Traffic from AWS cloud",
  "peerIp": "110.11.12.222",
  "peerSharedKey": "5bb2424e888bd",
  "remoteAsn": 65413,
  "remoteIpAddress": "100.210.1.31",
  "password": "pass123SROY",
  "localAsn": 65414,
  "tunnelIp": "192.168.7.2/30",

  "useNetworkServiceConnection": false
}'

Sample curl request to create VPN configuration for a redundant device.

Copy
‌curl -X
POST "https://api.equinix.com/ne/v1/vpn"
-H "Authorization: Bearer 4P8uH5ZWsgH4qlovBrFZG4Hzpp2V"
-H "Content-Type: application/json"
-d '{
  "siteName": "Chicago",
  "virtualDeviceUuid": "8c2845e5-be83-4561-ba2b-a53a7e4cf5ec",
  "configName": "Traffic from AWS cloud",
  "peerIp": "110.11.12.222",
  "peerSharedKey": "5bb2424e888bd",
  "remoteAsn": 65413,
  "remoteIpAddress": "100.210.1.31",
  "password": "pass123SROY",
  "localAsn": 65414,
  "tunnelIp": "192.168.7.2/30",
  "useNetworkServiceConnection": false,
  "secondary": {
    "configName": "Traffic from AWS cloud-SROY",
    "peerIp": "110.11.12.222",
    "peerSharedKey": "5bb2424e888bd",
    "remoteAsn": 65413,
    "remoteIpAddress": "100.210.1.31",
    "password": "pass123SROY",
    "localAsn": 65414,
    "tunnelIp": "192.168.7.2/30"
  }
}'

Description of request body parameters:

Body Parameter Name Mandatory Type Example Applicable Values Description
siteName Yes string Chicago Your remote siteName. This must be unique and between 2 and 10 alphanumeric characters long with no spaces.
virtualDeviceUuid Yes string f79eead8-b837-41d3-9095-9b15c2c4996d Unique Id of the virtual device. This must be 36 characters long.
configName Yes string Traffic from AWS cloud Description of the VPN. This must be between 3 and 50 characters. In case you have a redundant device, you must provide a secondary config name.
peerIp Yes string 100.210.1.221 IP Address of the remote site to which you are connecting (this is on the customer side). You must provide a unique peer IP address for every VPN between a virtual device and the remote site.
peerSharedKey Yes string 10013 Pre-shared key for VPN.
remoteAsn Yes string 10023 Remote ASN (autonomous system number). Remote ASN and local ASN cannot be the same. You cannot use the following reserved ASN numbers: 0, 23456, 64496-64511, 65535, 65552-131071, 4294967295.
remoteIpAddress Yes string 100.210.1.31 Remote IP address to establish BGP peering (this is on the customer side).
password No string pass123SROY Password for BGP peering. This must not start with a number, must be between 4 and 25 characters long, and contain only alphanumeric characters.
localAsn Yes integer 65414 Local ASN (autonomous system number) of Equinix site. Remote and local ASN cannot be the same. You cannot use the following reserved ASN numbers: 0, 23456, 64496-64511, 65535, 65552-131071, 4294967295.
tunnelIp Yes string 192.168.7.2/30 Local tunnel IP in CIDR format.
useNetworkServiceConnection Yes boolean false Whether this VPN should use the existing network service connection. You should set this value to True only if you have an existing network service connection on your device.

Sample VPN configuration response for a single device.

Copy
curl -X
{
    "vpnUuid": "eb26b601-02cc-4473-b1ee-3e2d4d847315"
}

Sample VPN configuration response for a redundant device.

Copy
curl -X
{
    "secondaryVpnUuid": "991b775a-16ec-4f2e-b861-8ab93a39902a",
    "vpnUuid": "eb26b601-02cc-4473-b1ee-3e2d4d847315"
}

Description of the response payload:

Field Type Example Values Description
vpnUuid string 991b775a-16ec-4f2e-b861-8ab93a39902a Unique Id of the VPN on the primary device.
secondaryVpnUuid string eb26b601-02cc-4473-b1ee-3e2d4d847315 Unique Id of the VPN on the secondary device.

After you create a VPN configuration, you can check the status of your VPN by calling Get VPN.

Possible VPN status Description
PROVISIONING VPN is provisioning.
PROVISIONED VPN is provisioned.
FAILED VPN provisioning failed.
DEPROVISIONING VPN is de-provisioning.
DEPROVISIONED VPN is de-provisioned

VPN tunnel status is either UP or DOWN.

If you get “Access Denied” error, contact your local Equinix Service Desk.