Todos los productos
Search
Centro de documentos

Tair (Redis® OSS-Compatible):Error "Destination Host Unreachable"

Última actualización: Sep 03, 2026

Este error ocurre cuando el bloque CIDR de su instancia de Elastic Compute Service (ECS) o contenedor docker se superpone con el bloque CIDR asignado a su instancia de Tair. Dado que la tabla de enrutamiento del cliente resuelve la ip de destino localmente en lugar de reenviarla a Tair, los paquetes nunca llegan a la instancia.

Síntoma

Al hacer ping al endpoint interno de una instancia de Tair from una instancia de ECS o un contenedor docker, la operación falla y muestra el siguiente resultado:

PING r-bp1****l7ein86xv6m.redis.rds.aliyuncs.com(172.17.0.31) 56(84) bytes of data.
From xxxx (172.17.0.1) icmp_seq=1 Destination Host Unreachable
From xxxx (172.17.0.1) icmp_seq=2 Destination Host Unreachable
From xxxx (172.17.0.1) icmp_seq=3 Destination Host Unreachable

Diagnóstico del conflicto

Confirme el conflicto de CIDR antes de aplicar una solución.

  1. Haga ping al endpoint interno para obtener la dirección ip interna de la instancia de Tair. En el ejemplo anterior, la dirección ip interna es 172.17.0.31.

  2. Revise la tabla de enrutamiento del cliente. En un contenedor docker basado en Linux, ejecute:

    route -n

    El resultado es similar al siguiente:

    Kernel IP routing table
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    0.0.0.0         172.17.2.253    0.0.0.0         UG    0      0        0 eth0
    169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 eth0
    172.17.0.0      0.0.0.0         255.255.255.0   U     0      0        0 br-350b446c181a

    En este ejemplo, la tarjeta de interfaz de red (NIC) br-350b446c181a tiene asignado el bloque CIDR 172.17.0.0/24. Como 172.17.0.31 se encuentra dentro de ese rango, docker enruta los paquetes al puente local en lugar de reenviarlos a Tair.

Soluciones

Resuelva el conflicto al cambiar la configuración de red del lado del cliente o de la instancia de Tair.

Solución 1: Cambiar el bloque CIDR predeterminado del puente de docker

Reconfigure el puente predeterminado de docker para usar un bloque CIDR que no se superponga. Este ejemplo aplica a un host docker en Linux que utiliza el puente docker0 predeterminado.

Importante

Detener docker o cambiar su bloque CIDR interrumpe los contenedores en ejecución. Realice esta operación fuera del horario de mayor actividad y compruebe que el nuevo bloque CIDR no entre en conflicto con los contenedores o aplicaciones existentes.

  1. Detenga el servicio de docker.

    sudo systemctl stop docker
  2. Abra el archivo de configuración del daemon de docker. Por lo general, el archivo se ubica en /etc/docker/daemon.json (el nombre del archivo puede variar).

    sudo vim /etc/docker/daemon.json

    Realice una copia de seguridad del archivo original antes de modificarlo.

  3. Agregue el parámetro bip con un bloque CIDR que no se superponga con 172.17.0.31. Por ejemplo:

    {
        "bip": "192.168.0.1/24"
    }

    El parámetro bip establece la dirección ip y la subred del puente docker0. Todos los contenedores en el puente predeterminado reciben direcciones de esta subred.

  4. Guarde y cierre el archivo.

  5. Inicie el servicio de docker para aplicar el cambio.

    sudo systemctl start docker

Solución 2: Cambiar el vSwitch de la instancia de Tair

Cambie el vSwitch de su instancia de Tair por uno cuyo bloque CIDR no se superponga con el bloque CIDR del cliente.

Nota

Dado que las distintas VPC no pueden comunicarse a través de redes internas, solo puede cambiar a un vSwitch dentro de la misma VPC. El cambio de vSwitch provoca una interrupción transitoria de la conexión de aproximadamente 30 segundos. Realice esta operación fuera del horario de mayor actividad y asegúrese de que su aplicación cuente con un mecanismo de reconexión automática.

Pasos siguientes

Connect to Tair and Redis instances