Cómo solicitar Internet Access con un puerto Fabric
Equinix Internet Access (EIA) proporciona acceso combinado a Internet utilizando múltiples proveedores de servicios de Internet (ISP) de primer nivel y Equinix Internet Exchanges (IX) para ofrecer alta disponibilidad, fiabilidad y velocidad.
- La conexión Fabric entre su puerto Fabric y el perfil de servicio Equinix Internet Access se proporciona de forma gratuita.
- Cuando desaprovisiona su instancia de servicio Internet Access, también se desaprovisiona la conexión Fabric asociada.
- En caso de que haya un problema con el aprovisionamiento de una instancia de servicio de Internet Access, la conexión Fabric asociada se desaprovisiona automáticamente.
Equinix Internet Access con Fabric está disponible para las organizaciones incorporadas a Equinix Identity and Access Management, y la cuenta utilizada para enviar solicitudes de API debe tener la función Equinix Fabric Manager.
Si su organización aún no se ha incorporado a Equinix Identity and Access Management, puede solicitar Equinix Internet Access con puerto dedicado.
Requisitos previos
-
Autenticar - Envíe sus credenciales de usuario, ID de cliente y secreto de cliente para OAuth2 autenticación. Consulte API Authentication para obtener instrucciones sobre cómo llamar a la API OAuth para validar y autenticar sus credenciales.
-
Determine la información del lado A. Para obtener la información de su puerto Fabric, envíe una solicitud
GETal punto final/fabric/v4/ports. Necesita el UUID(s) del puerto, el tipo de protocolo de enlace, (DOT1Q o QINQ). Si está creando una conexión redundante, elija un puertoPRIMARIOy un puertoSECUNDARIO. Necesitará esta información para la solicitud de creación de conexión. -
Determine la información del lado Z. El perfil del servicio Internet Access es del tipo
IA_PROFILEy su ID es32d81829-0bf8-45d5-84e2-7289a553dbb6. Para determinar la ubicación metropolitana de su servicio, envíe una solicitudGETal punto final/internetAccess/v2/ibxspara encontrar las ubicaciones en las que está disponible Internet Access. Necesitará esta información para solicitar su servicio de Internet Access.
Creación de la conexión Internet Access
Para crear la conexión para su servicio Internet Access, envíe una solicitud POST al punto final /fabric/v4/connections. El tipo de conexión es IA_VC.
Proporcione la información de su puerto en el objeto aSide, incluyendo:
accessPoint.typeasCOLO- Proporcione el UUID de su puerto a
port.uuid.
Si se está conectando desde un puerto Dot1q:
- linkProtocol.type como `DOT1Q`.
- Proporcione el ID de la VLAN a `linkProtocol.vlanTag`.
Si se conecta desde un puerto QinQ:
- linkProtocol.type como `QINQ`.
- Proporcione el ID de la etiqueta interna a `linkProtocol.vlanCTag`.
- Proporcione el ID de etiqueta exterior a `linkProtocol.vlanSTag`.
- Si está creando conexiones redundantes, realice dos solicitudes.
Una solicitud debe tener su puerto primario y
redundancy.priorityconfigurados comoPRIMARY, y la otra su puerto secundario yredundancy.priorityconfigurados comoSECONDARYy debe especificarredundancy.groupcomo UUID de la primera conexión.
Proporcione el perfil de servicio Internet Access en el objeto zSide, incluyendo:
accessPoint.typeasSP.profile.typeasIA_PROFILEprofile.uuidas32d81829-0bf8-45d5-84e2-7289a553dbb6metroCodeas the two letter metro code of the Internet Access metro you are connecting to.
Ejemplos de solicitudes 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": "COLO",
"port": {
"uuid": "<your_port_uuid>"
},
"linkProtocol": {
"type": "DOT1Q",
"vlanTag": <vlan_id>
}
}
},
"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": "COLO",
"port": {
"uuid": "<your_port_uuid>"
},
"linkProtocol": {
"type": "DOT1Q",
"vlanTag": <vlan_id>
}
}
},
"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 respuesta contiene un uuid que es el ID de conexión de su servicio de Internet Access. Debe disponer de este UUID de conexión para solicitar el servicio Internet Access.
Solicitud de servicio con bloque IP asignado por el proveedor
Para solicitar su servicio de Internet Access, envíe una solicitud POST al punto final /internetAccess/v2/services.
Por redundancia, si ha creado dos conexiones para su servicio, establezca type en DUAL y proporcione ambos ID de conexión a la matriz connections.
Si ha creado una única conexión para su servicio, establezca type en SINGLE y proporcione el ID de conexión a la matriz connections.
En el objeto routingProtocol especifique:
- Su
routingProtocol.typeentreSTATIC,DIRECT, oBGP. - Cuando solicite su servicio utilizando bloques IP propiedad de Equinix (PA), establezca el valor
ipBlock.prefixLengthen el tamaño del bloque IP que necesite.
Cuando solicite una instancia de servicio EIA ubicada en uno de nuestros centros de datos IBX de la región APAC, asegúrese de añadir la información addressingPlans y questions al objeto ipBlock en caso de PA IPv4 Block. Consulte la referencia API para obtener más información.
Enrutamiento estático
Puede encontrar documentación sobre el enrutamiento estático aquí.
Ejemplos de solicitudes 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>"
}
}
}'
Dual 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": "DUAL",
"connections": [
"<connection_uuid1>", "<connection_uuid2>"
],
"routingProtocol": {
"type": "STATIC",
"ipv4": {
"customerRoutes": [
{
"ipBlock": {
"prefixLength": <size_of_ipv4_ip_block>
}
}
]
},
"ipv6": {
"customerRoutes": [
{
"ipBlock": {
"prefixLength": <size_of_ipv6_ip_block>
}
}
]
}
},
"order": {
"purchaseOrder": {
"number": "<purchase_order_number>"
}
}
}'
Enrutamiento directo
Puede encontrar documentación sobre el enrutamiento directo aquí.
Ejemplos de solicitudes 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>"
}
}
}'
Dual 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": "DUAL",
"connections": [
"<connection_uuid1>", "<connection_uuid2>"
],
"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>"
}
}
}'
Enrutamiento BGP
Especifique los detalles de su configuración BGP en el objeto routingProtocol:
- qué rutas quiere que se anuncien a Internet,
FULL,DEFAULT,FULL_DEFAULT, oPARTIALenroutingProtocol.exportPolicy. - proporcione el rango ASN de cliente BITS_16 para ASN de 16 bits o BITS_32 para ASN de 32 bits en
routingProtocol.customerAsnRange. - proporcione bgpAuthKey en
routingProtocol.bgpAuthKeysi es necesario.
Encontrará documentación sobre el enrutamiento BGP aquí.
Ejemplos de solicitudes 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": "My Internet Access Service",
"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>"
}
}
}'
Solicitud de servicio con bloque de IP independiente del proveedor
Cuando solicite su servicio utilizando su propio bloque IP (PI), especifíquelo en customerRoutes.prefix.
Enrutamiento estático
Ejemplos de solicitudes 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>"
}
}
}'
Dual 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": "DUAL",
"connections": [
"<connection_uuid1>", "<connection_uuid2>"
],
"routingProtocol": {
"type": "STATIC",
"ipv4": {
"customerRoutes": [
{
"prefix": "<your_ipv4_ip_block>"
}
]
},
"ipv6": {
"customerRoutes": [
{
"prefix": "<your_ipv6_ip_block>"
}
]
}
},
"order": {
"purchaseOrder": {
"number": "<purchase_order_number>"
}
}
}'
Enrutamiento directo
Especifique qué IPs de su bloque de IPs pueden utilizarse con fines de peering en el objeto peering. Para el tipo de servicio Single, proporcione sólo una dirección IP en la matriz equinixPeerIps. Para el tipo de servicio Dual, proporcione dos direcciones IP en la matriz equinixPeerIps y la dirección IP VRRP en el campo equinixVRRPIp.
Ejemplos de solicitudes 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>"
}
}
}'
Dual 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": "DUAL",
"connections": [
"<connection_uuid1>", "<connection_uuid2>"
],
"routingProtocol": {
"type": "DIRECT",
"ipv4": {
"customerRoutes": [
{
"prefix": "<your_ipv4_ip_block>"
}
],
"peerings": [
{
"equinixPeerIps": [
"<peering_ip_address>",
"<peering_ip_address>"
],
"equinixVRRPIp": "<virtual_router_group_ip_address>"
}
]
},
"ipv6": {
"customerRoutes": [
{
"prefix": "<your_ipv6_ip_block>"
}
],
"peerings": [
{
"equinixPeerIps": [
"<peering_ip_address>",
"<peering_ip_address>"
],
"equinixVRRPIp": "<virtual_router_group_ip_address>"
}
]
}
},
"order": {
"purchaseOrder": {
"number": "<purchase_order_number>"
}
}
}'
Enrutamiento BGP
Ejemplos de solicitudes 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>"
}
}
}'
Servicio de pedidos con bloques IP PA y PI
Cuando solicite su servicio con bloques IP tanto asignados por el proveedor (PA) como independientes del proveedor (PI) especifique dos o más objetos de ruta de cliente con los campos adecuados:
ipBlock.prefixLengthin case of Equinix provided IP Block (PA).customerRoutes.prefixin case of using your own IP Block (PI).
Los bloques IP múltiples sólo pueden solicitarse con protocolo de enrutamiento estático y BGP.
Ejemplos de solicitudes 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>"
}
}
}'
Seguimiento de sus solicitudes
Para ver el estado de su solicitud de creación de conexión, envíe una solicitud GET al punto final fabric/v4/connections/{connectionId}.
Para ver los detalles de su servicio de Internet Access, utilice el punto final internetAccess/v2/services/{serviceId}.
Si se produce algún problema con el aprovisionamiento de su instancia de servicio de Internet Access, la conexión asociada se desaprovisiona automáticamente.