Encontramos la contestación a esta contrariedad, al menos eso deseamos. Si tienes inquietudes dínoslo, que con gusto te responderemos
Solución:
Solución 1:
Además de las otras buenas respuestas, recientemente tuve que usar la tabla mangle para ajustar las discrepancias de MTU (unidad máxima de transmisión) causadas por el tráfico que se transmite a través de PPPoE, PPP y ATM, cada uno de los cuales agrega una sobrecarga que reduce la carga útil disponible para IP de los habituales 1500 bytes de una trama Ethernet.
Los sistemas en cada extremo de la tubería, como es normal, tendrían su MTU en el valor predeterminado regular de 1500 y, por lo tanto, intentarían enviar tramas IP de ese tamaño. Dado que el tamaño real de la carga útil disponible era más pequeño, esto habría causado la fragmentación del paquete, excepto que, a menudo, el remitente solicita que los paquetes no se fragmenten y, como tal, terminan siendo descartados por completo.
En un mundo ideal, el descubrimiento de la MTU de ruta habría permitido que los terminales redujeran su MTU según fuera necesario, pero este descubrimiento depende de ICMP, y las redes fuera de mi control a menudo se configuraron para descartar ICMP por razones de seguridad.
La única opción era usar la manipulación de paquetes en mi enrutador para modificar los paquetes TCP SYN para reducir el tamaño máximo del segmento en la capa de transporte:
iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --set-mss 1452
Este tipo de cosas son complicadas e idealmente deberían evitarse, pero no tenía otras opciones y esto resolvió el problema.
Espero que estos ejemplos ayuden, así como la página del manual.
Solución 2:
Hace poco encontré una buena explicación aquí. Básicamente se usa para establecer encabezados específicos para paquetes IP para afectar la decisión de enrutamiento que se toma más adelante. Si la hay, la opción TTL es probablemente la más interesante:
El objetivo TTL se utiliza para cambiar el campo TTL (Tiempo de vida) del paquete. Podríamos decirle a los paquetes que solo tengan un TTL específico y así sucesivamente. Una buena razón para esto podría ser que no queremos entregarnos a los proveedores de servicios de Internet entrometidos. A algunos proveedores de servicios de Internet no les gusta que los usuarios ejecuten varias computadoras en una sola conexión, y se sabe que algunos proveedores de servicios de Internet buscan un solo host que genera diferentes valores TTL, y toman esto como uno de los muchos signos de varias computadoras conectadas a una sola conexión. conexión.
Los otros objetivos son TOS, MARK, SECMARK, CONNSECMARK
.
Solución 3:
Como novato de iptables, diría: La tabla mangle permite modificar algunas entradas especiales en el encabezado de los paquetes. (como: Tipo de servicio, Tiempo de vida) (también permite establecer marcas especiales y marcas de contexto de seguridad)
Solución 4:
Hay un buen tutorial de inmersión profunda pero no demasiado difícil de entender sobre iptables aquí.
La tabla de mangle se usa para alterar los encabezados IP del paquete de varias maneras. Por ejemplo, puede ajustar el valor TTL (Tiempo de vida) de un paquete, ya sea alargando o acortando la cantidad de saltos de red válidos que el paquete puede soportar. Otros encabezados de IP se pueden modificar de manera similar.
Esta tabla también puede colocar una “marca” interna del núcleo en el paquete para su posterior procesamiento en otras tablas y por otras herramientas de red. Esta marca no toca el paquete real, pero agrega la marca a la representación del kernel del paquete.
Me ayudó mucho, ya que también explica claramente cómo todas las partes encajan e interactúan entre sí.