¿Cómo puedo solucionar los problemas de pérdida de paquetes en mi conexión VPN?

6 minutos de lectura
0

Tengo problemas de pérdida de paquetes de forma continua o intermitente y de alta latencia en mi conexión VPN. Quiero realizar pruebas para asegurarme de que el problema no se produce en mi Amazon Virtual Private Cloud (Amazon VPC).

Resolución

Antes de comenzar las pruebas de rendimiento, lance y configure sus instancias de Linux de Amazon Elastic Compute Cloud (Amazon EC2):

  1. Siga los pasos que se indican en Lanzamiento de una instancia para lanzar instancias de Linux en al menos dos zonas de disponibilidad diferentes en la misma VPC. Puede ejecutar pruebas de rendimiento de red desde la instancia.
  2. Para obtener el mejor rendimiento de la red posible, asegúrese de que las instancias admitan redes mejoradas para Linux e inicie las instancias en la misma VPC.
  3. Si está realizando pruebas de red entre instancias que no están ubicadas en el mismo grupo de ubicación o que no admiten tramas gigantes, siga los pasos para comprobar y configurar la MTU en la instancia de Linux.
  4. Complete los pasos que se indican en Conexión con la instancia de Linux para comprobar que puede acceder a las instancias.

Utilización de mtr para comprobar la latencia y la pérdida de paquetes ICMP o TCP

Instale la herramienta de red mtr en ambas instancias para comprobar si hay pérdida o latencia de paquetes ICMP o TCP. mtr proporciona una salida que se actualiza continuamente que le permite analizar el rendimiento de la red a lo largo del tiempo. Combina las funciones de traceroute y ping en una única herramienta de diagnóstico de red.

Instale mtr en Amazon Linux:

sudo yum install mtr

Instale mtr en Ubuntu:

sudo apt-get install mtr

Ejecute las siguientes pruebas entre la dirección IP privada y pública de sus instancias de EC2 y su host local de forma bidireccional. La ruta entre los nodos de una red TCP/IP puede cambiar cuando se invierte la dirección. Nota: Es importante obtener los resultados de mtr en ambas direcciones.

La primera prueba de mtr se basa en ICMP, pero la segunda prueba tiene la opción -T, que proporciona un resultado basado en TCP. El resultado basado en TCP le ayuda a determinar si hay alguna pérdida de paquetes o latencia en la conexión basada en la aplicación. La versión 0.85 y superiores de MTR tienen la opción TCP.

Pruebas de IP privadas:

mtr -n -c 200 <Private IP EC2 instance/on-premises host> --report
mtr -n -T -c 200 <Private IP EC2 instance/on-premises host> --report

Pruebas de IP públicas:

mtr -n -c 200 <Public IP EC2 instance/on-premises host> --report
mtr -n -T -c 200 <Public IP EC2 instance/on-premises host> --report

Utilización de la utilidad traceroute de Linux para determinar problemas de latencia o enrutamiento

La utilidad traceroute de Linux identifica la ruta que se toma desde un nodo cliente hasta un nodo de destino especificado. También muestra el tiempo en milisegundos que tarda cada enrutador identificado en la ruta para responder a una solicitud. Además, esta utilidad calcula y muestra la cantidad de tiempo que tarda cada salto antes de llegar a su destino. Si traceroute no está instalado, asegúrese de instalarlo en su instancia.

Instale traceroute en Amazon Linux:

sudo yum install traceroute

Instale traceroute en Ubuntu:

sudo apt-get install traceroute

Ejecute las siguientes pruebas entre la dirección IP privada y pública de sus instancias de EC2 y su host local de forma bidireccional. La ruta entre los nodos de una red TCP/IP puede cambiar cuando se invierte la dirección. Es importante obtener los resultados de traceroute en ambas direcciones. Pruebas de IP privadas:

sudo traceroute <private IP of EC2 instance/on-premises host>
sudo traceroute -T -p 80 <private IP of EC2 instance/on-premises host>

Pruebas de IP públicas:

sudo traceroute <public IP of EC2 instance/on-premises host>
sudo traceroute -T -p 80 <public IP of EC2 instance/on-premises host>

Nota: Los argumentos -T -p 80 -n realizan un seguimiento basado en TCP en el puerto 80. Asegúrese de que el puerto 80 o el puerto con el que está realizando la prueba estén abiertos en ambas direcciones.

La opción traceroute de Linux para especificar un seguimiento basado en TCP en lugar de ICMP resulta útil porque la mayoría de los dispositivos de Internet no priorizan las solicitudes de seguimiento basadas en ICMP. Es habitual que algunas solicitudes superen el tiempo de espera, así que esté atento a la pérdida de paquetes en el destino o en el último salto de la ruta. La pérdida de paquetes que se acumula en varios saltos también puede indicar un problema.

Nota: Al solucionar problemas de conectividad de red mediante traceroute, resulta útil ejecutar el comando en ambas direcciones.

Utilice hping3 para determinar los problemas de latencia o pérdida de paquetes TCP

hping es un ensamblador y analizador de paquetes TCP/IP orientado a la línea de comandos. Además de las solicitudes de eco de ICMP, admite los protocolos TCP, UDP y RAW-IP. También cuenta con un modo traceroute, la posibilidad de enviar archivos entre un canal cubierto y muchas otras características.

Si hping3 no está instalado, ejecute el siguiente comando en Amazon Linux:

sudo yum --enablerepo=epel install hping3

A continuación, ejecute los siguientes comandos:

hping3 -S -c 50 -V <Public IP of EC2 instance or on-premises host>
hping3 -S -c 50 -V <Private IP of EC2 instance or on-premises host>

Nota: De forma predeterminada, hping3 envía los encabezados TCP al puerto 0 del host de destino, con un tamaño de ventana de 64 y sin ningún indicador TCP activado.

Muestras de captura de paquetes mediante tcpdump

Puede realizar capturas de paquetes tanto en sus instancias de EC2 (presentes en varias zonas de disponibilidad) como en su host local cuando se duplican los problemas. Estas muestras de captura de paquetes ayudan a determinar si hay algún problema en la capa de red en la conexión VPN. Instale tcpdump en su instancia para realizar capturas de paquetes.

Instale tcpdump en Amazon Linux:

sudo yum install tcpdump

Instale tcpdump en Ubuntu:

sudo apt-get install tcpdump

Nota: Consulte la documentación específica del proveedor para obtener instrucciones sobre cómo comprobar los dispositivos de red para analizarlos y solucionar problemas.


Información relacionada

¿Cómo puedo comparar el rendimiento de la red entre instancias de Amazon EC2 Linux en la misma Amazon VPC?

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace 2 años