Compartir la conexión mediante un módem ADSL Comtrend CT-351

Esta receta trata únicamente de las peculiaridades de este módem a la hora de compartir la conexión. Quizá te interese nuestra receta sobre Compartir la conexión s Internet con GNU/Linux para cuestiones más generales.

Estaba volviéndome loco intentando montar un router utilizando una conexión ADSL con el módem Comtrend, en una Debian con los drivers eagle-usb 2.1.1-2. Gracias a la inestimable y oportuna ayuda de F.Sancho, he sabido que hay un problema con el MSS usando PPPoE para este módem concreto, que hace que se descarten los segmentos mayores de 1412 bytes. Este problema también ocurre con algunos módems que usan PPPoA.

Lo curioso del asunto es que funciona perfectamente en el ordenador en el que está conectado el módem, pero sin embargo se descartan los paquetes forwardeados desde otras máquinas.

La solución es decirle al demonio pppoe que utilice un MTU de 1412. Para ello, en el fichero /usr/sbin/fctStartAdsl, buscar una línea tal que:

exec $PPPOX -I $INTERFACE 2>/dev/null

y cambiarla por:

exec $PPPOX -I $INTERFACE -m 1412 2>/dev/null

Este problema no lo tenía con la versión 1.9.9-1 de los mismos drivers. Lo cierto es que sigo sin tener claro en qué consiste el problema y quién descarta esos segmentos. Si tienes información más detallada del problema, por favor, deja un comentario. De todos modos yo también intentaré buscar.

Apéndice

Curioseando un poco, he visto que en el fichero /etc/ppp/peers/dsl-provider que viene con el paquete pppoe hay unos comentarios interesantes:

# Use the pppoe program to send the ppp packets over the Ethernet link
# This line should work fine if this computer is the only one accessing
# the Internet through this DSL connection. This is the right line to use
# for most people.
pty "/usr/sbin/pppoe -I eth0 -T 80 -m 1452"
 
# An even more conservative version of the previous line, if things
# don't work using -m 1452...
#pty "/usr/sbin/pppoe -I eth0 -T 80 -m 1412"
 
# If the computer connected to the Internet using pppoe is not being used
# by other computers as a gateway to the Internet, you can try the following
# line instead, for a small gain in speed:
#pty "/usr/sbin/pppoe -I eth0 -T 80"

O sea que parece que es algo propio de PPPoE. Habrá que mirarse la RFC Smiling Los tiros van por la RFC 2923.