Estados del análisis de configuración

Un análisis de configuración de prueba de conectividad pasa por una serie de estados de prueba a medida que verifica la configuración de cada recurso de Google Cloud en una ruta de red de una fuente designada a un destino designado. Usa esta referencia para interpretar estos estados.

Para obtener más información sobre las pruebas de conectividad, incluidos los detalles sobre el análisis del plano de datos en vivo, consulta la descripción general.

Estados de prueba

Un análisis de configuración de prueba de conectividad proporciona datos para los siguientes estados de prueba en el orden indicado:

  • Estado inicial
  • Estado de verificación de la configuración
  • Estado de reenvío
  • Estado de transición
  • Estado especial
  • Estado final
  • Resultado general de accesibilidad

Algunos de estos estados aparecen en cada seguimiento, mientras que otros solo aparecen al probar la configuración de un recurso específico de Google Cloud o al realizar una determinada tarea.

El estado final y el resultado de accesibilidad general proporcionan el resultado de prueba más importante.

Además, el resultado de la prueba puede incluir metadatos para los recursos de Google Cloud que están asociados a uno o más de los estados. Por ejemplo, la información sobre el nombre de una instancia de máquina virtual (VM) y la dirección IP.

Cómo evalúa el análisis de configuración la accesibilidad

El análisis de configuración simula un paquete de prueba a través de una ruta de red mediante la verificación de las configuraciones para los recursos de Google Cloud en esa ruta de acceso. Algunos ejemplos de configuraciones de red no válidas son una regla de reenvío de Cloud Load Balancing que no tiene backends o una ruta de red que no existe.

Durante el estado de verificación de la configuración, las pruebas de conectividad recopilan información sobre las rutas de red, como las rutas configuradas por el usuario, las rutas dinámicas basadas en anuncios de BGP o las rutas basadas en políticas. Luego, el análisis de configuración elige una ruta de red según la aplicabilidad y el orden.

En el estado de verificación de la configuración, verified significa que las pruebas de conectividad confirman que una configuración para el recurso de Google Cloud probado es válida. La configuración permite que el paquete de prueba simulado continúe por la ruta de red que se está probando.

Para las reglas de firewall de entrada y salida, verified significa que el análisis de configuración confirma que la regla de firewall es válida. La regla de firewall permite que se apruebe el paquete de prueba simulado.

Si las pruebas de conectividad determinan que una configuración no es válida, el paquete tendrá el estado final Drop.

Resultado general de accesibilidad

El análisis de configuración proporciona un resumen general del estado de accesibilidad, también conocido como resultado. Los resultados pueden tener uno de cuatro valores: Reachable, Unreachable, Ambiguous y Undetermined.

Tabla de valores

En la siguiente tabla, se describe el valor de cada tipo de resultado general de accesibilidad.

Resultado general de accesibilidad Descripción
Reachable Hay dos situaciones posibles. En ambos casos, las pruebas de conectividad no detectan ningún problema de configuración. Por lo tanto, ambas situaciones se consideran Reachable.
  • En la primera situación, se espera que el paquete proveniente de la fuente llegue a su destino. El estado final de uno o más seguimientos es Deliver.
  • En la segunda situación, el análisis se completa parcialmente según las configuraciones en las que el usuario tiene permiso. El estado final de uno o más seguimientos es Forward.
Unreachable Se espera que el paquete que se origina en el origen se descarte antes de que llegue a su destino. El estado final de todos los seguimientos es Drop.
Ambiguous

Este resultado se muestra si los extremos de origen y destino no identifican de forma exclusiva la ubicación de la prueba en la red y el resultado de accesibilidad contiene múltiples seguimientos con estados mixtos Reachable y Unreachable.

En este caso, los estados finales entre múltiples seguimientos muestran diferentes estados finales. El resultado Ambiguous no se aplica a las pruebas que contienen un solo seguimiento.

Undetermined

No se pudo determinar la accesibilidad. El estado final de un seguimiento es Forward o Abort. Si hay varios seguimientos, el estado final es una combinación de Forward o Abort.

No se puede determinar la accesibilidad de la fuente al destino por uno de los siguientes motivos:

  • El análisis se anuló debido a un error de permiso. El usuario no tiene permiso de lectura en los proyectos enumerados en la prueba.
  • El análisis se anuló debido a errores internos.

Seguimientos múltiples

Cada análisis de configuración puede contener varios seguimientos, y es posible que el estado final de estos no sea el mismo. Por ejemplo, un paquete para el VIP de un balanceador de cargas de Google Cloud podría tener n si hay n instancias de VM de backend configuradas para el balanceador de cargas. Es posible que estos seguimientos n no tengan los mismos estados finales.

Debido a que un análisis puede producir varios seguimientos posibles, se cumple lo siguiente:

  • Si solo hay un resultado de seguimiento, el resultado de accesibilidad general es el mismo que el estado final del seguimiento.
  • Si hay varios resultados de seguimiento, el resultado de accesibilidad general se calcula en función de la distribución de los estados finales contenidos en todos los seguimientos.

Metadatos de resultados

Además del resultado de accesibilidad general para seguimientos, cada resultado de prueba contiene los siguientes metadatos:

  • La hora en la que se verificó el estado de la prueba
  • Los detalles de una falla o cancelación de una prueba
  • Detalles de seguimiento para cada seguimiento.

Los detalles de una falla o cancelación de la prueba se muestran como códigos y mensajes en el resultado general de accesibilidad. Por ejemplo, una prueba con un estado final de Abort podría mostrar un mensaje de error como Failed to pull initial config. An internal error occurred..

Estado inicial

Durante el estado inicial, el análisis de configuración simula comenzar desde un extremo de la red.

Mensaje Descripción
START_FROM_INSTANCE El paquete se originó de una instancia de Compute Engine. Los metadatos InstanceInfo se propagaron mediante pruebas de conectividad.
START_FROM_INTERNET El paquete se originó en Internet. Los metadatos EndpointInfo se propagaron mediante pruebas de conectividad.
START_FROM_PRIVATE_NETWORK El paquete se originó en una red de VPC o en una red local con una dirección IP de origen interna. Si el origen era una red de VPC visible para el usuario, los metadatos NetworkInfo se propagaron con detalles de red mediante pruebas de conectividad.
START_FROM_CLOUD_FUNCTION El paquete se originó de una Cloud Function. Las pruebas de conectividad propagaron los metadatos de CloudFunctionInfo.
START_FROM_CLOUD_RUN_REVISION El paquete se originó de una revisión de un servicio de Cloud Run. Las pruebas de conectividad propagaron los metadatos de CloudRunRevisionInfo.
START_FROM_APP_ENGINE_VERSION El paquete se originó de una versión de un servicio del entorno estándar de App Engine. Las pruebas de conectividad propagaron los metadatos de AppEngineVersionInfo.

Estado final

Hay cuatro estados finales: Drop, Abort, Forward y Deliver. Cada una de las siguientes secciones tiene una tabla que contiene los mensajes y las descripciones de cada estado.

Soltar

Las pruebas de conectividad abandonaron el paquete de prueba simulada debido a que el objetivo de prueba era inaccesible para los siguientes motivos.

Mensaje Descripción
UNKNOWN_EXTERNAL_ADDRESS No se pudo resolver la dirección externa de destino en un destino conocido.
FOREIGN_IP_DISALLOWED La instancia de VM solo puede enviar o recibir un paquete con una dirección IP externa si ip_forward está habilitado. En otras palabras, la dirección IP externa falla en una verificación de falsificación identidad.
FIREWALL_RULE

Se descartó debido a una regla de firewall, a menos que se haya permitido por el seguimiento de conexión.

Las pruebas de conectividad pueden denegar un paquete de prueba debido a que el paquete coincide con una regla de firewall de bloqueo. Sin embargo, el plano de datos real puede permitir el paquete a causa del seguimiento de conexiones de la regla de firewall. El seguimiento de conexiones permite que los paquetes de una conexión existente vuelvan a pesar de la regla de firewall.

NO_ROUTE Se descartó debido a la ausencia de rutas.
ROUTE_BLACKHOLE Se descartó porque el próximo salto de la ruta coincidente no existe.
ROUTE_WRONG_NETWORK El paquete se envió a la red incorrecta (no prevista), como se muestra en Detecta configuraciones no válidas o inconsistentes.
PRIVATE_TRAFFIC_TO_INTERNET Se envió un paquete con una dirección de destino interna a una puerta de enlace de Internet.
PRIVATE_GOOGLE_ACCESS_DISALLOWED Una instancia de VM con solo una dirección IP interna intentó acceder a una API de Google o al Servicio de Google, pero el Acceso privado a Google no estaba habilitado.
NO_EXTERNAL_ADDRESS Una instancia de VM con solo una dirección IP interna intentó acceder a hosts externos a través de una ruta cuyo próximo salto es la puerta de enlace de Internet predeterminada. Esto es esperable cuando Cloud NAT no está habilitado en la subred o cuando no hay otra ruta predeterminada cuyo siguiente salto sea de un tipo diferente (como una VM de proxy).
UNKNOWN_INTERNAL_ADDRESS No se pudo resolver una dirección interna de destino en un destino conocido.
FORWARDING_RULE_MISMATCH Los puertos y el protocolo de una regla de reenvío no coincidían con el encabezado del paquete, o el paquete no se origina en la misma región que el balanceador de cargas regional o no se dirige a ella.
FORWARDING_RULE_NO_INSTANCES Una regla de reenvío no tiene backends configurados.
FIREWALL_BLOCKING_LOAD_BALANCER_BACKEND_HEALTH_CHECK

Las reglas de firewall de VPC bloquearon los sondeos de verificación de estado en los backends y causaron que los backends no estuvieran disponibles para el tráfico desde el balanceador de cargas.

Como parte de la secuencia de prueba para Cloud Load Balancing, el análisis de configuración verifica que se hayan establecido las reglas de firewall de VPC existentes a fin de permitir que se envíe un paquete de sondeo de verificación de estado a los backends de Cloud Load Balancing. Esta verificación de configuración da como resultado un healthCheckFirewallState. Para obtener detalles, consulta Reglas de firewall de verificación de estado.

INSTANCE_NOT_RUNNING Se envió un paquete desde o hacia una instancia de VM que no estaba en estado de ejecución.
TRAFFIC_TYPE_BLOCKED El tipo de tráfico se bloqueó y el usuario no pudo configurar una regla de firewall para habilitarlo. Para obtener más detalles, consulta Tráfico siempre bloqueado.
GKE_MASTER_UNAUTHORIZED_ACCESS No se autorizó el acceso al extremo del plano de control de Google Kubernetes Engine. Si deseas obtener detalles, consulta Acceso a los extremos del clúster.
DROPPED_INSIDE_GKE_SERVICE Se descartó un paquete en el servicio de Google Kubernetes Engine.
CLOUD_SQL_INSTANCE_UNAUTHORIZED_ACCESS No se autorizó el acceso al extremo de la instancia de Cloud SQL. Para obtener más información, consulta Autoriza con redes autorizadas.
DROPPED_INSIDE_CLOUD_SQL_SERVICE Se descartó un paquete en el servicio de Cloud SQL.
GOOGLE_MANAGED_SERVICE_NO_PEERING Se descartó un paquete porque no hay intercambio de tráfico entre la red de origen y la red de servicios administrados por Google.
CLOUD_SQL_INSTANCE_NO_IP_ADDRESS Se descartó un paquete porque la instancia de Cloud SQL no tiene una dirección IP privada ni pública.
PSC_CONNECTION_NOT_ACCEPTED Se descartó un paquete porque no se acepta la conexión al servicio publicado que usa Private Service Connect.
CLOUD_FUNCTION_NOT_ACTIVE Se descartó un paquete porque la Cloud Function no está activa.
VPC_CONNECTOR_NOT_SET Se descartó un paquete porque el servicio del entorno estándar de App Engine, la Cloud Function o la revisión de Cloud Run no tienen configurado un conector de Acceso a VPC sin servidores.
VPC_CONNECTOR_NOT_RUNNING Se descartó un paquete porque el conector de Acceso a VPC sin servidores no está en ejecución.
CLOUD_RUN_REVISION_NOT_READY Se descartó un paquete porque la revisión de Cloud Run no está lista y no puede entregar tráfico.

Anular

El análisis de configuración se detuvo debido a la falta de información básica, como la falta de acceso a la configuración de red.

Este estado generalmente ocurre cuando las pruebas de conectividad no tienen los permisos correctos para obtener la configuración del proyecto host de un proyecto de servicio, como se muestra en la siguiente tabla.

Mensaje Descripción
UNKNOWN_NETWORK

Se anuló debido a una red desconocida. El análisis no puede continuar porque, en una red de VPC compartida, el usuario que ejecuta la prueba no tiene acceso a las configuraciones de red del proyecto host, incluidas las reglas de firewall y las rutas.

Ejecutar una prueba de conectividad requiere que el usuario que ejecuta la prueba pueda leer los parámetros de configuración para recursos, como las rutas del proyecto host. Esto sucede porque los recursos de red se asignan en el proyecto host, pero los recursos reales existen en el proyecto de servicio.

UNKNOWN_IP

El análisis se anuló porque no se conocen las direcciones IP que se requieren para realizarlo. Esto se debe a una entrada incorrecta del usuario o a que el análisis de configuración no pudo determinar un extremo válido basado en los parámetros de entrada proporcionados.

En una red de VPC compartida, el usuario que ejecuta la prueba no tiene acceso a las configuraciones de red del proyecto host. Este acceso es necesario para probar las direcciones IP del proyecto de servicio.

UNKNOWN_PROJECT El análisis se anuló porque no se encontró la información del proyecto a partir de la entrada de la prueba de conectividad. Esto se debe a una entrada incorrecta del usuario o, en función de los parámetros de entrada proporcionados, el análisis no pudo determinar un proyecto válido.
PERMISSION_DENIED El análisis se anuló debido a que el usuario no tenía el permiso para acceder a todas las configuraciones de red necesarias para ejecutar la prueba o a algunas de ellas.
NO_SOURCE_LOCATION El análisis se anuló porque no se pudo derivar un extremo de origen válido de la entrada de prueba. Esto se debe a una entrada incorrecta del usuario o, en función de los parámetros de entrada proporcionados, el análisis no pudo determinar un extremo de origen válido.
INVALID_ARGUMENT

El análisis se anuló porque el extremo de origen o destino especificados en la entrada de prueba no eran válidos. Entre los posibles motivos de este mensaje se incluyen los siguientes:

  • Una dirección IP con formato incorrecto
  • Una instancia de VM o un URI de red inexistente
  • Una dirección IP que no está en el rango del URI de red especificado
  • Una instancia de VM que no posee la interfaz de red en la red especificada
NO_EXTERNAL_IP El análisis se anuló porque se envió el tráfico desde una dirección IP pública a una instancia de VM que no tenía una dirección IP externa.
UNINTENDED_DESTINATION El análisis se canceló porque ninguno de los seguimientos pudo coincidir con la información de destino especificada en la entrada de prueba.
TRACE_TOO_LONG El análisis se anuló porque la cantidad de pasos del el seguimiento superó un límite determinado. Este problema puede deberse a un bucle de enrutamiento.
INTERNAL_ERROR Se anuló debido a un error interno del servidor.
SOURCE_ENDPOINT_NOT_FOUND Se anuló porque no se pudo encontrar el extremo de origen.
MISMATCHED_SOURCE_NETWORK Se anuló porque la red de origen no coincide con el extremo de origen.
DESTINATION_ENDPOINT_NOT_FOUND Se anuló porque no se pudo encontrar el extremo de destino.
MISMATCHED_DESTINATION_NETWORK Se anuló porque la red de destino no coincide con el extremo de destino.

Reenviar

El análisis se detuvo en un extremo específico y no pudo continuar:

  • El análisis se completa parcialmente en función de las configuraciones en las que el usuario tiene permiso.
  • El paquete de prueba se reenvió a una red con una configuración desconocida.
  • El destino de prueba no se descartó según la configuración conocida, y el paquete de prueba se reenvió a una red en la que las pruebas de conectividad no tienen visibilidad.
Mensaje Reenviado
PEERING_VPC A una red de VPC de intercambio de tráfico
VPN_GATEWAY A una puerta de enlace de Cloud VPN
INTERCONNECT A una conexión de Cloud Interconnect
GKE_MASTER A un plano de control de GKE
IMPORTED_CUSTOM_ROUTE_NEXT_HOP Reenviado al siguiente salto de una ruta personalizada importada de una red de VPC con intercambio de tráfico.
CLOUD_SQL_INSTANCE A una instancia de Cloud SQL

Entrega

El análisis pudo alcanzar el objetivo y entregar el paquete de prueba simulado.

Un estado final de Deliver no garantiza que el tráfico pueda pasar a través del plano de datos. El propósito del análisis es validar los problemas de configuración que podrían causar una disminución del tráfico.

Mensaje Objetivo
INSTANCE Una instancia de VM de Compute Engine
INTERNET La Internet
GOOGLE_API Una API de Google
GKE_MASTER Un plano de control de GKE
CLOUD_SQL_INSTANCE Una instancia de Cloud SQL
PSC_GOOGLE_API Todas las APIs y los servicios de Google que usan Private Service Connect
PSC_VPC_SC Los Controles del servicio de VPC que usan Private Service Connect
PSC_PUBLISHED_SERVICE Un servicio publicado que usa Private Service Connect

Metadata

El análisis de configuración muestra los siguientes metadatos para el estado final.

Nombre de metadatos Descripción
AbortInfo Causa de un estado final de Abort y el URI del recurso que causó ese estado.
DropInfo Causa de un estado final de Drop y el URI del recurso que causó ese estado.
ForwardInfo El tipo de destino y el URI de recurso de destino al que se reenvió un paquete de prueba (estado final Forward).

Otros estados

Antes de que el paquete de prueba alcance uno de los estados finales, pasa por los siguientes estados intermedios: estado de verificación de configuración, estado de reenvío, estado de transición y estado especial.

Estado de verificación de la configuración

Durante el estado de verificación de la configuración, las pruebas de conectividad verifican la configuración de los recursos de Google Cloud en la ruta de red simulada, verifican que la configuración del recurso sea válida y verifica que la configuración permita que el paquete de prueba simulado continúe por la ruta de la red.

Si es necesario, el análisis de configuración realiza una verificación de identidad.

Mensaje Descripción
APPLY_INGRESS_FIREWALL_RULE Regla de firewall de entrada verificada.
APPLY_EGRESS_FIREWALL_RULE Regla de firewall de salida verificada.
APPLY_ROUTE Ruta verificada.
APPLY_FORWARDING_RULE Regla de reenvío coincidente.
SPOOFING_APPROVED El paquete fue enviado o recibido bajo una dirección IP extranjera, y permitido. Para obtener más detalles, consulta Verificación de falsificación de identidad.

Estado de reenvío

Durante el estado de reenvío, las pruebas de conectividad simulan un paquete que llega a un recurso intermedio de Google Cloud en la ruta de prueba (por ejemplo, un paquete que llega a una puerta de enlace de Cloud VPN o un balanceador de cargas de Google Cloud).

Mensaje Descripción
ARRIVE_AT_INSTANCE Llegó a una instancia de VM de Compute Engine.
ARRIVE_AT_INTERNAL_LOAD_BALANCER Llegó a un balanceador de carga de Google Cloud que utiliza una dirección IP privada como VIP.
ARRIVE_AT_EXTERNAL_LOAD_BALANCER Llegó a la dirección IP pública de un balanceador de carga de Google Cloud.
ARRIVE_AT_VPN_GATEWAY Llegó a una puerta de enlace de Cloud VPN.
ARRIVE_AT_VPN_TUNNEL Llegó a un túnel de Cloud VPN.
ARRIVE_AT_VPC_CONNECTOR Llegó a un conector de Acceso a VPC sin servidores.

Estado de transición

Durante el estado de transición, las pruebas de conectividad verifican las configuraciones simuladas en las que se cambia un paquete (por ejemplo, donde Cloud NAT traduce un encabezado de paquete o cuando un proxy de balanceo de cargas de Google Cloud finaliza y reinicia una sesión de TCP entrante en instancias de VM).

Mensaje Descripción
NAT Se tradujo el encabezado del paquete.
PROXY_CONNECTION Se finalizó la conexión original y se inició una nueva conexión con proxy.

Estado especial

Con este estado, un visualizador de pruebas no tiene permiso para ver uno o más recursos de Google Cloud. Para obtener más información, consulta Permisos de prueba.

Nombre de metadatos Descripción
VIEWER_PERMISSION_MISSING El visualizador del resultado de la prueba no tiene permiso para ver la configuración del recurso de Google Cloud en este paso.

Metadatos de recursos

Las pruebas de conectividad muestran los siguientes metadatos para las configuraciones de recursos de Google Cloud que comprueba.

Nombre de metadatos Descripción
EndpointInfo Extremos utilizados para la prueba. Las pruebas de conectividad obtienen EndpointInfo de los extremos de origen y destino y validan la información mediante el modelo del plano de datos.
FirewallInfo Metadatos asociados con una regla de firewall.
ForwardingRuleInfo Metadatos asociados con una regla de reenvío de VPC.
InstanceInfo Metadatos asociados a una instancia de VM de Compute Engine.
LoadBalancerInfo Metadatos asociados con un balanceador de cargas de Google Cloud.
NetworkInfo Metadatos asociados con una red de VPC.
RouteInfo Metadatos asociados con una ruta de red de VPC.
AppEngineVersionInfo Metadatos asociados a una versión de un servicio del entorno estándar de App Engine.
CloudRunRevisionInfo Metadatos asociados con una revisión de Cloud Run.
CloudFunctionInfo Metadatos asociados con una Cloud Function.
VpcConnectorInfo Metadatos asociados a un conector de Acceso a VPC sin servidoress.

¿Qué sigue?