m6pack

Driver 6PACK para anillos de TNC's con Linux

¡Nuevo!  Actualización del driver para compilar con ax25-tools-0.0.8, la nueva última versión del código AX.25 disponible en el momento de escribir esto. Aquí tienes el parche (llamado ax25-tools-0.0.8-m6pack.diff.bz2).

Actualización del driver para compilar con libax25-0.0.7 y ax25-tools-0.0.5, la nueva versión del código AX.25 para los núcleos 2.2.x.  Aquí tienes el parche (llamado ax25-tools-0.0.5-6pack.diff.gz). Recuerda que lo debes aplicar sobre las ax25-tools-0.0.5 (las más recientes en el momento de escribir esto). 

Me ha costado, pero por fin he sido capaz de terminar el dichoso driver ;-) 

Bueno, propiamente dicho no es un driver de dispositivo que sea parte del núcleo de Linux. En realidad es una utilidad que corre en espacio de usuario y que se apoya en el driver de 6PACK del núcleo, creado por Andreas Könsgen , pero modificar el driver actual del núcleo es mas complicado, y hasta que decida como implementar los cambios necesarios, habra que tirar con esto. 

La utilidad en cuestion, que yo denomino m6pack, está actualmente en estado beta. Yo la he tenido funcionando algún tiempo en mi QTH con dos TNCs conectadas en anillo y no he tenido mayores problemas. Pero como no tengo mas que dos TNCs no puedo probar configuraciones mayores y hacer un testeo mas exhaustivo. Así que, si quieres probarla y enviarme información sobre cómo se comporta en tu caso, te estaré agradecido. 

Bueno, sin mas preambulos, aquí están los ficheros necesarios para funcionar. Se trata de un añadido a las ax25-utils, por medio de un parche a aplicar sobre las mismas. Para aplicar el parche y tener disponibles las utilidades relacionadas con m6pack tienes que obtener una copia del paquete ax25-utils-2.1.42a original y parchearlo para usarlo con libc6 (glibc 2). Lo más fácil en este caso es usar el parche de Craig Small usado para crear el paquete Debian. Una vez aplicado este parche, tienes que aplicar mi parche de m6pack. Me he puesto en contacto con la persona que mantiene las ax25-utils para que incluya el parche en la version oficial de las mismas en cuanto sea posible. 

Luego sigue las instrucciones que vienen con las ax25-utils-2.1.42a para compilar el resultado. Aparte de las utilidades disponibles anteriormente habra dos nuevas: 

  • m6pack: es el multiplexor de la línea serie para poder hacer el attach de las diferentes TNCs a los diferentes dispositivos 6PACK. Su funcionamiento es idéntico a la utilidad mkiss diseñada para gestionar anillos de TNCs en modo KISS.
  • spattach: es la utilidad necesaria para hacer el attach propiamente dicho de una TNC 6PACK con el dispositivo del núcleo. Su funcionamiento es idéntico a la utilidad kissattach.
Ambas utilidades tienen una página del manual (en Inglés) que indica las opciones disponibles y su uso. Como ejemplo diré que en mi caso, que tengo dos TNCs en el anillo, uso la siguiente secuencia de comandos para poder usar las mismas: 

        ...
        echo "Attaching packet interface to _6pack_ TNC..."
        m6pack -l -s 19200 /dev/ttyS0 /dev/ptyq0 /dev/ptyq1
        # Allow m6pack to catch up
        sleep 1
        spattach /dev/ttyq0 6pack1 &
        spattach /dev/ttyq1 6pack2 &
        # Allow spattach to catch up
        sleep 1
        ...

Un último detalle: los dispositivos de red cuando uno tiene TNCs en modo KISS se llaman ax0, ax1, etc. En el caso de las TNCs en modo 6PACK, los dispositivos se denominan sp0,sp1, etc. 

Copyright © 1997-2005 Ignacio Arenaza
$Id: index.html,v 1.3 1999/10/18 23:08:58 iarenaza Exp $