Commandez un accès Internet avec Network Edge
Equinix Internet Access (EIA) fournit un accès Internet hybride utilisant plusieurs fournisseurs d'accès Internet (FSI) de niveau 1 et les points d'échange Internet (IX) d'Equinix pour garantir une haute disponibilité, une grande fiabilité et un débit élevé. Pour commander un accès Internet via l'API:
- La connexion Fabric entre votre appareil Network Edge et le profil de service Equinix Internet Access est fournie gratuitement.
- Lorsque vous désactivez votre instance de service d'accès Internet, la connexion Fabric associée est également désactivée.
- En cas de problème lors de la mise en service d'une instance de service Internet Access, la connexion Fabric associée est automatiquement désactivée.
Equinix Internet Access avec Network Edge est disponible pour les organisations intégrées à Equinix Identity and Access Management, et le compte utilisé pour envoyer des requêtes API doit avoir les rôles Equinix Fabric Manager, Network Edge Connections Manager et Network Edge Device Manager.
Préalable
-
Authentification - Soumettez vos identifiants utilisateur, votre identifiant client et votre clé secrète client pour OAuth2 Authentification. Consultez Authentification API pour obtenir des instructions sur la façon d'appeler l'API OAuth afin de valider et d'authentifier vos informations d'identification.
-
Déterminez les informations côté serveur (A). Vous avez besoin d'un périphérique virtuel de périphérie de réseau (Network Edge Virtual Device), de périphériques redondants ou d'une grappe avec une licence enregistrée. Envoyez une requête
GETau point de terminaison/ne/v1/devicesou/ne/v1/devices/{id}. Vous pouvez choisir n'importe quelle interface disponible sur l'appareil pour votre connexion. Toutefois, Equinix choisira une interface par défaut. -
Déterminez les informations côté réseau (Z-side). Le profil du service d'accès Internet est de type
IA_PROFILEet son identifiant est32d81829-0bf8-45d5-84e2-7289a553dbb6. Pour déterminer la zone métropolitaine de couverture de votre service, envoyez une requêteGETau point de terminaison/internetAccess/v2/ibxsafin de trouver les zones où l'accès Internet est disponible. Ces renseignements sont nécessaires pour commander votre service d'accès Internet.
Création d'une connexion Internet
Pour créer la connexion à votre service d'accès Internet, envoyez une requête POST au point de terminaison /fabric/v4/connections. Le type de connexion est IA_VC.
Fournissez les informations relatives à votre appareil virtuel dans l'objet aSide, notamment:
accessPoint.typeasVDvirtualDevice.typeasEDGEvirtualDevice.uuidas your device's UUID
Fournissez le profil du service d'accès Internet dans l'objet zSide, incluant:
accessPoint.typeasSP.profile.typeasIA_PROFILEprofile.uuidas32d81829-0bf8-45d5-84e2-7289a553dbb6metroCodeas the two letter metro code of the Internet Access metro you are connecting to.
Si vous créez des connexions redondantes, faites deux requêtes. L'une d'elles doit avoir la propriété redundancy.priority définie sur PRIMARY.
et l'autre redundancy.priority défini sur SECONDARY et vous devez spécifier redundancy.group comme l'UUID de la première connexion.
Utilisez une grappe de périphériques virtuels ou une paire d'appareils redondants (un pour le principal et un pour le secondaire) pour le côté A.
Exemples de requêtes cURL:
Primary connection example
curl -X POST 'https://api.equinix.com/fabric/v4/connections' \
-H 'content-type: application/json' \
-H 'authorization: Bearer <token>' \
-d '{
"type": "IA_VC",
"name": "<your_connection_name>",
"bandwidth": <connection_speed>,
"redundancy": {
"priority": "PRIMARY"
},
"aSide": {
"accessPoint": {
"type": "VD",
"virtualDevice": {
"type": "EDGE",
"uuid": "<your_virtual_device_uuid>"
}
}
},
"zSide": {
"accessPoint": {
"type": "SP",
"profile": {
"type": "IA_PROFILE",
"uuid": "32d81829-0bf8-45d5-84e2-7289a553dbb6"
},
"location": {
"metroCode": "<metro_code>"
}
}
},
"project": {
"projectId": "<project_id>"
},
"order": {
"purchaseOrderNumber": "<purchase_order_number>"
},
"notifications": [
{
"type": "ALL",
"emails": [
"<contact_email>"
]
}
]
}'
Secondary connection example
curl -X POST 'https://api.equinix.com/fabric/v4/connections' \
-H 'content-type: application/json' \
-H 'authorization: Bearer <token>' \
-d '{
"type": "IA_VC",
"name": "<your_connection_name>",
"bandwidth": <connection_speed>,
"redundancy": {
"priority": "SECONDARY",
"group": "<primary_connection_uuid>"
},
"aSide": {
"accessPoint": {
"type": "VD",
"virtualDevice": {
"type": "EDGE",
"uuid": "<your_virtual_device_uuid>"
}
}
},
"zSide": {
"accessPoint": {
"type": "SP",
"profile": {
"type": "IA_PROFILE",
"uuid": "32d81829-0bf8-45d5-84e2-7289a553dbb6"
},
"location": {
"metroCode": "<metro_code>"
}
}
},
"project": {
"projectId": "<project_id>"
},
"order": {
"purchaseOrderNumber": "<purchase_order_number>"
},
"notifications": [
{
"type": "ALL",
"emails": [
"<contact_email>"
]
}
]
}'
La réponse contient un uuid qui correspond à l'identifiant de connexion de votre service d'accès Internet. Vous devez disposer de cet UUID de connexion pour commander le service d'accès Internet.
Service de commande avec bloc IP attribué par le fournisseur
Si vous utilisez des connexions redondantes vers des périphériques redondants ou une grappe, seul le routage BGP est pris en charge.
Pour commander votre service d'accès Internet, envoyez une requête POST au point de terminaison /internetAccess/v2/services.
Lors de la commande de votre service en utilisant des adresses IP appartenant à Equinix (PA), définissez la valeur ipBlock.prefixLength sur la taille du sous-réseau dont vous avez besoin.
Si vous commandez un service par une seule connexion:
- Définissez
typesurSINGLEet fournissez l'ID de connexion au tableauconnections. - Choisissez votre
routingProtocol.typeparmiSTATIC,DIRECTouBGP.
Si vous commandez un service via une paire de connexions redondantes:
- Définissez
typesurDUALet fournissez les deux identifiants de connexion au tableauconnections. - Définissez votre
routingProtocol.typeàBGP.
Lors de la commande d'une instance de service EIA hébergée dans l'un de nos centres de données IBX de la région Asie-Pacifique, assurez-vous d'ajouter les informations « addressingPlans » et « questions » à l'objet « ipBlock » en cas de blocage IPv4 PA. Consultez la référence API pour plus d'informations.
Routage statique
La documentation relative au routage statique peut être trouvée ici.
Exemples de requêtes cURL:
Single Static Service in APAC region example
curl -X POST 'https://api.equinix.com/internetAccess/v2/services' \
-H 'content-type: application/json' \
-H 'authorization: Bearer <token>' \
-d '{
"name": "<your_service_name>",
"type": "SINGLE",
"connections": [
"<connection_uuid>"
],
"routingProtocol": {
"type": "STATIC",
"ipv4": {
"customerRoutes": [
{
"ipBlock": {
"prefixLength": <size_of_ipv4_ip_block>,
"addressingPlans": [
{
"afterThreeMonths": <number_of_ip_addresses_used_after_three_months>,
"immediate": <number_of_ip_addresses_used_instantly>,
"purpose": "<purpose_of_ip_block>",
"size": <number_of_ip_addresses_requested>
}
],
"questions": [
{
"answer": "YES",
"type": "PRIVATE_SPACE_CONSIDERED"
},
{
"answer": "NO",
"type": "REFUSED_PREVIOUSLY"
},
{
"answer": "NO",
"type": "RETURNING_ADDRESS_SPACE"
}
]
}
}
]
},
"ipv6": {
"customerRoutes": [
{
"ipBlock": {
"prefixLength": <size_of_ipv6_ip_block>
}
}
]
}
},
"order": {
"purchaseOrder": {
"number": "<purchase_order_number>"
}
}
}'
Routage direct
La documentation relative au routage direct peut être trouvée ici.
Exemples de requêtes cURL:
Single Direct Service example
curl -X POST 'https://api.equinix.com/internetAccess/v2/services' \
-H 'content-type: application/json' \
-H 'authorization: Bearer <token>' \
-d '{
"name": "<your_service_name>",
"type": "SINGLE",
"connections": [
"<connection_uuid>"
],
"routingProtocol": {
"type": "DIRECT",
"ipv4": {
"customerRoutes": [
{
"ipBlock": {
"prefixLength": <size_of_ipv4_ip_block>
}
}
]
},
"ipv6": {
"customerRoutes": [
{
"ipBlock": {
"prefixLength": <size_of_ipv6_ip_block>
}
}
]
}
},
"order": {
"purchaseOrder": {
"number": "<purchase_order_number>"
}
}
}'
Acheminement BGP
Précisez les détails de votre configuration BGP dans l'objet routingProtocol:
- Indiquez dans
routingProtocol.exportPolicyles routes que vous souhaitez annoncer sur Internet:FULL,DEFAULT,FULL_DEFAULTouPARTIAL. - Fournissez la plage ASN client BITS_16 pour un ASN 16 bits ou BITS_32 pour un ASN 32 bits dans
routingProtocol.customerAsnRange. - Fournissez la clé d'authentification BGP dans
routingProtocol.bgpAuthKeysi nécessaire.
La documentation relative au routage BGP peut être trouvée ici.
Exemples de requêtes cURL:
Single BGP Service example
curl -X POST 'https://api.equinix.com/internetAccess/v2/services' \
-H 'content-type: application/json' \
-H 'authorization: Bearer <token>' \
-d '{
"name": "<your_service_name>",
"type": "SINGLE",
"connections": [
"<connection_uuid>"
],
"routingProtocol": {
"type": "BGP",
"customerAsnRange": "<asn_range>",
"bgpAuthKey": "<bgp_auth_key>",
"exportPolicy": "<route_advertisement_code>",
"ipv4": {
"customerRoutes": [
{
"ipBlock": {
"prefixLength": <size_of_ipv4_ip_block>
}
}
]
},
"ipv6": {
"customerRoutes": [
{
"ipBlock": {
"prefixLength": <size_of_ipv6_ip_block>
}
}
]
}
},
"order": {
"purchaseOrder": {
"number": "<purchase_order_number>"
}
}
}'
Dual BGP Service example
curl -X POST 'https://api.equinix.com/internetAccess/v2/services' \
-H 'content-type: application/json' \
-H 'authorization: Bearer <token>' \
-d '{
"name": "<your_service_name>",
"type": "DUAL",
"connections": [
"<connection_uuid1>", "<connection_uuid2>"
],
"routingProtocol": {
"type": "BGP",
"customerAsnRange": "<asn_range>",
"bgpAuthKey": "<bgp_auth_key>",
"exportPolicy": "<route_advertisement_code>",
"ipv4": {
"customerRoutes": [
{
"ipBlock": {
"prefixLength": <size_of_ipv4_ip_block>
}
}
]
},
"ipv6": {
"customerRoutes": [
{
"ipBlock": {
"prefixLength": <size_of_ipv6_ip_block>
}
}
]
}
},
"order": {
"purchaseOrder": {
"number": "<purchase_order_number>"
}
}
}'
Service de commande avec blocage IP indépendant du fournisseur
Lors de la commande de votre service en utilisant votre propre bloc d'adresses IP (PI), précisez-le dans customerRoutes.prefix
Routage statique
Exemples de requêtes cURL:
Single Static Service example
curl -X POST 'https://api.equinix.com/internetAccess/v2/services' \
-H 'content-type: application/json' \
-H 'authorization: Bearer <token>' \
-d '{
"name": "<your_service_name>",
"type": "SINGLE",
"connections": [
"<connection_uuid>"
],
"routingProtocol": {
"type": "STATIC",
"ipv4": {
"customerRoutes": [
{
"prefix": "<your_ipv4_ip_block>"
}
]
},
"ipv6": {
"customerRoutes": [
{
"prefix": "<your_ipv6_ip_block>"
}
]
}
},
"order": {
"purchaseOrder": {
"number": "<purchase_order_number>"
}
}
}'
Routage direct
Indiquez dans l'objet « peering » les adresses IP de votre bloc d'adresses IP qui peuvent être utilisées à des fins de peering.
Pour le type de service unique, veuillez ne fournir qu'une seule adresse IP dans le tableau equinixPeerIps.
Exemples de requêtes cURL:
Single Direct Service example
curl -X POST 'https://api.equinix.com/internetAccess/v2/services' \
-H 'content-type: application/json' \
-H 'authorization: Bearer <token>' \
-d '{
"name": "<your_service_name>",
"type": "SINGLE",
"connections": [
"<connection_uuid>"
],
"routingProtocol": {
"type": "DIRECT",
"ipv4": {
"customerRoutes": [
{
"prefix": "<your_ipv4_ip_block>"
}
],
"peerings": [
{
"equinixPeerIps": [
"<peering_ip_address>"
]
}
]
},
"ipv6": {
"customerRoutes": [
{
"prefix": "<your_ipv6_ip_block>"
}
],
"peerings": [
{
"equinixPeerIps": [
"<peering_ip_address>"
]
}
]
}
},
"order": {
"purchaseOrder": {
"number": "<purchase_order_number>"
}
}
}'
Acheminement BGP
Exemples de requêtes cURL:
Single BGP Service example
curl -X POST 'https://api.equinix.com/internetAccess/v2/services' \
-H 'content-type: application/json' \
-H 'authorization: Bearer <token>' \
-d '{
"name": "<your_service_name>",
"type": "SINGLE",
"connections": [
"<connection_uuid>"
],
"routingProtocol": {
"type": "BGP",
"customerAsnRange": "<asn_range>",
"bgpAuthKey": "<bgp_auth_key>",
"exportPolicy": "<route_advertisement_code>",
"ipv4": {
"customerRoutes": [
{
"prefix": "<your_ipv4_ip_block>"
}
]
},
"ipv6": {
"customerRoutes": [
{
"prefix": "<your_ipv6_ip_block>"
}
]
}
},
"order": {
"purchaseOrder": {
"number": "<purchase_order_number>"
}
}
}'
Dual BGP Service example
curl -X POST 'https://api.equinix.com/internetAccess/v2/services' \
-H 'content-type: application/json' \
-H 'authorization: Bearer <token>' \
-d '{
"name": "<your_service_name>",
"type": "DUAL",
"connections": [
"<connection_uuid1>", "<connection_uuid2>"
],
"routingProtocol": {
"type": "BGP",
"customerAsnRange": "<asn_range>",
"bgpAuthKey": "<bgp_auth_key>",
"exportPolicy": "<route_advertisement_code>",
"ipv4": {
"customerRoutes": [
{
"prefix": "<your_ipv4_ip_block>"
}
]
},
"ipv6": {
"customerRoutes": [
{
"prefix": "<your_ipv6_ip_block>"
}
]
}
},
"order": {
"purchaseOrder": {
"number": "<purchase_order_number>"
}
}
}'
Service de commande avec blocs IP PA et PI
Lors de la commande de votre service avec des blocs IP attribués au fournisseur (PA) et indépendants du fournisseur (PI), précisez au moins deux objets de routage client avec les champs appropriés:
ipBlock.prefixLengthin case of Equinix provided IP Block (PA).customerRoutes.prefixin case of using your own IP Block (PI).
Il est possible de demander plusieurs blocs d'adresses IP uniquement avec les protocoles de routage statique et BGP.
Exemples de requêtes cURL:
Provider Assigned and Provider Independent IP Blocks example
curl -X POST 'https://api.equinix.com/internetAccess/v2/services' \
-H 'content-type: application/json' \
-H 'authorization: Bearer <token>' \
-d '{
"name": "<your_service_name>",
"type": "SINGLE",
"connections": [
"<connection_uuid>"
],
"routingProtocol": {
"type": "STATIC",
"ipv4": {
"customerRoutes": [
{
"ipBlock": {
"prefixLength": <size_of_ipv4_ip_block>
}
},
{
"prefix": "<your_ipv4_ip_block>"
}
]
},
"ipv6": {
"customerRoutes": [
{
"ipBlock": {
"prefixLength": <size_of_ipv6_ip_block>
}
},
{
"prefix": "<your_ipv6_ip_block>"
}
]
}
},
"order": {
"purchaseOrder": {
"number": "<purchase_order_number>"
}
}
}'
Suivi de vos demandes
Pour voir l'état de votre demande de création de connexion, envoyez une requête GET au point de terminaison fabric/v4/connections/{connectionId}.
To view the details of your Internet Access service, use the internetAccess/v2/services/{serviceId} endpoint.
En cas de problème lors de la mise en service de votre instance de service d'accès Internet, la connexion associée est automatiquement désactivée.