Mide la accesibilidad

En esta página, se describe cómo las pruebas de conectividad miden la accesibilidad. También se explica cómo funcionan el análisis de configuración y el análisis del plano de datos en vivo.

¿Qué es la accesibilidad?

Se puede acceder a un recurso desde otro extremo si las configuraciones de red, como los firewalls y las rutas, permiten que el tráfico pase de uno a otro. Por ejemplo, si la configuración de red debería permitir que VM1 envíe paquetes a VM2, se dice que VM2 es accesible desde VM1.

Ten en cuenta los siguientes aspectos sobre cómo las pruebas de conectividad miden la accesibilidad:

  • Las pruebas de conectividad miden la accesibilidad de una fuente en particular a un destino en particular. El hecho de que la VM1 pueda alcanzar la VM2 no significa necesariamente que la VM3 pueda alcanzar la VM2.
  • Las pruebas de conectividad miden la accesibilidad unidireccional. El hecho de que VM1 pueda abrir una conexión a VM2 no significa que VM2 pueda abrir una conexión con VM1. Las reglas de firewall pueden permitir el tráfico en una dirección, pero no en la otra.
  • Las pruebas de conectividad miden la accesibilidad para un protocolo y un puerto de destino en particular. El hecho de que VM1 pueda llegar a VM2 en tcp:443 no significa que pueda llegar a ella en tcp:80.
  • Las pruebas de conectividad solo prueban la configuración de la red de VPC de Google Cloud que pueden afectar la entrega de paquetes del origen al destino. No verifica si un servidor válido se ejecuta en el destino, si las reglas de firewall del sistema operativo podrían bloquear el tráfico o si el software de seguridad bloquea un paquete que lleva una carga útil de virus.

El concepto de Accesibilidad que se originó en la teoría de gráficos De forma conceptual, el gráfico de accesibilidad completo de una red contiene todos los extremos como nodos y los bordes direccionales que indican la accesibilidad desde los nodos de origen hasta los nodos de destino.

El análisis de accesibilidad es un término más genérico que describe un conjunto de análisis que se puede realizar para determinar la accesibilidad de la red. Uno de los casos de uso de un análisis de accesibilidad es una prueba de conectividad. En este caso, la conectividad hace referencia al estado de las conexiones de red.

Para cada paso de la ruta de reenvío de la red, un análisis de accesibilidad prueba y proporciona resultados para la configuración de red subyacente. Por ejemplo, las pruebas de conectividad analizan las reglas y rutas de firewall de Google Cloud que se aplican a un paquete de prueba simulado.

Cómo funcionan las pruebas de conectividad

Estas pruebas de conectividad incluyen dos componentes principales: un análisis de configuración y un análisis del plano de datos en vivo. En esta sección, se describe cómo funcionan estos dos tipos de análisis.

Cómo funciona el análisis de configuración

En esta sección, se describe cómo funcionan las pruebas de conectividad y sus componentes.

Las pruebas de conectividad realizan un análisis de accesibilidad que evalúa los recursos de Google Cloud en la ruta de prueba en comparación con un modelo de configuración ideal. Se aumenta con la función de análisis del plano de datos en vivo, que envía paquetes con el objetivo de verificar el estado del plano de datos y proporcionar información de referencia para los parámetros de configuración admitidos. Para obtener detalles sobre cómo funciona la verificación dinámica, consulta Cómo funciona el análisis del plano de datos en vivo.

Como administrador de red, tiene el control de muchas opciones de configuración que podrían afectar el resultado del análisis, aunque se aplican algunas excepciones. Por ejemplo, no tienes control sobre las redes de VPC que alojan servicios administrados por Google, como las instancias de Cloud SQL. Además, debido a las restricciones de permisos, es posible que no tengas control sobre las reglas de políticas de firewall jerárquicas que afectan a tu red.

Cuando ejecutas una prueba de conectividad, ingresa un conjunto específico de parámetros y recibe resultados formateados en forma de seguimiento de red, o consulta. Una prueba de conectividad genera más de un seguimiento si una prueba tiene varias rutas posibles en la red; (por ejemplo, cuando el extremo de destino es un balanceador de cargas de Google Cloud con múltiples backends).

  • Una coincidencia significa que las pruebas de conectividad encuentran una configuración de Google Cloud que permite que el paquete simulado continúe a través de la ruta de prueba.
  • Sin coincidencia significa que las pruebas de conectividad no pueden encontrar una coincidencia. Por lo tanto, la configuración no existe.
  • Una coincidencia denegada significa que las pruebas de conectividad encuentran una configuración de Google Cloud en la que se debe descartar el paquete de prueba simulado.

Componentes de las pruebas de conectividad

Una prueba de conectividad es el componente de nivel superior que contiene todos los demás subcomponentes de prueba necesarios para el análisis de configuración. Estos componentes incluyen lo siguiente:

  • Extremos de origen y destino
  • Detalles de accesibilidad para la prueba y sus seguimientos, incluido un resultado de accesibilidad general determinado por el análisis de configuración
  • Uno o más seguimientos que contienen uno o más pasos
  • Un estado para cada paso

Cada prueba tiene un nombre único y cada paso tiene un estado y metadatos Info asociados. Por ejemplo, si un paso verifica una ruta, los metadatos de RouteInfo se incluyen en ese paso.

En el siguiente diagrama, se muestra una prueba de una instancia de VM de Compute Engine a otra. Para obtener descripciones de los componentes de prueba, consulta las siguientes secciones.

Máquina de estado para un seguimiento de VM a VM
Máquina de estado para un seguimiento de VM a VM

Extremos de origen y destino

El análisis de configuración de las pruebas de conectividad admite un encabezado de paquete de 5 tuplas sin el puerto de origen. Esto se debe a que el puerto de origen no se utiliza para validar recursos en las opciones de configuración de red de Google Cloud. Por lo tanto, no necesitas proporcionarlo cuando ejecutas pruebas.

El encabezado del paquete contiene los siguientes componentes:

  • Un protocolo de red
  • Un extremo de origen, que consiste en una de las siguientes opciones:
    • Un nombre de instancia de VM
    • Una dirección IP de origen
    • Un servicio de origen de App Engine
    • Un entorno de Cloud Function (1a gen.)
    • Un servicio de Cloud Run
    • Un nombre de instancia de Cloud SQL
    • Un nombre de clúster para un plano de control de GKE
  • Un extremo de destino que consiste en una de las siguientes opciones y un número de puerto:
    • Un nombre de instancia de VM
    • Una dirección IP de destino
    • Un nombre de instancia de Cloud SQL
    • Un nombre de clúster para un plano de control de GKE
    • Un extremo de Private Service Connect

También puedes especificar un tipo de red de Google Cloud o que no sea de Google Cloud, o una combinación de un tipo de red y una dirección IP o nombre de instancia de VM para identificar de forma exclusiva una ubicación de red.

Los siguientes protocolos de red son compatibles con las VM, las direcciones IP y los servicios administrados por Google:

  • TCP
  • UDP
  • ICMP
  • ESP
  • AH
  • SCTP
  • IPIP

Los siguientes protocolos de red son compatibles con los conectores de Acceso a VPC sin servidores:

  • TCP
  • UDP

Se admiten puertos de destino para los protocolos TCP o UDP. Si no especificas un puerto, la configuración predeterminada es el puerto 80.

Seguimientos, pasos y estados

El análisis de configuración contiene uno o más seguimientos. Cada seguimiento representa una ruta única de reenvío de paquetes simulados en una prueba.

  • Cada seguimiento contiene múltiples pasos ordenados.
  • Cada paso contiene un state relacionado con la configuración de Google Cloud que las pruebas de conectividad verifican para ese paso.
  • Los estados se clasifican en estados no finales y finales.
Estados no finales

Los estados no finales representan una verificación de configuración para cada recurso de Google Cloud en la ruta de prueba, como una instancia de VM, un extremo, una regla de firewall de VPC, una ruta o un balanceador de cargas de Google Cloud.

Existen cuatro estados no finales:

  • Initial
  • Comprobación de la configuración
  • Reenvío
  • Transición

Para obtener más información, consulta Estados de los análisis de configuración.

Estado final

Cada seguimiento debe terminar con un estado final, que es el último paso del seguimiento.

Existen cuatro estados finales posibles:

  • Drop
  • Abort
  • Forward
  • Deliver

Cada estado final tiene un motivo asociado. Si deseas obtener más información, consulta los detalles para cada estado final.

Resultado general de accesibilidad

El análisis de configuración también proporciona un resultado de accesibilidad general que puede tener uno de cuatro valores: Reachable, Unreachable, Ambiguous o Undetermined.

Conocer el resultado general de accesibilidad puede ser útil para configurar la supervisión o la automatización.

Para obtener más información, consulta Resultado de accesibilidad general.

Verificación de Falsificación de identidad

Las pruebas de conectividad realizan una verificación de falsificación de identidad cuando un paquete simulado desde o hacia una instancia de VM usa una dirección IP que no es propiedad de esa instancia. Las direcciones IP que pertenecen a una VM incluyen todas las direcciones IP internas de la VM y las direcciones IP secundarias.

Si la dirección es una dirección que parece originarse en el tráfico externo, también llamada dirección extranjera, entonces la dirección IP no pasa la verificación de falsificación de identidad.

Metadatos

Cada estado puede tener metadatos asociados con él en la forma de un campo Info. Por ejemplo, InstanceInfo contiene detalles para una instancia de VM, incluidos el nombre y la dirección IP.

El análisis de configuración proporciona metadatos para la prueba en sí y metadatos para cada paso de una prueba.

Cómo funciona el análisis de plano de datos en vivo

El mecanismo de sondeo para el análisis del plano de datos en vivo no involucra el SO invitado y es completamente transparente para el usuario. Los sondeos se insertan en nombre del extremo de origen en la red y se descartan antes de su entrega al extremo de destino. Además, se excluyen de la facturación de red normal, las métricas de telemetría y los registros de flujo.

¿Qué sigue?