OpenBCM V1.07b12 (Linux)

Packet Radio Mailbox

IW8PGT

[Mendicino(CS)-Italy]

 Login: GUEST





  
LW1EAA > TODOS    20.10.17 15:34l 669 Lines 26607 Bytes #999 (0) @ WW
BID : 1182-LW1EAA
Read: GUEST
Subj: SCC y MANCHESTER en LInux
Path: IW8PGT<IR2UBX<IW2OHX<UA6ADV<CX2SA<LU4ECL<LW1EAA
Sent: 171020/1159Z @:LW1EAA.LP.BA.ARG.SOAM #:1182 [LA PLATA] FBB7.00e $:1182-LW
From: LW1EAA@LW1EAA.LP.BA.ARG.SOAM
To  : TODOS@WW

Como Configurar Placa SCC y Modem  Manchester bajo Linux

Este documento fue elaborado con el objetivo de contar nuestras experiencias
propias y consejos de otros colegas para poner operativos los sistemas de
radioaficionados bajo Linux. Es posible que existan otros métodos mas sencillos
y efectivos, pero los descriptos a continuación nos dieron y nos siguen dando
grandes satisfacciones.
No es intención de este documento hablar sobre la instalación del sistema
operativo. Nos limitaremos a explicar la configuración para radio utilizando
Placa SCC del HSG y Modem Manchester del HSG a distintas velocidades.
Conceptos Iniciales

Linux es un sistema operativo basado en el protocolo TCP/IP, por lo tanto con
la sóla instalación de drivers y utilidades para generar el protocolo AX25
nuestro linux estarß en condiciones de salir al aire, con poderosas funciones
de red.
Si lo deseamos podremos utilizar de forma adicional programas como el JNOS o el
TNOS que incluyen de forma integrada las funciones necesarias y habituales de
un BBS.
Si elegimos operar con el Linux "puro" le asignaremos nuestra IP al sistema
operativo. Si optamos por correr un NOS (ya se Jnos ó Tnos) le asignaremos a
éste nuestra IP y necesitaremos una segunda IP para nuestro sistema operativo.
Con esto, serß posible tener en una sola mßquina "dos estaciones" con IP
diferentes.
Compatibilidad


Esta forma de configuración ha sido probada con éxito en distintas
distribuciones de Linux como Red Hat 6.0, 7.2 y SuSE 6.3 que utilizan el kernel
2.2.x   y kernel 2.4.x
Los microprocesadores probados, han sido P100, P133, P200, PII350 y AMD K6II
500 Mhz. Es probable que otro hardware y otras distribuciones funcionen sin
mayores problemas.
El Kernel
El Kernel es el núcleo de nuestro Linux. En él podremos incluir todas las
funciones que necesitemos del sistema operativo. Al instalar Linux por primera
vez se crearß un Kernel genérico con posibilidades bßsicas. Claro que no estarß
preparado para brindar soporte para los requerimientos de radioaficionados. 
Por ello deberemos compilar un nuevo núcleo en el que incluiremos soporte para
"Amateur radio", y "Amateur Radio AX.25 level 2 protocol". Luego deberemos
especificar el tipo de driver a incluir. En nuestro caso seleccionaremos "Z8530
SCC driver". Aquí podremos incluir mas de una opción si es que deseamos
experimentar con otros dispositivos mas allß de la placa de la SCC. El único
"costo adicional" serß que el archivo del Kernel serß apenas mas grande.No
olvidemos chequear el resto de la configuración para evitar errores en la
compilación.
Otra opción serß incluir estas opciones como modulos.
 
Qué se necesita

Ante todo necesitaremos obtener el software necesario para iniciar nuestro
trabajo. Podremos conseguirlo en alguna copia o bajarlo desde algún BBS de un
colega o a través de internet.

-Código Fuente del Kernel para poder compilar
-Driver z8530drv-utils-3.0-3.i386.rpm
-Utilidades ax25 (Opcional) ax25-utils-2.1.42a-3.i386.rpm
-Tnos 2.30 (Opcional) tnos-base-2.30-release.i386.rpm
-Jnos 111e (opcional) lnxjnos111e.tar.gz
+tar.gz o rpm?
Por lo general, la mayoría de los archivos estarßn en formato tar.gz o rpm
Podremos elegir el formato que prefiramos. El primero, utilizado desde hace
tiempo por Linux, contiene los archivos comprimidos. Normalmente deben ser
abiertos con el siguiente comando:
tar xvfz nombredelarchivo.tar.gz
Luego, dependiendo del programa, tendremos que configurar y compilar los
archivos descomprimidos.
El formato rpm (RedHat Packet Manager) ha aportado a Linux una gran ayuda en
simplificar las operaciones, ya que con una sola instrucción el archivo se
descomprime y se instala de una manera sencilla. Para ello es necesario tipear:
rpm -i nombredelarchivo.rpm
Los rpm no sólo funcionan en Red Hat, tambien son soportados por SuSE y otras
distribuciones.
Compilando el Kernel


Como indicamos mas arriba, serß indispensable contar con el código fuente del
kernel para poder compilarlo. Si al instalar Linux por primera vez elegimos
cargar los fuentes, no tendremos problemas. Si no lo tenemos, no nos quedara
otra solución que hacer una actualización o conseguirlo. Desde internet se lo
puede bajar desde:
http://www.kernel.org
En nuestro sistema, por lo general, los fuentes estarßn el directorio:
/usr/src/linux
Ingresando a ese directorio podremos ejecutar los siguientes comandos para el
proceso de compilación:
make mrproper
make menuconfig
make clean
make dep
make zImage
El comando make menuconfig nos presentarß un cuadro con las distintas opciones
para incluir en nuestra compilación. Esta tarea de selección debe hacerse con
mucho cuidado para evitar luego errores en la compilación.
Es aquí donde debemos incluir, entre otras cosas, soporte para placa SCC
habilitando correctamente las opciones para "Amateur radio", y "Amateur Radio
AX.25 level 2 protocol". Luego deberemos especificar el tipo de driver a
incluir. En nuestro caso seleccionaremos "Z8530 SCC driver".
Ademas serß conveniente habilitar la opción para conexiones SLIP dentro del
menú de Network Device Support. Esto nos serß de gran utilidad si en el futuro
deseamos instalar un Jnos o un Tnos.
El comando make clean harß una liempieza, el make dep establecerß las
dependencias y finalmente make zImage comenzarß la compilación de la nueva
imagen del núcleo. Si en la configuración hemos seleccionado muchas opciones
serß necesario correr ademas el comando make bzImage ya que el núcleo tendrß un
tamaño mas grande.
Si el proceso de compilación lo realizamos desde una ventana dentro de
x-windows, en lugar del comando make menuconfig podremos utilizar make xconfig
que nos presentarß un cuadro de configuración de forma grßfica.
Este proceso es una gran experiencia para aprender a compilar el kernel, aunque
suele ser difícil lograrlo con éxito de una sola vez. Si no lo logramos, se le
puede solicitar a un colega que ya tenga su kernel compilado que nos envíe el
suyo. Puede entrar en un diskette.
Booteando con el nuevo Kernel
Una vez completados los pasos anteriores, encontraremos la nueva imagen del
Kernel en el directorio /usr/src/linux/arch/i386/boot/ con el nombre de zImage
ó bzImage dependiendo del tamaño del archivo. Debemos copiarlo al dir /boot y
si queremos lo podremos renombrar para identificarlo fßcilmente.

Ejemplo: cp /usr/src/linux/arch/i386/boot/bzImage /boot/kernelradio

Ahora debemos indicarle a LILO (Programa gestor de arranque de Linux) que
incluya el nuevo kernel para que lo tengamos como opción de boteo. Para ello
editaremos el archivo /etc/lilo.conf Seguramente allí encontraremos las
instrucciones para la carga del viejo kernel y para la carga de windows o DOS
si es que en nuestra maquina compartimos otros sistemas operativos. Eso lo
dejaremos sin alterar y al final agregaremos la nueva imagen:

Ejemplo:
image=/boot/kernelradio
label=radio
root=/dev/hda4
Notemos que en la primera linea indicamos el directorio y el nombre del archivo
por cargar. En la segunda, la etiqueta -o sobrenombre- que veremos entre las
opciones de boteo y en la tercera colocaremos la partición del disco duro donde
se encuentra la raíz de Linux.
Para que la nueva configuración tome efecto desde la linea de comandos
ejecutaremos:
lilo
Ya estß!!! la próxima vez que reiniciemos la mßquina Lilo nos presentarß la
opción para botear con nuestro nuevo Kernel.
NOTA: Si queremos que al encender la maquina nuestro kernel de radio botee por
default, debemos indicarlo también en /etc/lilo.conf En la primera parte del
archivo, donde esta la configuración general de lilo (es decir antes de la
primera imagen) incluiremos la linea:
default=radio

Tal como hicimos antes, para que la nueva configuración tome efecto
ejecutaremos el comando lilo desde la terminal. Observaremos un * junto a la
palabra radio.
El Driver z8530drv
El hecho que el Kernel pueda soportar la placa SCC, se lo debemos al colega
alemßn Jörg Reuter, (DL1BKE) quien escribió el driver apropiado. Para obtener
amplios detalles podremos visitar su pßgina en Internet:

http://www.qsl.net/dl1bke

Allí podremos encontrar los links para bajar el driver. Hay varias versiones
disponibles. A partir de la versión 3.0 sólo estßn incluidas las utilidades, ya
que el driver en si mismo serß incluido en el kernel, si éste es lo
suficientemente nuevo como el 2.2.x o posterior. El archivo que debemos
instalar se puede encontrar en:
ftp://ftp.ccac.rwth-aachen.de.pub.jr/z835drv-utils-3.0-3.i386.rpm
para instalarlo, utilizaremos la simple instrucción de un archivo
autoinstalable en formato rpm:
rpm -i z8530drv-utils-3.0-3.i386.rpm
Una vez realizada esta tarea, encontraremos tres comandos en el directorio
/sbin y un archivo de configuración en el dir /etc/ax25 que tendrß el nombre de
z8530drv.conf.ex Allí debemos hacer los cambios con nuestras preferencias y
renombrarlo como z8530drv.conf 
Los comandos que encontraremos en el dir /sbin serßn:
-sccinit (Encargado de leer el archivo z8530drv.conf y de inicializar el driver)
-sccstat (Muestra el estado actual del canal de la scc inidicado)
-sccparam (Permite hacer cambios en la configuración)

En el archivo de configuración serß necesario declarar los datos de nuestra
placa como dirección, IRQ, Clock y tipo de Chip a utilizar. Luego se cargarßn
los parßmetros de cada uno de los ports. Veamos un ejemplo utilizando placa del
HSG, dirección 280, IRQ 11 y xtal de 7.3728 Mhz.

# z8530drv.conf - initialization for the Z8530 SCC driver
# Lines must not be longer than 255 bytes!
# Hardware section
#
# SCC chip 1
#
chip 1
data_a 0x283 # data port A
ctrl_a 0x282 # control port A
data_b 0x281 # data port B
ctrl_b 0x280 # control port B
irq 11 # IRQ No. 11 (#)
pclock 7372800 # clock (+)
board pa0hzp # hardware type (*)
escc no # enhanced SCC chip? (8580/85180/85280) (*)
vector no # latch for interrupt vector ($)
special no # address of special function register (*)
option 0 # option to set via sfr (*)
#
# The order of entries IS important!
#
# first : DEVICE
# then : MODEM section
# after that: Level 1 parameters
#
# Definition of /dev/scc0
#
device /dev/scc0
#
# MODEM related stuff
#
speed 4800 # 4800 baud
clock dpll # clock source: use the dpll
mode nrzi # normal NRZI operation
bufsize 640
#
# Level 1 parameters
#
txdelay 20 # You should know about these already!
persist 254
slot 1
tail 7
fulldup 0
wait 5
min 3
maxkey 7
idle 3
maxdef 120
group 0
txoff off
softdcd off # use software dcd
#
#
# Definition of /dev/scc1
#
#
device /dev/scc1
#
speed 4800
clock dpll
mode nrzi
bufsize 640
#
txdelay 20
persist 254
slot 1
tail 8
fulldup 0
wait 12
min 3
maxkey 7
idle 3
maxdef 120
group 0
txoff off
softdcd off
#
#
# End of File
#

Como vemos, al comienzo inicializamos el 8530, colocamos address, IRQ. Notemos
que el clock debe estar expresado en Hertz. En nuestro caso 7372800 Hz. En el
tipo de placa seleccionaremos pa0hzp (También el driver soporta placas de tipo
Eagle, PC100, Primus y Baycom).
El autor del driver indica que si utilizamos SCC avanzadas como 8580, 85180 u
85280 hay que poner "yes" en la opción ESCC.
Este driver permite utilizar hasta 4 chips (8 canales). Sólo bastarß repetir la
inicialización del chip y la configuración de cada canal. De todos modos, serß
posible usar mßs de 4 chips, aunque por momento no hablaremos de eso.
Tampoco describiremos el resto de las líneas, ya que seguramente serßn
familiares para los paqueteros. En la Web del DL1BKE estßn explicadas en
detalle.
Ya tendremos las herramientas necesarias para hacer nuestra primera prueba!!! 
Desde la linea de comandos en una sesión de linux tipearemos:

sccinit
ifconfig scc0 44.153.x.x hw ax25 lu0xxx (Indicar IP y licencia apropiada) 
route add default scc0

Con esto inicializamos el driver, indicamos nuestras Ip y licencia y
establecimos un ruta por la scc. Por lo tanto desde la linea de comandos ya
podremos hacer "telnet", "ftp" etc. o bien levantamos el navegador en modo
grßfico y visitamos por radio las Webs de los amigos radioaficionados. Por
ahora haremos solo conexiones con los números IP, ya que todavía no
establecimos los métodos para resolver dominios.


Las ax25utils

Hasta este momento hemos configurado Linux con las interesantes posibilidades
de Red, como los telnets, http o ftp, pero carecemos de otras posibilidades
como conexiones ax25 sin tcpip, conexiones tty, BBS o forwarding, entre otras
cosas.
Para resolver esto existe un paquete de utilidades para Linux, conocido como
ax25utils, que nos abrirß las puertas a un mundo aún mas interesante.
Como siempre recurriremos a internet o algún colega y buscaremos:

ax25-utils-2.1.42a-3.i386.rpm

Encontraremos varias versiones y en diferentes formatos. Para instalar las
utilidades escribiremos en la linea de comandos:

rpm -i ax25-utils-2.1.42a-3.i386.rpm

Luego tendremos la tarea de configurar cada uno de los ports y cada uno de los
servicios.

Otra opción para ampliar funciones ax25, serß instalar un programa del tipo
NOS, que incluye de forma integrada estas posibilidades. De todos modos
necesitaremos una utilidad ax25 que nos permita "atachar" el Jnos ó el Tnos a
la SCC, se trata de la utilidad Net2kiss.
La utilidad net2kiss

Ejecutar sobre el sistema operativo la utilidad net2kiss serß indispensable
para "atachar" cada uno de los puertos del NOS hacia cada uno de los puertos de
la SCC.
Su función es tomar los paquetes ax25 de la interface correspondiente del S.O.
(En nuestro caso cada puerto de la SCC) y convertirlos en datos modo Kiss.
Luego los envía al NOS a través de una pseudo-tyy.
Por lo tanto, en el NOS, en lugar de "atachar" el puerto de la SCC, (Como se
hace en DOS) "atacharemos" un disposivo virtual. +ste, a su vez se comunicarß
con la SCC con el auxilio del net2kiss.
Serßn necesarias dos instrucciones. Una para el NOS y otra para el sistema
operativo.
Ejemplos:

#linea de attach en el autoexec.nos

attach asy ttyp0 - ax25 2m 1024 256 38400

#linea de ejecución de utilidad para el sistema operativo

net2kiss -i scc0 -v /dev/ptyp0

Como vemos el comando net2kiss puede tener varias opciones de ejecución que
describimos a continuación:

-i dispositivo Especifica el nombre del dispositivo sobre el que trabajarß
net2kiss

-s Indica a Net2kiss que busque por sí mismo una pseudo-terminal libre y cree
el enlace simbólico correspondiente.

-f Puede ser usada en conjunto con la opción -s para crear de manera forzada el
enlace, aunque este ya exista.

-v Habilita la visualización de errores, y muestra en pantalla el trßfico de
los paquetes. (Se asemeja al trace).

-a Permite recibir todos los paquetes, en lugar de recibir solo los paquetes
ax25.

La sintaxis de uso es:

net2kiss [-fvzva] [-i dispositivo] ptyname

En principio, para nuestras primeras pruebas podemos ejecutar el net2kiss en
una terminal de linux, la cual quedarß abierta por el tiempo que estemos
utilizandola. Mas adelante veremos la forma de ejecutar esta función como un
proceso "background".

Debemos tener en cuenta que hay que ejecutar un net2kiss con sus parßmetros por
cada uno de los puertos de SCC que necesitemos operar.

Una mßquina, dos IP

Una de las grandes ventajas que ofrece Linux, es poder hacer en una misma
maquina, multiples tareas de una forma sencilla. En una sesión podremos
ejecutar un NOS y en una sesión grßfica usar programas de red como el Netscape
u otros. Podremos asignar entonces nuestra IP al NOS y asignar una segunda IP
al Sistema Operativo. Como prueba se puede aunmentar un numero el campo de
subred de nuestra IP, y por supuesto con la aceptación del coordinador local de
números IP.
Gracias al driver z8530drv y la utilidad net2kiss, ambas Ip podran salir al
aire, y escuchar en forma simultßnea.

Es indistinta la asignacion de IP al NOS o al sistema operativo. Una ventaja de
asignar nuestra "IP Original" al NOS es que las estaciones que nos llamen serßn
atendiadas por el NOS ofreciendo funciones simples e integradas para nuestros
visitantes.


+Jnos o Tnos?

Dicen que sobre gustos no hay nada escrito.... y esta no es la excepción. Los
dos progamas ofrecen prestaciones similares, aunque alguno pueda ser mas
completo que el otro. Hay quienes basan su preferencia en la cantidad de
comandos, en las innovaciones, en su estabilidad, en su simplicidad,
efectividad, etc etc etc.
Serß cuestión de probarlos y que cada uno opte por el que mas le convenga.
Después de todo, la puesta en marcha bajo linux, es similar para los dos
programas.
Instalando un Jnos bajo Linux

Necesitaremos un ejecutable para linux, que podemos compilar nosotros mismos, o
bien conseguirlo ya compilado.
Es posible encontrar tanto los fuentes como el ejecutable compilado y buena
documentación en:

ftp://pc.usl.edu/pub/ham/jnos

Suponiendo que bajamos el ejecutable, (podemos dejar el proceso de compilación
propio para mas adelante) lo encontraremos facilmente por ser el unico archivo
con extensión .gz
Lo colocaremos en un directorio, por ejemplo, 
/jnos
y dentro de ese dir, descomprimimos el archivo:

gunzip -d lnxjnos111e.gz

y obtendremos un archivo ejecutable, pero ya sin la extensión .gz.

Cada vez que Jnos sea ejecutado, crearß un archivo "lock" mientras esté
ejecutandose. Este archivo se alojarß en: /var/spool/locks/ de nuestro sistema
operativo. Si estos dirs no los tenemos, deberemos crearlos manualmente.

Al ejecutar Jnos por primera vez, se crearan los directorios escenciales para
su operación. Aquellos que no sean creados, como por ejemplo /jnos/public
/jnos/upload etc. los podremos copiar desde algún jnos que tengamos operativo
bajo DOS.
Recordemos que Linux es "case sensitive" y por lo tanto diferencia entre
minúsculas y mayúsculas. Aquí tanto los dirs como los archivos deben estar en
minusculas. De lo contrario nuestro Jnos no los leerß.
No olvidemos crear, o copiar, el archivo ftpusers.
Podremos copiar desde el Jnos de DOS el autoexec.nos para tener la base de los
parßmetros a utilizar (Excepto los relacionados con la memoria, que a linux no
le interesan), y por supuesto con nuestra Licencia e IP.
Como ya explicamos, no "attacharemos" la SCC directamente, sino que lo haremos
a una pseudo-terminal. Podremos utilizar la siguiente instrucción en el
autoexec.nos:

attach asy ttyp0 - ax25 2m 1024 256 38400

Recordemos que del otro lado -es decir en el sistema operativo- debemos tener
ejecutadas la lineas:

sccinit
ifconfig scc0 44.153.x.x hw ax25 lu0xxx-x (IP diferente a la del Jnos)
net2kiss -i scc0 -v /dev/ptyp0

A esta altura, ya se supone que tenemos configurado el driver z8530drv y
cargadas las utilidades ax25. Entonces estamos en condiciones de correr nuestro
jnos. Entrando en el dir correspondiente lanzaremos:

./jnos

Si todo salió bien, nuestro jnos ya estarß cargado y estarß esperando
instrucciones.

Si queremos instalr sobre el jnos en servidor http, podremos seguir los
siguientes pasos.
Ante todo asegurarnos que el ejecutable que tenemos, tiene compilado el http
server.
Para ello podremos tipear en el prompt:
finger info
Si todo estß en orden, debería decir:
TCP SERVERS: HTTP (Ademßs del resto de servidores que tiene compilado el jnos).
Debemos crear un directorio, por ejemplo /jnos/wwwroot donde alojaremos toda la
estructura de directorio de nuestra pßgina Web.
En el autoexec.nos debemos agregar la linea:

start http 80 D /jnos/wwwroot

NOTA: 80 es el puerto que se usa generalmente para http, y /jnos/wwwroot es el
directorio que creamos anteriormente. Allí incluiremos nuestra pßgina
principal, a la que llamaremos
root.html de ahí en mas colgarß el resto de sitio.
Por último, debemos crear el archivo /jnos/spool/access.www para habilitar el
acceso a nuestra pßgina web. No importa que este archivo esté vacío, pero es
indispensable que sí exista.
El nombre del dir donde alojaremos la pßgina (para este ejemplo llamado
wwwroot) puede ser cualquiera. Sólo basta que coincida con el declarado en el
autoexec.nos.
Instalando un Tnos bajo Linux

Tnos, son las iniciales de Tampa Network Operating System, y fue desarrollado
por Brian Lantz (KO4KS), tomando gran parte del desarrollo de Phil Karn (KA9Q)
en versiones anteriores de otros NOS.
Al igual que Jnos, se los puede ejecutar tanto en DOS como en Linux. Por ello
seremos cuidadosos al elegir el paquete a instalar. Para obtener detalles y
bajar los paquetes, podremos visitar la pßgina del autor:

http://www.lantz.com


Alli, podremos encontrar el paquete autoinstalable para linux en versión rpm, y
lo instalaremos en nuestro sistema, por ejemplo en el directorio /tnos

rpm -i tnos-base-2.30-release.i386.rpm

Ingresando al dir /tnos encontraremos los archivos necesario y deberemos crear
el autoexec.nos para incluir los parßmetros de inicialización de sistema.
Para generar un autoexec.nos en forma asistida tipearemos:
tcl mksetup.tcl
Luego de contestadas las preguntas encontraremos un nuevos archivo:
autoexec.tlc
que debemos renombrar como autoexec.nos
Ahora debemos editar este archivo, para cambiar los seteos necesarios. Entre
ellos, los attachments.
Ademas encontraremos un dir llamado /tnos/etc/ donde se encuentran alojados
distintos archivos de configuración. Allí crearemos el archivo:
/tnos/etc/security
que comple la misma función de ftpusers en jnos.
Un ejemplo de contenido de "security" sería

univperm * /tnos/public 131097

Esto significa, para cualquier estación, con cualquier password, habilitando
para el dir /tnos/public con permiso 131097)

Volviendo al autoexec.nos, tal lo descripto anteriormente y al igual que en
Jnos, no atacharemos la SCC directamente, sino que lo haremos a una
pseudo-terminal. Podremos utilizar la siguiente instrucción en el autoexec.nos:

attach asy ttyp0 - ax25 2m 1024 256 38400

Recordemos que del otro lado -es decir en el sistema operativo- debemos tener
ejecutadas la lineas:

sccinit
ifconfig scc0 44.153.x.x hw ax25 lu0xxx-x (IP diferente a la del Tnos)
net2kiss -i scc0 -v /dev/ptyp0

A esta altura, ya se supone que tenemos configurado el driver z8530drv y
cargadas las utilidades ax25. Entonces estamos en condiciones de correr nuestro
Tnos. Entrando en el dir correspondiente lanzaremos:

./tnos -U 0

Por delante quedarß, una configuración mas avanzada y personalizada del Tnos.
Interconectando el Nos con el Sistema Operativo


Hasta ahora tenemos un sistema operativo con una IP y un NOS (ya sea Jnos ó
Tnos) con otra. Cada uno sale aire por si mismo como si fueran dos estaciones
diferentes en una misma mßquina. Pero por qué no interconectar internamente el
NOS y el sistema operativo en TCP/IP si cada uno tiene su propio número? Esto
nos daría grandes ventajas. Por ejemplo: el NOS puede ser nuestro servidor, y
en el Sistema operativo un Netscape puede ser el cliente!
Con unos pocos comandos, y si hemos incluido soporte para conexiones SLIP al
compilar el Kernel, obtendremos la solución.
Crearemos un puerto SLIP en el sistema operativo y otro del lado del NOS.

#Attach en el autoexec.nos
attach asy ttypf - slip linux 1024 1024 38400
route add 44.153.33.70 linux

#En una terminal del sistema operativo tipearemos:
slattach -s 38400 -p slip /dev/ptypf &
ifconfig sl0 44.153.33.70 up
route add 44.153.32.70 sl0

Las Ip colocadas aquí son solo ejemplos. Notemos que en el autoexec.nos
"atachamos" el puerto slip al que denominamos "linux" y que agregamos una ruta
a la IP del sistema operativo a través de "linux".
Del otro lado, en el sistema operativo, atachamos el puerto SLIP, luego le
asignamos la misma IP con la que levantamos los ifconfig del sistema operativo,
y luego por ese puerto colocamos una ruta hacia la IP del NOS.

Ya esta!!! Si todo quedó en orden, podremos enviar los primeros pings de un
lado hacia el otro.

Haciendo todo mßs Simple

Los resultados de ésta configuración son por demßs interesantes. Pero si cada
vez que encendemos la mßquina hay que tipear tantas cosas, nos cansaremos sobre
el teclado. Por lo tanto, las configuraciónes del NOS quedarßn guardadas en el
autoexec.nos y las configuraciones para el S.O., en un archivo que es leído al
iniciar el sistema.
Por ello si utilizamos Red Hat localizaremos el archivo:

/etc/rc.d/rc.local 

y si utilizamos SuSE:

/etc/rc.d/boot.local

si utilizamos otra distribución, buscaremos el archivo que cumpla funciones
similares para la carga de comandos, al arrancar el sistema.

Allí incluiremos todo aquello que necesitemos para la configuración:
Por ejemplo, al final del archivo incluiremos:

sccinit
ifconfig scc0 44.153.33.70 hw ax25 lwxxxx-5
sleep 1
net2kiss -i scc0 /dev/ptyp0 &
sleep 1
slattach -s 38400 -p slip /dev/ptypf &
sleep 1
ifconfig sl0 44.153.33.70 up
sleep 1
route add 44.153.32.70 sl0

Como vemos, inicializamos el driver para la SCC, adjudicamos IP y licencia,
ejecutamos el net2kiss, levantamos el puerto SLIP, le adjudicamos la IP y la
ruta.
Los instrucciones sleep 1 forzarßn una pequeña espera entre cada comando.
Depende de la mßquina a utilizar, serßn necesarios o no.
Tambien notamos que al finalizar algunas líneas, colocamos el símbolo &
(ampersand), con esto colocaremos el proceso en "background" y ya no nos
ocuparß una terminal para ejecutarse.
Configurando el NOS para arrancar  y rearrancar automaticamente


Hasta aquí hemos descripto como autoconfigurar linux para radio. Pero para
levantar
un jnos o un tnos era necesario loguearse en una tty e invocar el programa.
Si queremos que el NOS se autoejecute a iniciar Linux deberemos configurar
apropiadamente
el archivo startnos ubicado en el directorio principal del nuestro NOS. Un
ejemplo sería:

#!/bin/bash
sleep 2
ps -aux | grep " ./jnos" | while read user pid rest
do
kill -STOP ${pid} 2>/dev/null
sleep 2
kill -KILL ${pid} 2>/dev/null
done
sleep 3
/bin/rm /jnos/spool/mqueue/*.lck 2>/dev/null
/bin/rm -f /jnos/spool/mail/*.lck 2>/dev/null
cd /jnos
#export TZ=GMT0
#export TERM=console
sleep 1
exec ./jnos < $1 > $1 2>&1



Asimismo debemos indicarle a linux que busque este script y abra el nos en la
tty indicada. A tal efecto en /etc/inittab incluiremos una linea que diga:


7:2345:respawn:/jnos/startnos /dev/tty7


Para que esto funcione, no olvidemos de dar al archivo startnos los permisos de
ejecucion correspondientes.
La linea ubicada en /etc/inittab invocarß el script ubicado en el startnos y
abrirß sin
necesidad de logueo la tty7. Allí se correrß el nos ejecutable indicado en el
startnos.
Si por alguna razon el NOS deja de funcionar, este script localizarß el proceso
en que
corría el NOs, lo matarß y volverß a ejecutar el NOS.


73,   y que disfruten Linux!!! 

Pino LW2DIE
lw2die@yahoo.com

Diego LW2DTQ
lw2dtq@yahoo.com

Jorge LW7DCO
lw7dco@yahoo.com


Septiembre 2000  Agradecemos por la ayuda a LU9AKT (Marcelo) ,  LU4AEY
(Claudio) y LW9EAU (Damißn).


Read previous mail | Read next mail


 11.05.2024 21:54:20lGo back Go up