"Paquetes superan el tamaño máximo": Causas y soluciones para ingenieros de red

Cuando los paquetes superan el MTU (Unidad de Transmisión Máxima) del camino, se descartan o fragmentan. Aquí está la lista de verificación para solucionar problemas.

Causas raíz y soluciones

1. Configuración incorrecta de Jumbo Frames

  • Problema: Extremos envían tramas de 9000 bytes; switch/puerto intermedio MTU = 1500
  • Solución: Habilitar jumbo frames de extremo a extremo (NIC → puertos switch → interfaces router → firewalls). Verificar con ping -s 8972 -M do <ip> (Linux) / ping -f -l 8972 <ip> (Windows)

2. Fallos de fragmentación IP

  • Problema: Bit "Don't Fragment" (DF) activado + paquete > MTU del camino → ICMP "Fragmentación Necesaria" descartado por firewall
  • Solución: Permitir ICMP Tipo 3 Código 4 (Destino Inalcanzable / Fragmentación Necesaria). Implementar PMTUD (Descubrimiento MTU de Ruta) o PLPMTUD (RFC 8899)

3. Desajuste de MTU (VPN, Túnel, VXLAN, PPPoE)

  • Sobrecarga VPN: IPsec ESP (~73 bytes), WireGuard (60 bytes), OpenVPN (~60 bytes)
  • PPPoE: 8 bytes → MTU 1492
  • VXLAN: 50 bytes → MTU 1450
  • Solución: Reducir MTU del extremo (ej. 1380 para IPsec) o habilitar MSS Clamping (TCP MSS = MTU - 40) en router/firewall

4. Hardware defectuoso / Bugs de controladores

  • Funciones de offload de NIC (TSO, LRO, GRO) fallan → tramas sobredimensionadas
  • Solución: Deshabilitar offloads: ethtool -K eth0 tso off gso off gro off; actualizar firmware/controladores

Comandos de diagnóstico

# Rastrear MTU del camino
tracepath <destino>          # Linux
mturoute.exe <destino>        # Windows

# Probar tamaño específico con bit DF
ping -s 1472 -M do <dest>     # 1472 + 28 headers = 1500
ping -f -l 1472 <dest>        # Windows

# Ver MTU de interfaz
ip link show | grep mtu        # Linux
netsh interface ipv4 show subint  # Windows

Buenas prácticas

  • Estandarizar MTU 1500 en todas partes salvo entorno controlado extremo a extremo (fabric de centro de datos)
  • Usar MSS clamping en routers de borde para tráfico VPN/túnel
  • Monitorizar ICMP "Paquete Demasiado Grande" — es una característica, no un error