Marcio Cunha

¿Tu VPN cae? Cómo ajustar MTU y MSS Clamping

Descubre cómo los ajustes finos de MTU y MSS Clamping en túneles WireGuard y OpenVPN eliminan caídas inexplicables y paquetes fragmentados.

Marcio Cunha•5 min
También disponible en:PortuguêsEnglish
Resumen
  • Configuraciones incorrectas de MTU generan fragmentación excesiva de paquetes y bloqueos en túneles cifrados.
  • El MSS Clamping ajusta el tamaño máximo del segmento TCP para evitar el temido agujero negro de MTU.
  • Los túneles WireGuard requieren especial atención al límite de tamaño impuesto por los protocolos UDP encapsulados.
  • El diagnóstico preciso de fallas en rutas cifradas evita horas de depuración de red a ciegas.
  • Las herramientas de línea de comandos permiten probar rutas de red de extremo a extremo sin adivinar.

Por qué tu VPN falla silenciosamente en la red

¿Quién no ha experimentado la frustración de conectarse a una VPN corporativa y descubrir que las páginas pesadas simplemente se congelan a mitad de la carga? En la práctica, esto significa que la conexión parece activa, pero el tráfico real no pasa. A menudo, el culpable no es el proveedor de internet ni el cifrado en sí, sino un detalle invisible llamado MTU, o Maximum Transmission Unit, que representa el tamaño máximo de un paquete de datos que puede viajar sin ser cortado en pedazos.

Cuando añadimos una capa de VPN como WireGuard o OpenVPN, el paquete original recibe un 'casco' adicional de datos de cifrado. Si el paquete resultante supera el límite que soportan los routers intermedios, debe ser fragmentado. Si esos routers deciden descartar estos paquetes fragmentados por razones de seguridad, se produce una falla de enlace y la conexión se congela por completo. Como detallamos en nuestra guía sobre cómo mapear pérdida de paquetes y jitter en rutas, entender el comportamiento del tráfico bajo el capó es el primer paso para estabilizar cualquier túnel.

Qué es el MTU y por qué la encapsulación rompe todo

Para entender el problema de forma sencilla, piense en el MTU como la altura máxima permitida para que un camión pase por debajo de un puente. El internet estándar tiene un MTU tradicional de 1500 bytes. Cuando creas un túnel VPN, el protocolo añade cabeceras adicionales para garantizar la seguridad de los datos. WireGuard añade unos 60 bytes de sobrecarga, mientras que OpenVPN basado en UDP puede añadir hasta 64 bytes o más dependiendo del cifrado utilizado.

Si tu tarjeta de red envía un paquete de 1500 bytes y el túnel añade otros 60 bytes, el paquete total pasa a ser de 1560 bytes. Si encuentra en el camino un router de operador que acepta un máximo de 1500 bytes, el paquete necesitará ser fragmentado. Si la red ignora la fragmentación o si el bit DF (Don't Fragment) está activado, el paquete muere a mitad de camino, lo que resulta en una lentitud extrema o la caída total de la sesión VPN.

La solución definitiva: configurando MSS Clamping en la práctica

El MSS Clamping, o ajuste del segmento máximo, es un mecanismo inteligente que avisa al ordenador de origen para que reduzca el tamaño de los fragmentos de datos antes de que siquiera entren al túnel. En lugar de dejar que el paquete crezca y supere el límite más adelante, el router o el propio servidor VPN avisa: 'envía paquetes un poco más pequeños para que quepan cómodamente dentro del túnel'.

Esto resuelve el problema de los sitios web que se abren parcialmente y se congelan, ya que el protocolo TCP se ve obligado a negociar un segmento adecuado desde el principio. Para aplicar esto en routers Linux o cortafuegos que manejan tráfico encapsulado, puedes utilizar reglas directas en el sistema de filtrado de paquetes. Aquí tienes un ejemplo clásico de regla para ajustar automáticamente el MSS en la interfaz de tu túnel:

iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

Esta línea mágica instruye al sistema para inspeccionar cada paquete TCP que inicia una conexión y ajustar su MSS basándose en el MTU descubierto de la ruta, asegurando que ningún paquete supere el límite seguro de tu túnel WireGuard u OpenVPN.

Ajustando el MTU manualmente en WireGuard y OpenVPN

Más allá del MSS Clamping, configurar el valor correcto de MTU directamente en la configuración de la interfaz de la VPN es una práctica esencial de ingeniería de redes. En WireGuard, por ejemplo, el valor predeterminado suele ser 1420 para acomodar las cabeceras UDP e IP sobre una red con un MTU de 1500. Sin embargo, si estás en una conexión de fibra que usa PPPoE, la cual reduce el MTU base a 1492, WireGuard necesitará bajar a 1412.

Para cambiar esto en el archivo de configuración de tu cliente o servidor WireGuard, simplemente añade la directiva de MTU explícitamente en la sección de interfaz. Así es como se ve un bloque típico de configuración optimizada:

[Interface] Address = 10.0.0.2/32 PrivateKey = aaaa... MTU = 1380 [Peer] PublicKey = bbbb... Endpoint = 203.0.113.5:51820 AllowedIPs = 0.0.0.0/0

Ajustar este valor a 1380 o incluso 1360 crea un margen de seguridad contra redes corporativas restrictivas, redes Wi-Fi públicas inestables y conexiones móviles 4G/5G que suelen fragmentar paquetes agresivamente. Garantizar esta resiliencia estructural previene tickets de soporte y caídas abruptas durante reuniones cruciales.

Diagnóstico y validación con pruebas de ping avanzadas

Adivinar el valor ideal de MTU es un error común que hace perder tiempo. La mejor manera de descubrir el número exacto que soporta tu conexión sin fragmentación es realizar pruebas manuales utilizando la utilidad ping con un parámetro de tamaño de paquete restringido y el indicador para prohibir la fragmentación.

En sistemas operativos Linux o macOS, puedes ejecutar el comando indicando el tamaño del paquete y forzando el bit DF. Ve reduciendo el número hasta que el paquete pase sin recibir un mensaje de error que indique que necesita fragmentación. Aquí tienes un ejemplo práctico de comando para probar el límite hacia tu servidor VPN:

ping -M do -s 1400 10.0.0.1

Recuerda que el valor pasado en el parámetro `-s` se refiere únicamente a los datos útiles. Para conocer el MTU total real, debes sumar 28 bytes correspondientes a las cabeceras IP e ICMP. Por lo tanto, si la prueba con `-s 1420` pasa sin errores, tu MTU ideal será 1448. Hacer este mapeo previene fallas silenciosas y garantiza el máximo rendimiento. Para complementar esta implementación en entornos de producción, consulte también nuestros análisis técnicos sobre Cómo calibrar sensores industriales vía Modbus en campo y Cómo analizar señales de bus CAN con un analizador lógico.

Conclusión y mejores prácticas para túneles estables

Mantener conexiones VPN estables requiere comprender que el tráfico de red moderno maneja capas complejas de encapsulamiento y restricciones invisibles de infraestructura. Al combinar el ajuste fino del parámetro MTU con el uso eficiente del MSS Clamping, eliminamos la raíz de los bloqueos misteriosos y la lentitud intermitente en túneles WireGuard y OpenVPN.

Adoptar una postura proactiva de pruebas con el comando ping y documentar los valores adecuados para cada escenario de red corporativa o residencial garantiza una operación libre de sorpresas desagradables. Invertir unos pocos minutos configurando estos parámetros te libera a ti y a tu equipo de frustrantes fallas de enlace, entregando una experiencia de red verdaderamente sólida y transparente.