Commandez un Internet Access avec Network Edge
Equinix Internet Access (EIA) fournit un accès Internet mixte en utilisant plusieurs fournisseurs d'accès Internet (FAI) de niveau 1 et les points d'échange Internet (IX) d'Equinix pour offrir une disponibilité, une fiabilité et une vitesse élevées. Pour commander Internet Access via l'API :
- La Fabric Connection entre votre appareil Network Edge et le profil de service Equinix Internet Access est fournie gratuitement.
- Lorsque vous déprovisionnez votre instance de service Internet Access, la connexion Fabric associée est également déprovisionnée.
- En cas de problème lors du provisionnement d'une instance de service Internet Access, la connexion Fabric associée est automatiquement déprovisionnée.
Equinix Internet Access with Network Edge est disponible pour les organisations intégrées à Equinix Identity and Access Management, et le compte utilisé pour envoyer des demandes d'API doit avoir les rôles Equinix Fabric Manager, Network Edge Connections Manager, et Network Edge Device Manager.
Conditions préalables
-
Authentifier - Soumettez vos informations d'identification, votre ID client et votre secret client pour OAuth2. authentification. Reportez-vous à API Authentication pour savoir comment appeler l'API OAuth afin de valider et d'authentifier vos informations d'identification.
-
Déterminez les informations du côté A. Vous avez besoin d'un dispositif virtuel Network Edge provisionné, de dispositifs redondants ou d'un cluster avec une licence enregistrée. Envoyez une requête
GETau point d'extrémité/ne/v1/devicesou au point d'extrémité/ne/v1/devices/{id}. Vous pouvez choisir n'importe quelle interface disponible sur le périphérique pour votre connexion. Toutefois, Equinix sélectionnera une interface si vous n'en spécifiez pas. -
Déterminez les informations du côté Z. Le profil de service Internet Access est de type
IA_PROFILEet son ID est32d81829-0bf8-45d5-84e2-7289a553dbb6. Pour déterminer l'emplacement du métro pour votre service, envoyez une requêteGETau point de terminaison/internetAccess/v2/ibxspour trouver les emplacements où Internet Access est disponible. Vous avez besoin de ces informations pour commander votre service Internet Access.
Création de la connexion Internet Access
Pour créer la connexion pour votre service Internet Access, envoyez une requête POST au point de terminaison /fabric/v4/connections. Le type de connexion est IA_VC.
Fournissez les informations sur votre appareil virtuel dans l'objet aSide, y compris :
accessPoint.typeasVDvirtualDevice.typeasEDGEvirtualDevice.uuidas your device's UUID
Fournissez le profil du service Internet Access dans l'objet zSide, y compris :
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 demandes. Une requête doit avoir redundancy.priority fixé à PRIMARY, et l'autre redundancy.priority fixé à SECONDARY et vous devez spécifier redundancy.group comme l'UUID de la première connexion.
Utilisez un cluster de périphériques virtuels ou une paire de périphériques redondants (un pour le primaire 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 est l'identifiant de connexion de votre service Internet Access. Vous devez disposer de cet UUID de connexion pour commander le service Internet Access.
Commande d'un service avec bloc IP attribué par le fournisseur
Si vous utilisez des connexions redondantes vers des appareils redondants ou un cluster, seul le routage BGP est pris en charge.
Pour commander votre service Internet Access, envoyez une requête POST au point de terminaison /internetAccess/v2/services.
Lorsque vous commandez votre service en utilisant des adresses IP appartenant à Equinix (PA), définissez la valeur ipBlock.prefixLength à la taille du sous-réseau dont vous avez besoin.
Si vous commandez un service sur une seule connexion :
- Définissez
typeàSINGLEet fournissez l'ID de la connexion au tableauconnections. - Choisissez votre
routingProtocol.typeparmiSTATIC,DIRECT, ouBGP.
Si vous commandez un service sur une paire de connexions redondantes :
- Définissez
typeàDUAL, et fournissez les deux identifiants de connexion au tableauconnections. - Définissez votre
routingProtocol.typeàBGP.
Lorsque vous commandez une instance de service EIA située dans l'un de nos centres de données IBX dans la région APAC, assurez-vous d'ajouter les informations addressingPlans et questions à l'objet ipBlock dans le cas d'un bloc PA IPv4. Consultez la référence API pour plus d'informations.
Routage statique
La documentation sur le routage statique se trouve 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 sur le routage direct est disponible 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>"
}
}
}'
Routage BGP
Spécifiez les détails de votre configuration BGP dans l'objet routingProtocol :
- les routes que vous voulez voir annoncées à l'Internet,
FULL,DEFAULT,FULL_DEFAULT, ouPARTIALdansroutingProtocol.exportPolicy. - fournissez la plage d'ASN du client BITS_16 pour un ASN de 16 bits ou BITS_32 pour un ASN de 32 bits dans
routingProtocol.customerAsnRange. - fournissez bgpAuthKey dans
routingProtocol.bgpAuthKeysi nécessaire.
La documentation sur le routage BGP est disponible 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>"
}
}
}'
Commander un service avec un bloc IP indépendant du fournisseur
Lorsque vous commandez votre service en utilisant votre propre bloc IP (PI), spécifiez-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
Spécifiez quelles IP de votre bloc IP peuvent être utilisées pour le peering dans l'objet peering. Pour un type de service unique, veuillez fournir 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>"
}
}
}'
Routage 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>"
}
}
}'
Commande de service avec les blocs IP PA et PI
Lorsque vous commandez votre service avec des blocs IP attribués par le fournisseur (PA) et indépendants du fournisseur (PI), spécifiez au moins deux objets route 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).
Les blocs IP multiples ne peuvent être demandés qu'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 afficher 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 de provisionnement de votre instance de service Internet Access, la connexion associée est déprovisionnée automatiquement.