Sophie

Sophie

distrib > Mandriva > 2010.2 > i586 > media > contrib-release > by-pkgid > d4a36cd8eec1e62a271ae2c3849c2562 > files > 47

howto-sgml-es-2006-5mdv2010.0.noarch.rpm

  RDSI COMO
  Antonio Verdejo García, averdejog.galileo@nexo.es
  pacopepe@insflug.org
  v0.2, 5 de Julio de 1998.

  Este COMO explica cómo configurar tarjetas pasivas RDSI para conex­
  iones de red PPP con Linux (a Internet, servidores...). Describe los
  pasos para dar soporte tanto físico como lógico, así como el método de
  conexión, con 1 y 2 canales, y con llamada bajo demanda.
  ______________________________________________________________________

  Índice General:

  1.      Introducción

  2.      Hardware Soportado - Recomendado

  2.1.    Modelos de tarjetas pasivas

  2.2.    Soy muy precavido, y estoy leyendo esto antes de comprar la
  tarjeta. ¿Cuál recomendáis?

  3.      Integración física

  4.      Configuración BIOS

  5.      Configuración de recursos usados por el dispositivo.

  5.1.    Dispositivos Plug & Play

  5.2.    Configuración de dispositivos NO PnP

  6.      Instalación y configuración de controladores

  6.1.    Soporte específico a la tarjeta

  6.2.    Configuración del Kernel

  6.2.1.  Soporte genérico en el kernel

  6.2.2.  Soporte específico a la tarjeta

  6.3.    Carga de los módulos - comprobación del sistema

  7.      Instalación y configuración de software de aplicación

  7.1.    Pero bueno, ¡¿qué cómo conectooo?!

  7.2.    Scripts

  7.2.1.  rc.isdn  para un solo canal

  7.2.2.  rc.isdn  para dos canales

  7.2.3.  Explicación de los scripts

  7.2.4.  ip-up

  7.2.5.  ip-down

  8.      Problemas Frecuentes

  8.1.    Al lanzar la conexión miro el /var/log/messages  y sólo veo
  (una vez tras otra):

  8.2.    La conexión se corta tras un mensaje como:

  8.3.    Al inicializar el demonio ipppd obtengo el mensaje `` Can't
  find usable ippp device'' . ¿A qué es debido?

  9.      Por Hacer

  10.     Copyright y Propiedad Intelectual

  11.     Colofón

  11.1.   ¿Y no tenéis nada que agradecer a nadie?

  11.1.1. De Antonio Verdejo

  11.1.2. De Francisco J. Montilla

  12.     Anexo: El INSFLUG
  ______________________________________________________________________

  1.  Introducción

  Tanto bajo Linux como bajo cualquier sistema operativo (tal vez con la
  diferencia de que Linux hará exactamente lo que le digamos, para bien
  o para mal) los pasos lógicos para hacer uso de cualquier periférico,
  son los siguientes, del orden más físico al más lógico:

  1. Comprobar que la marca y modelo del dispositivo están soportados.

  2. Integrar el dispositivo físicamente (pinchar la tarjeta o
     conectarla, y demás conexiones accesorias).

  3. Comprobar su integración a nivel hardware: en los casos en que sea
     posible, que el ordenador reconozca dicho dispositivo. Por ejemplo,
     si el dispositivo es PnP, en BIOS Plug & Pray, aparecerá al
     encender el ordenador, en alguna de las fases de testeo.

  4. Comprobar / configurar qué parametros usa (IRQ, Direcciones de
     memoria base, etc).

  5. Instalar los controladores de acuerdo a dichos parámetros.

  6. Instalar el software / utilidades necesarios para el uso efectivo
     de dichos dispositivos.

  Este proceso debe debe realizarse siguiendo estrictamente dicho orden,
  no pasando a la etapa siguiente a menos de que estemos completamente
  seguros de haberse llevado a cabo bien la previa. Y se aplica a la
  integración de cualquier dispositivo bajo cualquier Sistema Operativo,
  si bien no muchos de los que se hacen llamar así hacen honor a su
  nombre como lo hace Linux ;-).

  2.  Hardware Soportado - Recomendado

  Pese a que las conexiones RDSI se pueden llevar a cabo tanto mediante
  adaptadores externos como tarjetas pasivas internas, en este documento
  nos centraremos en (y recomendamos) las tarjetas pasivas, por
  considerarlas una opción mejor respecto a adaptadores externos RDSI,
  ya que:

  1. Su coste es generalmente 5 o 6 veces menor.

  2. La diferencia de rendimiento es inexistente.

  3. Es independiente de los puertos serie, no afectando al rendimiento
     o incluso viabilidad, el tipo de UART que se tenga (esto es muy
     importante si pensamos montar una pasarela a Internet con ese viejo
     486 que rueda por la oficina).

  4. El software y los drivers para las tarjetas pasivas internas
     permiten hacer auténticas virguerías, con una perfecta integración,
     a diferencia de los módems RDSI.

  2.1.  Modelos de tarjetas pasivas

  La gran mayoría de los modelos que se listan a continuación son
  tarjetas internas pasivas. El número de tarjetas soportadas crece casi
  con la misma velocidad que se suceden versiones del núcleo. Tenga en
  cuenta que si posee un adaptador externo (Zyxel o USR) el método que
  se empleará será el primero descrito en este documento (usando los
  scripts levemente modificados que se usan en una conexión con un módem
  analógico).

  Por fortuna, este tipo de dispositivos suelen ser poco comunes (por su
  alto precio y nula diferencia en rendimiento en comparación con una
  tarjeta interna, además de no soportar el dial on demand ---llamada
  bajo demanda, en adelante DoD--- integrado directamente en el ipppd
  que sí soportan los dispositivos ipppX).

  En cualquier caso, los problemas de configuración que presentan se
  reducen al mínimo, y pasan por ajustar (en determinados casos) la
  cadena de inicialización del guión de chat.

  Nos centraremos pues, casi en exclusiva, en las tarjetas internas.

  La lista está sacada de los ficheros README.* que acompañan a la parte
  del arbol de fuentes correspondientes al soporte RDSI que modifica un
  fichero .tar.gz del que hablaremos más adelante en este documento:

  ·  Teles 8.0/16.0/16.3 y compatibles

  ·  Teles 16.3c

  ·  Teles S0/PCMCIA

  ·  Teles PCI

  ·  Teles S0Box

  ·  Creatix S0Box

  ·  Creatix PnP S0

  ·  Compaq ISDN S0 ISA

  ·  AVM A1 (Fritz, Teledat 150)

  ·  ELSA Microlink PCC-16, PCF, PCF-Pro, PCC-8

  ·  ELSA Quickstep 1000

  ·  ELSA Quickstep 1000PCI

  ·  ELSA Quickstep 3000 (igual que una QS1000)

  ·  ELSA Quickstep 3000PCI

  ·  ELSA PCMCIA

  ·  ITK ix1-micro Rev.2

  ·  Eicon.Diehl Diva 2.0 ISA y PCI (S0 y U, PRO no soportada)

  ·  Eicon.Diehl Diva Piccola

  ·  ASUSCOM NETWORK INC. ISDNLink 128K PC adapter (código I-IN100-ST-D)

  ·  Dynalink IS64PH (versión OEM de ASUSCOM NETWORK INC. ISDNLink 128K
     adapter)

  ·  Tarjetas basadas en HFC-2BS0 (TeleInt SA1)

  ·  Sedlbauer Speed Card (Speed Win, Teledat 100)

  ·  Sedlbauer Speed Star (PCMCIA)

  ·  USR Sportster internal TA (compatible Stollmann tina-pp V3)

  ·  ith Kommunikationstechnik GmbH MIC 16 ISA card

  ·  Traverse Technologie NETjet PCI S0 card

  ·  Dr. Neuhaus Niccy PnP/PCI

     Notas:  PCF, PCF-Pro: por ahora, solo la parte ISDN está soportada

  ·  PCC-8: sin testear

  ·  Teles PCMCIA es EXPERIMENTAL

  ·  Teles 16.3c es EXPERIMENTAL

  ·  Teles PCI es EXPERIMENTAL

  ·  Teles S0Box es EXPERIMENTAL

  ·  Eicon.Diehl Diva U interface sin testear

  ·  ICN-ISDN-card

  ·  PCBIT

  ·  ISDN ISA SpellCaster

  Tenga en cuenta que esta es una lista general. Muchos de los modelos
  que aquí aparecen, no se encuentran en el mercado español. La mayoría
  de las tarjetas son de origen alemán. La PCBIT es un "honrosa"
  excepción: está fabricada en Portugal.

  De las tarjetas distribuidas por Telefónica y manufacturadas por
  Alcatel (si no recordamos mal), las infames SPC-2 en cualquiera de sus
  versiones (y sobre todo en la primera), ni hablaremos.

  Ninguno de los que suscriben tienen noticia (pese a utilizar en parte
  de su circuitería los chips Siemens) de que alguien haya conseguido
  hacerla funcionar bajo Linux. En cualquier caso, su funcionamiento
  (bajo un SO que incluya soporte para la misma) deja mucho que desear.

  Y como siempre, visita obligada a la documentación que incluye el
  código fuente del núcleo (máxime si se aventura a usar un kernel de la
  serie 2.1) bajo Documentation/isdn para obtener una lista lo más
  actualizada posible.

  2.2.  tarjeta. ¿Cuál recomendáis?  Soy muy precavido, y estoy leyendo
  esto antes de comprar la

  Como decíamos en la sección ``'', ante todo, tarjetas pasivas internas
  (que estén soportadas, claro está) frente a adaptadores RDSI externos.

  En general, las tarjetas pasivas con circuitería Siemens, y
  especialmente las que integran el juego de chipsets HSCX e ISAC, dado
  que el driver HiSax es el más desarrollado y el que más empuje tiene.

  Teniendo como criterios lo anterior, el rendimiento, la calidad, y la
  colaboración que las marcas tienen con Linux en general, y con los
  desarrolladores de isdn4linux en particular:

  1. ELSA

  2. Creatix

  3. Resto de tarjetas soportadas

  La Creatix PnP es casi equivalente a la Teles 16.3 PnP (-- Ojo, NO la
  Teles 16.3c PnP, que pese a estar soportada experimentalmente, no
  tiene nada que ver en cuanto a calidad--) , si bien ha sido
  desarrollada íntegramente por Creatix; además de la actitud positiva
  de Creatix respecto Linux, a diferencia de Teles.

  ¡Apoye a los fabricantes que apuestan por Linux!

  3.  Integración física

  Aparte de las precauciones con la estática, (agárrese antes a algún
  objeto con bastante masa y conexión a tierra, como una tubería o
  radiador, para descargarla) es conveniente familiarizarnos con el
  dispositivo, anotar cuando proceda qué chipset tiene, si tiene o no
  jumpers, si es así para qué valen, etc.

  Asegúrese de que la tarjeta queda firmemente asentada, más de un
  problema inexplicable se ha debido muchas veces a esto.

  En algunas placas base, especialmente las de 486, no da completamente
  igual dónde se pincha la tarjeta. Familiarícese con su Placa Base.

  Los dispositivos RDSI suelen conectarse mediante cables de pares pin-
  a-pin, si bien no es estrictamente necesario que el cable sea de
  pares. El conector suele ser un RJ-45, idéntico a los usados para
  redes.  Normalmente la tarjeta traerá un cable, pero si no es así, o
  lo necesita más largo, con un cable de red UTP corriente valdrá.
  Teóricamente, y en configuraciones del bus pasivo (instalación
  telefónica propiamente dicha) típicas, el cable puede ser de unos
  centenares de metros, si bien no hemos comprobado nunca de forma
  práctica este particular.

  Una última advertencia, para aquellos que están leyendo esto para
  instalar en una empresa: los dispositivos RDSI suelen llevarse muy mal
  con las centralitas, especialmente con las Siemens.

  Si quiere ahorrarse quebraderos de cabeza, malos funcionamientos,
  interminables actualizaciones del firmware de la centralita, y en la
  mayoría de los casos, para que simplemente funcione, exija que el bus
  pasivo RDSI para la tarjeta sea dedicado y directo. Se ahorrará
  infinidad de problemas, y el funcionamiento será el que un entorno de
  producción exige.

  4.  Configuración BIOS

  La mayoría de las tarjetas de hoy en día son Plug & Play, y esto,
  aunque parezca mentira, en BIOS con PnP es a veces una ventaja; la
  mayoría de ellas muestran al arrancar los dispositivos PnP que han
  encontrado, por lo que si éste es su caso, y no le aparece nada, puede
  tener la absoluta certeza de que para el ordenador es como si no
  existiese. En algunas placas, hay que especificar qué recursos se
  dejan para asignar a los dispositivos PnP.

  En el resto de los casos, en combinaciones de placas / dispositivos no
  Plug & Play, puede ser necesario efectuar algún retoque en la BIOS,
  por ejemplo, si nuestra BIOS es PnP, pero el dispositivo no,
  posiblemente deba reservar recursos y/o asignarlos en la BIOS para él.

  5.  Configuración de recursos usados por el dispositivo.

  5.1.  Dispositivos Plug & Play

  Bajo Linux, y mientras se trabaja en un soporte directo en el kernel
  para este "estándar", habremos de usar las herramientas del paquete
  isapnptools para asignar los recursos precisos al dispositivo. Como su
  nombre indica, solo valen para dispositivos PnP ISA, no para los PCI
  (que de todas formas, casi siempre han sido PnP en cuanto a enchufar y
  listo, no al estándar). La mayoría de los servidores ftp que albergan
  contenidos Linux las tienen, así como las distribuciones Linux más
  populares.

  Para configurar la tarjeta, use el programa pnpdump y vuelque su
  salida a un fichero, por ejemplo, a /tmp/isapnp.conf.

  Deberá editarlo para reflejar los valores correctos. Una vez hecho
  esto, con isapnp /tmp/isapnp.conf tendrá la tarjeta lista.

  Luego de haber comprobado que los valores son correctos, y que la
  tarjeta se inicializa correctamente, guarde el fichero
  definitivamente, en /etc/isapnp.conf.

  Al arrancar (y suponiendo que haya instalado o tuviera ya instaladas
  correctamente las pnptools) los scripts de inicialización se
  encargarán de todo automáticamente. En cualquier caso, y si viera que
  isapnp no se ejecuta al arrancar el Linux, siempre le queda la
  solución de incluirlo en /etc/rc.d/rc.local o similar, o, en el peor
  de los casos, ejecutarlo a mano.

  El fichero generado por pnpdump del siguiente modo

       [root@hal /root]# pnpdump > /tmp/isapnp.conf

  y suponiendo que sólo tenga una tarjeta PnP, una Teles.SO 16.3c PnP en
  este caso, si tiene una SoundBlaster PnP, esto estará al final
  generalmente, y será similar a esto:

  # $Id: pnpdump.c,v 1.8 1997/01/14 21:05:35 fox Exp $
  # This is free software, see the sources for details.
  # This software has NO WARRANTY, use at your OWN RISK
  #
  # For details of this file format, see isapnp.conf(5)
  #
  # Compiler flags: -DREALTIME
  #
  # Trying port address 0203
  # Board 1 has serial identifier 0d 1a 09 0b 44 10 26 27 50
  # (DEBUG)
  (READPORT 0x0203)
  (ISOLATE)
  (IDENTIFY *)

  # Card 1: (serial identifier 0d 1a 09 0b 44 10 26 27 50)
  # TAG2610 Serial No 436800324 [checksum 0d]
  # Version 1.0, Vendor version 1.1
  # ANSI string -->TELES.S0/16.3c Plug&Play<--
  #
  # Logical device id TAG2610
  #     Device support I/O range check register
  #
  # Edit the entries below to uncomment out the configuration required.
  # Note that only the first value of any range is given, this may be
  changed if $# Don't forget to uncomment the activate (ACT Y) when happy

  (CONFIGURE TAG2610/436800324 (LD 0
  # Multiple choice time, choose one only !

  #     Start dependent functions: priority preferred
  #       Logical device decodes 16 bit IO address lines
  #             Minimum IO base address 0x0580
  #             Maximum IO base address 0x05bc
  #             IO base alignment 4 bytes
  #             Number of IO addresses required: 2
  # (IO 0 (BASE 0x0580))
  #       IRQ 3, 4, 5, 9, 10, 11, 12 or 15.
  #             High true, edge sensitive interrupt (by default)
  # (INT 0 (IRQ 3 (MODE +E)))

  #       Start dependent functions: priority acceptable
  #       Logical device decodes 16 bit IO address lines
  #             Minimum IO base address 0x0500
  #             Maximum IO base address 0x05bc
  #             IO base alignment 4 bytes
  #             Number of IO addresses required: 2
  # (IO 0 (BASE 0x0500))
  #       IRQ 10, 11 or 12.
  #             High true, edge sensitive interrupt (by default)
  # (INT 0 (IRQ 10 (MODE +E)))
  #       Start dependent functions: priority acceptable
  #       Logical device decodes 16 bit IO address lines
  #             Minimum IO base address 0x0680
  #             Maximum IO base address 0x06bc
  #             IO base alignment 4 bytes
  #             Number of IO addresses required: 2
  # (IO 0 (BASE 0x0680))
  #       IRQ 10, 11 or 12.
  #             High true, edge sensitive interrupt (by default)
  # (INT 0 (IRQ 10 (MODE +E)))

  #       Start dependent functions: priority functional
  #       Logical device decodes 16 bit IO address lines
  #             Minimum IO base address 0x1500
  #             Maximum IO base address 0x17fc
  #             IO base alignment 4 bytes
  #             Number of IO addresses required: 2
  # (IO 0 (BASE 0x1500))
  #       IRQ 3, 4, 5, 9, 10, 11, 12 or 15.
  #             High true, edge sensitive interrupt (by default)
  # (INT 0 (IRQ 3 (MODE +E)))

  #     End dependent functions
  #     Vendor defined tag:  84 0f 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  #     Vendor defined tag:  84 06 00 00 00 00 00
  # (ACT Y)
  ))
  # End tag... Checksum 0x00 (OK)

  Simplemente hay que dejar una de las secciones (IO... ) e (INT...)
  eliminando los comentarios, y asegurarse (esto es importante) de
  eliminar el último comentario de la línea donde se lee # (ACT Y) para
  activar la incialización de la tarjeta con los valores escogidos...

  Es conveniente anotar dichos valores, ya que los que tendremos que
  utilizar posteriormente (anótelos).

  Y ni que decir tiene que no debemos asignarle recursos que ya estén
  siendo usados por otros dispositivos. Familiarícese con su sistema.

  Un cat /proc/interrupts o un cat /proc/ioports le ayudará,
  especialmente antes de instalar la tarjeta en el ordenador, siempre y
  cuando todos los dispositivos que tenga su ordenador sean reconocidos
  por Linux, ya que los que no lo sean no aparecerán en los listados y
  no podremos saber qué recursos están usando.

  Refiérase a la sección ``''.

  Un fichero /etc/isapnp.conf, una vez eliminados todos los comentarios
  suele tener este aspecto:

       (READPORT 0x0203)
       (ISOLATE)
       (IDENTIFY *)
       (CONFIGURE TAG2610/436800324 (LD 0
       (IO 0 (BASE 0x0580))
       (INT 0 (IRQ 3 (MODE +E)))
       (ACT Y)
       ))

  La salida del comando isapnp /etc/isapnp.conf, bien sea a mano o
  durante el arranque del sistema, suele ser así:

       [root@hal /root]# isapnp /tmp/isapnp.conf
       Board 1 has Identity 0d 1a 09 0b 44 10 26 27 50:  TAG2610 Serial No 436800324 [checksum 0d]

  5.2.  Configuración de dispositivos NO PnP

  Se supone que ha leído, entendido, y llevado a cabo con la absoluta
  certeza de haberlo hecho bien, la sección ``''.

  No conocemos todos los dispositivos NO PnP disponibles en el mercado
  que funcionan con Linux. Pero la experiencia muestra que generalmente,
  para su configuración tiene las siguientes opciones:

  ·  Usar alguna utilidad, generalmente bajo DOS o Windows.

  ·  Usar Jumpers del dispositivo si los tiene

  ·  Usar una utilidad para linux (en contadísimas ocasiones)

  Normalmente, la más cómoda y fiable es la de los jumpers, ya que no
  deberemos preocuparnos de si los reset borran la configuración o no,
  aunque en algunas tarjetas (Teles.SO 16.3 NO PnP por ejemplo) sólo
  posibilitan la asignación de IOs. (Ojo, con esta tarjeta, son unos
  microrruptores muy pequeños, generalmente con un poco de grasa por
  encima).

  En el primer caso, si son utilidades DOS, siempre podremos arrancar
  con ese disquete antediluviano que rueda por el cajón, y configurar.
  Si es windows, y se tiene instalado también, tal vez tras unas
  encomiendas a San Pancracio, si Murphy está distraído, y la suerte
  está de nuestro lado, consigamos convencerla de que use los recursos
  que queremos.

  En sistemas en los que afortunadamente no esté instalado, siempre
  podemos probar a pincharla en uno que sí lo tenga, configurarla, y
  volverla a pinchar en el sistema Linux, si bien no siempre funciona.

  Otra posibilidad, si la suerte acompaña, es comprobar (la mayor parte
  de las veces mediante ensayo-error, y no siempre con absoluta certeza,
  aunque un vistazo a la documentación de la tarjeta ayuda bastante)
  qué parámetros por defecto tiene el dispositivo de fábrica, y usarlos,
  siempre que no entren en conflicto con otros que ya tengamos
  instalados; si es así, dependiendo de dichos dispositivos puede ser
  hasta más cómodo reconfigurarlos y dejar hueco al nuevo inquilino.

  Recuerde (incluso anote, insistimos) qué parámetros va a usar. Los
  necesitará más adelante.

  6.  Instalación y configuración de controladores

  Los controladores son el software que hace funcionar al dispositivo, y
  que da soporte lógico al Sistema Operativo para interactuar con él. En
  Linux la integración de este soporte se lleva a cabo configurando y
  compilando el núcleo o kernel, con lo que obtenemos un corazón del
  Sistema Operativo a la medida de cada máquina.

  Linux ofrece la posibilidad de compilarlo íntegro en el kernel o en
  módulos aparte, que se cargan según los necesite el sistema o no. Si
  no está familiarizado con todo esto, es momento de que lea el Kernel-
  Como, disponible en el Insflug http://www.insflug.org.

  El kernel necesitará tener dos tipos de soporte; uno genérico, (módulo
  isdn) y otro específico a la tarjeta (hisax, etc).

  Como algunas tarjetas RDSI, especialmente las que tienen soporte
  experimental, sólo funcionan con controladores específicos modulares,
  nos centraremos en este tipo de soporte, por ser más universal.

  No obstante, en los ejemplos supondremos que hacemos uso de kernels
  estables (2.0.xx), aunque tengamos que parchearlos. Puede usar kernels
  de desarrollo si lo prefiere, tan sólo téngalo en cuenta en los
  ejemplos que aplique y modifíquelos en consecuencia, sin olvidar que
  estos kernels son para lo que son, desarrollo, no siendo muy idóneos
  para la instalación por primera vez de algo que se desconoce.

  6.1.  Soporte específico a la tarjeta

  Antes de continuar, suponemos que ha leído la sección ``'' y que sabe
  a ciencia cierta que su tarjeta está soportada.

  Si no parece estarlo, es conveniente que lea (sí, bueno, relea ;-) de
  todos modos la documentación que hay en
  /usr/src/linux/Documentation/isdn que siempre estará más actualizada
  que este Como. Si no, no está todo perdido; obtenga el último árbol de
  desarrollo de ftp://ftp.suse.com/pub/isdn4linux/v2.0/isdn.tar.gz y
  eche un vistazo a los ficheros de isdn/Documentation/isdn/, puede que
  se lleve una grata sorpresa.

  Si su tarjeta está soportada en la distribución estándar del kernel
  actual (2.0.34 a día de hoy), salte a la sección ``''. Si necesita
  parchear, siga leyendo.

  Para añadir soporte al kernel actual, integraremos una parte del árbol
  de fuentes modificada, que añada soporte para la misma. Obtenga el
  fichero ftp://ftp.suse.com/pub/isdn4linux/v2.0/isdn.tar.gz, suele ser
  un enlace simbólico a la última versión del árbol de desarrollo RDSI
  disponible.

  No obstante... el soporte es experimental. Casos típicos son los de
  las últimamente disponibles popularmente Teles.SO 16.3c o las Asuscom.
  Los que suscriben no han visto nada anormal (cierto es que el tiempo
  de que hemos dispuesto para testearlas ha sido breve) y tienen
  noticias de varios servidores de los llamados de producción que están
  funcionando sin problemas con kernels estables y estas tarjetas.

  No obstante, no se parchea en el sentido estricto, ya que lo único que
  se sustituye es la parte correspondiente a RDSI.

  La parte del árbol modificada lleva un fichero llamado std2kern que
  hace el trabajo de parcheo por nosotros, siempre y cuando
  /usr/src/linux sea el directorio donde residan las fuentes de linux.
  Asegúrese de que exista; si en su sistema el directorio se llama
  /usr/src/linux-2.0.33, compruebe, y en su ausencia cree un enlace al
  mismo llamado linux; por ejemplo:

       cd /usr/src ;
       ln -s linux-2.0.33 linux

  Descomprima el árbol de fuentes isdn: suponiendo que ha dejado el
  fichero en /tmp:

       ( cd /usr/src; tar zxvf /tmp/isdn.tar.gz )

  Acceda a /usr/src/isdn, y ejecute el comando std2kern -d:

       cd /usr/src/isdn

  no olvide el "./" para dar el path directo al fichero, en la mayoría
  de los sistemas el directorio actual no está en el PATH por seguridad.

  Compruebe que no se producen mensajes de error. Si es así, averigüe
  qué sucede. Lo más típico es que se haya equivocado en la elección de
  fichero, y haya escogido uno para un kernel de otra versión (2.1.xx
  por ejemplo).

  6.2.  Configuración del Kernel

  Una vez hemos llevado a cabo los pasos anteriores procederemos a la
  configuración y posterior recompilación del kernel. Si no está
  habituado a esto, léase primero el Kernel-Como, disponible en Insflug,
  vea sección ``INSFLUG''.

  Acceda a /usr/src/linux y ejecute su método preferido de
  configuración. Asegúrese de activar, en la sección principal, Code
  maturity level options el apartado Prompt for development and/or
  incomplete code/drivers, o de lo contrario, el programa de
  configuración no le dará opción a seleccionar controladores
  experimentales.

  Una vez hecho esto, seleccione:

  6.2.1.  Soporte genérico en el kernel

  Vaya a la sección ISDN subsystem del menú principal:

  ·  ISDN support como módulo (M).

  ·  Support synchronous PPP

  ·  Support generic MP (RFC 1717) (potestativo, necesario para canales
     múltiples)

  ·  Support audio via ISDN (potestativo)

  Esto es para cuanto a soporte RDSI se refiere. En cuanto a soporte
  PPP, cuestiones específicas de redes, y demás aspectos, recurra al
  Como apropiado.

  6.2.2.  Soporte específico a la tarjeta

  En la sección ISDN subsystem del menú principal, active el controlador
  que dé soporte a su tarjeta. El más popular es el HiSax, si ese es su
  caso, deberá además especificar:

  ·  Protocolo a soportar: en nuestro caso, HiSax Support for EURO/DSS1
     y
  ·  Cuál de la familia de tarjetas soportadas por él es la suya; si por
     ejemplo es la veterana Teles.SO 16.3 NO PnP, la PnP, o la pcmcia
     (NO la 16.3c OJO) seleccionaría HiSax Support for Teles 16.3 or PNP
     or PCMCIA.

  De nuevo, no conocemos ni podemos conocer todas las tarjetas
  soportadas por Linux. Es posible que en drivers experimentales haya
  que indicar alguna otra opción; recurra a su sentido común, a la
  documentación (a la que no nos cansaremos de remitirle; este documento
  no es más que una guía) y a nosotros, a fin de actualizar este Como.

  Salga del menú guardando los cambios, y compile; no olvide el make
  modules y el make modules_install, y reinstalar el LILO para dicho
  kernel.

  Para más información de cómo recompilar el kernel, véase el Kernel-
  Como, disponible en el Insflug, vea sección ``INSFLUG''.

  6.3.  Carga de los módulos - comprobación del sistema

  Ya he recompilado, instalado los módulos, y arrancado con el nuevo
  kernel.  Además, he usado isapnp y todo parece haber ido bien...  ¿Qué
  hago ahora?

  Se ha ganado un descanso. Tómese algo... ;-) No, en serio. Ahora viene
  la parte más interesante.

  Hay varias formas de cargar los módulos, en cualquier caso, la manera
  que nunca falla es hacerlo a mano directamente desde la línea de
  comandos.  Supondremos que hacemos uso del soporte específico HiSax.
  La sintaxis del módulo hisax es la que sigue, si bien es conveniente
  leer (al final lo conseguiremos ;-), especialmente en drivers
  experimentales, /usr/src/linux/Documentation/isdn/README.HiSax.

       modprobe hisax type=<codigo tarjeta> protocol=<protocolo> io=<direccion E/S> irq=<interrupcion>

  Ha llegado el momento de echar mano de donde tuviera anotados (¿los
  anotó?)  los parámetros que asignara en las secciones ``'' y ``''.

  Suponiendo que se trate de la tarjeta Teles.SO 16.3c PnP, que al fin y
  al cabo, fue la causante en origen de este Como:

       modprobe hisax type=14 protocol=2 io=<IO> irq=<IRQ>

  Por ejemplo:

       modprobe hisax type=14 protocol=2 io=0x0580 irq=11

  con lo que si miramos en /var/log/messages deberíamos ver algo como:

       Jun 23 12:05:11 hal kernel: HiSax: Driver for Siemens chip set ISDN cards
       Jun 23 12:05:11 hal kernel: HiSax: Version 2.8
       Jun 23 12:05:11 hal kernel: HiSax: Revisions 1.15.2.8/1.10.2.5/1.10.2.3/1.30.2.6/1.8.2.5
       Jun 23 12:05:11 hal kernel: HiSax: Card 1 Protocol EDSS1 Id=HiSax (0)
       Jun 23 12:05:11 hal kernel: HiSax: Teles 16.3c driver Rev. 1.1.2.2
       Jun 23 12:05:11 hal kernel: teles3c: defined at 0x580 IRQ 3 HZ 100
       Jun 23 12:05:11 hal kernel: teles3c: resetting card
       Jun 23 12:05:11 hal kernel: Teles 16.3c: IRQ 11 count 0
       Jun 23 12:05:11 hal kernel: Teles 16.3c: IRQ 11 count 1
       Jun 23 12:05:11 hal kernel: HiSax: DSS1 Rev. 1.16.2.3
       Jun 23 12:05:11 hal kernel: HiSax: 2 channels added
       Jun 23 12:05:11 hal kernel: HiSax: module installed

  El tipo 14 es el que se corresponde con la Teles 16.3c PnP, el
  protocolo 2 es el usado en España para las conexiones RDSI, EURO ISDN
  o EDSS1. Los otros dos valores (dirección de E/S e interrupción)
  dependerán de su configuración particular, que anotó en su momento,
  ¿verdad?

  Dependiendo del driver, este puede que se cargue aun con parámetros
  erróneos, si bien no es el caso del HiSax, que rehusará a hacerlo.

  Si sospechamos que pese a haberse cargado (repetimos, no en el caso
  del HiSax) hay por ejemplo conflictos de IRQ, o no está usando la que
  le hemos asignado, un indicador claro de esto es que al hacer un

       cat /proc/interrupts
        0:    9719062   timer
        1:     342221   keyboard
        2:          0   cascade
        4:     495989 + serial
       10:    1591809   ICN
       12:        681   eth0
       13:          1   math error

  en un sistema con una tarjeta ICN la línea correspondiente a la irq
  usada por el controlador contase con 0 interrupciones de contador
  (segunda columna). Esto aplica para todos los dispositivos; si la
  línea

       10:    1591809   ICN

  fuese

       10:    0         ICN

  sería un claro síntoma de que el driver ICN no está usando dicha
  interrupción, casi seguro por fallo de configuración. Tan sólo por
  cargar correctamente,  debe de poner el contador a 1 al menos.

  Llegados a este punto, respire profundamente y siéntase todo un gurú
  Linuxero...  ;-) Ya casi está listo; para no tener que hacerlo en un
  futuro a mano, y suponiendo que tiene las modutils correctamente
  instaladas, edite o cree su /etc/conf.modules o /etc/modules.conf e
  inserte las siguientes líneas, (suponiendo que use por ejemplo una
  Teles 16.3 NO PnP/ con la IRQ 10 y la io 0x180 :

       alias isdn hisax
       options hisax type=3 protocol=2 io=0x180 irq=10

  ejecute depmod -a para computar/actualizar las dependencias entre
  módulos; de ahora en adelante un modprobe hisax bastará.

  7.  Instalación y configuración de software de aplicación

  Mi tarjeta parece que ya está lista. ¿Puedo usar los scripts de
  conexión a Infovía que usaba hasta ahora?

  No tal cual;  necesitará hacer ciertas modificaciones. Usaremos otro
  método para conectarnos a iNET. En vez de usar el pppd asíncrono de
  toda la vida, usaremos un pppd especial, síncrono, que permite algunas
  lindezas: el ipppd.

  Arranque su cliente ftp favorito, y diríjase a
  ftp://ftp.franken.de/pub/isdn4linux/v2.0/isdn4linux*.tar.gz que es el
  sitio oficial del ISDN4Linux. Ahí tiene una mágnifica (aunque algo
  falta de actualización) FAQ en un perfecto inglés que debería tener al
  menos como punto de referencia.

  Le remitiríamos a ella, pero si ha llegado hasta aquí y hacemos eso
  igual empezamos a sentir agudos pitidos en los oidos... ;-)

  Descomprimimos, configuramos, compilamos e instalamos. De la lista de
  utilidades las que más nos interesan, son isdnctrl (directorio isdn) y
  el ipppd (directorio ppp4i4k/ipppd/version) porque son las que
  usaremos en el método que describiremos después.

  Normalmente, casi todas las distribuciones suelen llevar un paquete de
  utilidades RDSI que incluyen los programas que mencionamos, amén de
  abundante documentación y scripts de ejemplo. Busque en su
  distribución favorita.

  No obstante, si por alguna razón no consigue compilar los elementos
  necesarios, en ftp://ftp.insflug.org/pub/RDSI/ tiene a su disposición
  el software mínimo necesario ya compilado.

  Como en todo sistema UN*X la comunicación con los dispositivos físicos
  (tarjetas, discos...) se realiza por medio de ficheros. Necesitaremos
  crear los dispositivos que harán que el kernel pueda trabajar con la
  tarjeta RDSI. Si usa un paquete de una distribución es casi seguro que
  creará, si no lo están ya, las entradas necesarias en el directorio
  /dev, si no es así, ejecute make devices en el directorio raíz de las
  isdn4utils que bajó antes, será sufiente.

  7.1.  Pero bueno, ¡¿qué cómo conectooo?!

  Vamos con ello. Dos métodos, uno de ellos mencionado someramente. Se
  basa en aprovechar los scripts de conexión (que suponemos le
  funcionan) usados con un módem analógico normal. Las variaciones son
  mínimas. Añada en el guión de chat la cadena de inicio

       ATS14=3&xxxxxxxxx (siendo xxxxxxxxx el numero de su linea RDSI)

  y sustituya donde corresponda el dispositivo /dev/modem por
  /dev/ttyI0. Usaremos el pppd normal y corriente que usábamos antes con
  el módem. Nada más que decir de este método, salvo que no haga uso del
  parámetro +ua en el fichero options, está obsoleto en las últimas
  versiones del paquete pppd.  .

  El segundo hace uso de las utilidades que nos bajamos anteriormente, y
  nos permitirá conseguir llamadas bajo demanda (dial on demand, DoD).

  Opción ésta muy interesante en redes donde se vaya a usar la conexión
  RDSI para dar servicio iNET, por medio del enmascaramiento IP, a
  varios puestos de una red local, pues posibilitará el que la llamada
  se efectúe automáticamente por tráfico de paquetes (abrir un
  navegador, lanzar el programa de correo, hacer un ping, etc.).

  La parte más importante de este método reside en los scripts usados
  para configurar la conexión. Los hay de múltiples formas, más o menos
  "sofisticados". Los incluidos en este documento puede que no sean para
  ganar un Nobel, pero funcionan bastante bien. En este sentido, estamos
  abiertos (no hace falta decirlo) a modificaciones y/o comentarios,
  pero de eso hablaremos más tarde.

  Unos puntos a destacar. Si queremos usar DoD, necesitaremos tener dos
  scripts en /etc/ppp también incluidos, para asegurarnos que la ruta
  por defecto apunte siempre a una dirección de iNET y al dispositivo
  RDSI.

  Esto, y, por supuesto, NO tener ninguna ruta por defecto a la(s)
  tarjeta(s) de red (ethernet normalmente) que ya tuviéramos en nuestro
  sistema: el demonio de PPP (pppd o ipppd) no reemplaza la ruta por
  defecto, es un problema muy común en los grupos de noticias y en los
  canales de Linux de IRC.

  El síntoma es que la conexión se establece, pero no podemos salir a
  iNET porque no tenemos señalizado por dónde hacerlo. No es el
  propósito de este documento extenderse demasiado en temas de rutado,
  pero en condiciones normales, no necesitaremos ruta por defecto,
  podemos usar rutas estáticas;  dejaremos que el (i)pppd la establezca
  cuando así sea necesario.

  Y será uno de los scripts (ip-down) el que se encargará de que en todo
  momento haya una ruta por defecto a iNET por la tarjeta RDSI.

  7.2.  Scripts

  Hace cosa de un mes fueron enviados a la lista de correo (¿aún no está
  suscrito? ¿a qué espera? ;-) del SLUG (l-linux@calvo.teleco.ulpgc.es),
  de modo que si está suscrito y no borra los mensajes, imagino que los
  tendrá.
  Pero como no todo el mundo está en dicha lista (y este Como, que duda
  cabe, no sería tal sin ellos), aquí van:

  7.2.1.  rc.isdn  para un solo canal

       #!/bin/sh
       #
       # Thanks to Rainer Birkenmaier <rainer@kirk.mop.uni.ulm.de>
       # Hacked by Antonio Verdejo Garcia <averdejog.galileo@nexo.es>
       # & Francisco J Montilla <pacopepe@insflug.org>

       PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin

       LOCAL_NUMBER="xxxxxxxxx"
       REMOTE_NUMBER="xxx"
       LOCAL_IP="195.76.154.169" # IP falsa por la que establecer ruta por
                                 # defecto, a fin de que salte el DoD
       DEVICE="ippp0"
       USER="user@ISP"

       isdnctrl addif  $DEVICE                 # Creamos un interfaz nuevo,'DEVICE'
       isdnctrl addphone $DEVICE out $REMOTE_NUMBER    # Numero al que llamar
       isdnctrl eaz $DEVICE $LOCAL_NUMBER      # EAZ: el numero de su RDSI
       isdnctrl l2_prot $DEVICE hdlc           # para PPP sincrono
       isdnctrl l3_prot $DEVICE trans          #
       isdnctrl encap $DEVICE syncppp          # encapsulacion de paquetes IP en
                                               # en  tramas PPP
       isdnctrl huptimeout $DEVICE 300         # tiempo de inactividad tras el que
                                               # desconectar: 300 sec. -> 5min
       isdnctrl chargehup $DEVICE off          # Colgar antes del siguiente paso
       isdnctrl secure $DEVICE on              # Aceptar llamadas de numeros
                                               # autorizados solamente
       ifconfig $DEVICE $LOCAL_IP
       route add -net 195.76.154.0 $DEVICE
       route add default $DEVICE

       /sbin/ipppd user $USER remotename infovia -d defaultroute noipdefault \
       ipcp-accept-local ipcp-accept-remote mru 1500 mtu 1500 lock -bsdcomp -pc -ac /dev/ippp0 &

  las últimas dos líneas son una en realidad; puede indicar que se
  interprete como una sola tal y como se hace en el script con el \; o
  bien ponerlo en una sola línea sin retorno de carro.

  Asegúrese de que ipppd está en /sbin si transcribe tal cual este
  script; si no es así, modifique el path en el script.

  Vea la sección ``'' para una explicación acerca de qué parámetros ha
  de modificar y una explicación sobre este script.

  7.2.2.  rc.isdn  para dos canales

  #!/bin/sh
  #
  # Thanks to Rainer Birkenmaier <rainer@kirk.mop.uni.ulm.de>
  # Hacked by Antonio Verdejo Garcia <averdejog.galileo@nexo.es>

  PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin

  LOCAL_NUMBER="xxxxxxxxx"
  REMOTE_NUMBER="xxx"
  LOCAL_IP="195.76.154.169" # dummy; the IPCP negotiation overwrite it
  DEVICE="ippp0"
  USER="user@ISP"

  # additional for channel bundling:
  DEVICE1="ippp128"

  isdnctrl addif  $DEVICE                 # Create new interface 'DEVICE'
  isdnctrl addphone $DEVICE out $REMOTE_NUMBER    # Set outgoung phone-number
  isdnctrl eaz $DEVICE $LOCAL_NUMBER      # Set local EAZ ..
  isdnctrl l2_prot $DEVICE hdlc           # for sync PPP: set Level 2 to HDLC
  isdnctrl l3_prot $DEVICE trans          # not really necessary, 'trans' is default
  isdnctrl encap $DEVICE syncppp          # encap the IP Pakets in PPP frames
  isdnctrl huptimeout $DEVICE 300         # Hangup-Timeout is 300 sec. -> 5 min
  isdnctrl chargehup $DEVICE off          # Hangup before next Charge-Info
  isdnctrl secure $DEVICE on              # Accept only configured phone-number

  # additional for channel bundling:
  isdnctrl addslave $DEVICE $DEVICE1      # Create new slave interface 'DEVICE1'
  isdnctrl addphone $DEVICE1 out $REMOTE_NUMBER   # Set outgoung phone-number
  isdnctrl eaz $DEVICE1 $LOCAL_NUMBER     # Set local EAZ ..
  isdnctrl l2_prot $DEVICE1 hdlc          # for sync PPP: set Level 2 to HDLC
  isdnctrl l3_prot $DEVICE1 trans         # not really necessary, 'trans' is default
  isdnctrl encap $DEVICE1 syncppp         # encap the IP Pakets in PPP frames
  isdnctrl huptimeout $DEVICE1 300        # Hangup-Timeout is 300 sec. -> 5 min
  isdnctrl chargehup $DEVICE1 off         # Hangup before next Charge-Info
  isdnctrl secure $DEVICE1 on             # Accept only configured phone-number

  ifconfig $DEVICE $LOCAL_IP
  route add -net 195.76.154.0 $DEVICE
  route add default $DEVICE

  /sbin/ipppd user $USER remotename infovia -d defaultroute noipdefault ipcp-accept-local \
  ipcp-accept-remote mru 1500 mtu 1500 +mp lock -bsdcomp -pc -ac /dev/ippp0 /dev/ippp1 &

  7.2.3.  Explicación de los scripts

  Los scripts no necesitan demasiadas explicaciones. Sustituir user e
  ISP por su nombre de usuario y el nombre de su proveedor (pepe@arrakis
  por ejemplo) y poner los valores adecuados en LOCAL_NUMBER (el número
  de su RDSI) y en REMOTE_NUMBER (055 si usa Infovía).

  La dirección de LOCAL_IP es una dirección falsa, la negociación IPCP
  la sobreescribe, pero por una simple razón de coherencia, conviene
  darle una IP válida del rango de su proveedor, y asignarle a ella la
  ruta por defecto, (lo mismo se aplica para la dirección de red de la
  ruta del final del script) esto es necesario para que funcione el DoD.

  Las direcciones del ejemplo son de Intercom, pero valen de cualquier
  manera (funciona también usando las mismas con otros proveedores).
  Estas direcciones son las mismas que aparecen en los scripts ip-up e
  ip-down:
  7.2.4.  ip-up

       #!/bin/sh
       /sbin/route del default
       /sbin/route add default ippp0

  7.2.5.  ip-down

       #!/bin/sh
       /sbin/route del default
       /sbin/ifconfig ippp0 down
       /sbin/ifconfig ippp0 195.176.154.169
       /sbin/route add -net 195.176.154.0 ippp0
       /sbin/route add default ippp0

  Es posible que alguno de los comandos que aparecen en estos dos
  últimos guiones sean redundantes. De nuevo, estamos abiertos a
  sugerencias.

  El rc.isdn de la sección ``'' está preparado para el uso de dos
  canales y por lo tanto una conexión a 128 Kbps, usando uno de los
  canales como esclavo del primero. La opción +mp es necesaria en este
  caso, además de que haya seleccionado en la compilación del kernel, en
  la sección general de RDSI, Support Generic MP (RFC 1717). (Compruebe
  que exista la línea CONFIG_ISDN_MPP=y en el fichero
  /usr/src/linux/.config, que es donde se almacena por defecto la
  configuración del núcleo).

  Tenga en cuenta que, como es lógico, pagará el doble... Aunque esto en
  empresas no suele ser un problema, cuidado en casa, o verá como las
  facturas de Telefónica tienden a infinito... ;-)

  Para lanzar manualmente el segundo canal, ejecute isdnctrl addslave
  ippp128;  colgará automáticamente tras un periodo sin tráfico,
  tardando lo que hayamos especificado en el parámetro huptimeout del
  rc.isdn (en segundos).

  Con determinados proveedores no se nota demasiado el lanzar el segundo
  canal (Arrakis), con otros sin embargo, y también dependiendo del
  origen de nuestro tráfico, si se nota, y bastante...

  Hay un demonio que se encarga de disparar/colgar el segundo canal
  según el tráfico y la saturación que detecte; puede obtenerse de
  http://www.compound.se.

  En futuras versiones, tendrá sección propia; por ahora, si tiene un
  trabajo donde permitirse eso, se supone que tendrá nivel como para
  manejarse con él sin problemas.

  8.  Problemas Frecuentes

  8.1.  (una vez tras otra): Al lanzar la conexión miro el /var/log/mes­
  sages  y sólo veo

       Apr 15 10:34:08 wanda kernel: ippp0: dialing 0 055...
       Apr 15 10:34:08 wanda kernel: ippp0: dialing 1 055...
       Apr 15 10:34:08 wanda kernel: ippp0: dialing 2 055...

  pero no veo nada más, ¿a qué puede ser debido?

  Es un problema físico. Revise la conexión del cable tanto en la
  tarjeta como en el TR1. Revise la continuidad del cable así mismo.
  Cámbielo en último término. Asegúrese de que su TR1 tiene servicio...
  ;-) y Asegúrese de no estar pasando por ninguna centralita.

  8.2.  La conexión se corta tras un mensaje como:

       Apr 15 15:58:28 wanda pppd[208]: Could not determine remote IP address

  y seguidamente:

       Apr 15 15:58:28 wanda pppd[208]: LCP terminated at peer's request
       Apr 15 15:58:28 wanda kernel: isdn_net: local hangup ippp0
       Apr 15 15:58:28 wanda kernel: ippp0: Chargesum is 0
       Apr 15 15:58:28 wanda pppd[208]: Modem hangup
       Apr 15 15:58:28 wanda pppd[208]: Connection terminated.

  Es un problema bastante común debido a que Infovía (en el supuesto de
  que la use para conectar) no nos asigna, ---o no lo hace con
  suficiente rapidez--- una dirección remota del enlace PPP.  Hay un
  solución que funciona tanto en conexiones RDSI como RTC que consiste
  en pasarle nosotros una dirección en el establecimiento de la
  conexión. En el caso de conexiones vía RTC (módem corriente y
  moliente)  incluya una línea en el /etc/ppp/options tal que:

       :172.16.1.96

  y deje el parámetro que le indica que, a pesar de todo, aceptaremos la
  IP que el extremo nos asigne como remota (ipcp-accept-remote). La IP
  que pongamos puede ser cualquiera, pero como siempre, y por seguir una
  regla, ponga una de las que normalmente nos asigna Infovía de su rango
  (172.16.x.x por ejemplo).

  Gracias a Horacio J. Peña por este detalle (el primero al que se lo
  leimos en la lista del SLUG).

  El caso de conexiones vía RDSI (sobre todo en el caso de que usemos el
  primer método) se puede proceder de la misma forma, pues aunque se le
  pasen parámetros al (i)pppd, el demonio leerá el fichero
  /etc/ppp/options.

  8.3.  usable ippp device'' . ¿A qué es debido?  Al inicializar el
  demonio ipppd obtengo el mensaje `` Can't find

  Según Frank Meyer, del grupo de desarrollo isdn4linux, se debe a que
  al lanzar el ipppd, este calcula un número aleatorio basándose en la
  función gethostid() que provoca una resolución DNS, usando para ello
  el servidor de nombres que aparezca en /etc/resolv.conf.

  Si no tenemos la conexión activa, esto lógicamente no es posible y el
  DNS no puede ser alcanzado (y hablamos en el caso general de que no se
  disponga de un DNS local, como suele suceder comúnmente).

  Para solucionarlo, incluya el nombre de su máquina (incluido
  localhost)  en el /etc/hosts con el dominio completo que haya
  especificado en /etc/resolv.conf. Hay otra solución basada en un
  parche no oficial para evitar este comportamiento por parte del ipppd;
  el fichero syncPPP FAQ incluído en el directorio de documentación de
  las utilidades ISDN amplía este tema.

  9.  Por Hacer

  ·  Por supuesto, integrar los comentarios y sugerencias que nos manden
     amablemente en este documento. Realimentación, graciaaas.

  ·  Estudiar el ibod para la gestión dinámica de conexiones a 128K por
     demanda de tráfico.

  ·  ToDo lo que se nos vaya ocurriendo... ;-)

  10.  Copyright y Propiedad Intelectual

  El RDSI-Como es Copyright © 1998 Antonio Verdejo García & Francisco
  José Montilla Blanco.

  Este trabajo puede ser reproducido en su totalidad o en parte, tanto
  de forma impresa como electrónica, sujeto a las siguientes
  condiciones:

  1. La notificación del copyright y esta licencia debe preservarse
     completa en todas las copias, tanto completas como parciales.

  2. Cualquier traducción o trabajo derivado debe de ser aprobado por
     los autores por escrito antes de su distribución.

  3. Si se distribuye el Trabajo parcialmente, deben de incluirse
     instrucciones de dónde obtener la versión completa original (en
     forma impresa o electrónica), así como los medios para conseguirla.

  4. Pueden ser reproducidas pequeñas porciones como ilustraciones para
     revistas o citas para otros trabajos sin esta notificación de
     permiso si se cita apropiadamente su procedencia.

  11.  Colofón

  Y bueno, por ahora esto es todo. Como una primera versión que es,
  estará plagada de pequeños (igual otros no tan pequeños) fallos,
  incorrecciones y seguro que nos dejamos un montón de temas en el
  tintero.

  Eso sí, como hemos mencionado varias veces, nuestro buzón de correo
  está abierto a todo tipo de sugerencias, correcciones, dudas (que si
  humildemente podemos, intentaremos responder), así como desinteresadas
  donaciones para adquirir otras tarjetas... };) Lo que se os ocurra.
  En cualquier caso, prometemos contestar.

  11.1.  ¿Y no tenéis nada que agradecer a nadie?

  Ufff... Al contrario. No acabaríamos nunca. Pero vamos a intentarlo;
  además, es la parte más relajada de todo esto.

  11.1.1.  De Antonio Verdejo

  Mi lista es interminable (tengo tanto que agradecer a tanta gente, y
  esta es la mía ;-), pero intentaré ser breve.

  Para empezar, a Francisco José Montilla, mi apañero, porque fue quien
  me introdujo en esto de la RDSI y el Linux, gracias por tus
  "SOfritos", y por la paciencia que tienes conmigo y el Quake.
  Recuerdos a quien ya sabes.  Gracias por todo, de verdad. ¡Ah!

  y vigila tu espalda, un día apareceré por DM4 con un bazoca y... ;-))

  A toda la gente del Lucas, Insflug e HispaLinux. Inmejorable trabajo
  el vuestro. A la gente de Enred (saludos ZoR) por organizar lo
  inorganizable y darle forma de Party.

  A Jesús Fuentes Saavedra, por sus consejos. A Enrique Melero por
  idéntica razón. A Iñaki Arenaza por estar trabajando también en el
  tema RDSI. A Miguel Armas del Rio, por mantener la (creo) mejor lista
  de Linux en castellano.  A todos los contertulios de dicha lista por
  sus sugerencias y ánimo, ¡seguid así!

  A Alvaro Villalva (aka unsCAred) por que siempre está ahí con su
  compilador preparado (-- FJM
  y su buscador a punto... ;-)

  A toda (TODA) la peña del canal linux del IRC Hispano (la lista no
  tendría fin, prometo -prometemos- citaros a todos en una próxima
  revisión de este documento, aunque sea en un anexo exclusivo ;-) por
  ser como son, por ser como sois, ¡majísimos!... y a las linuxeras, por
  tener ese par de...  O:-)

  A mi hermano David, y en general a toda mi familia, por su apoyo.
  Gracias especiales a Isa, Regi y Basi por cuidarme tan bien (¡qué
  haría yo sin vosotras!).

  A mis amigos, mis mejores amigos (Jero, Javi, Alberto) porque siempre
  se puede contar con ellos, y porque comprenden que a veces pase más
  tiempo con Linux que con ellos...

  A mis amigas, mis mejores amigas. A Begoña, por todo. A Ana Rocío, en
  la distancia, porque sí.

  A N. S. (``no sé'') por su mirada. Siempre. A Alberto (aka Case) por
  sus cumpleaños.

  A Marc, por la tarjeta que dio el empujón definitivo a este Como. Y a
  la gente, que, junto a él (``1 para to2 y to2 para 1''), me hacen
  pensar diferente...  Are U dudez?

  A ``el gremio del cuervo'' por su música (cojonuda) por su directo
  (destroyer) y por darme una idea de lo larga que puede ser (y no
  cortarme ante ello) una lista de agradecimientos... ;-) Y a Pepe, por
  supuesto, por descubrirme este pedaso grupo. Hello man, I am the
  Sun...

  A tod@s l@s que me dejo (y de l@s que sin duda tendré noticias).

  Y en general, a toda la gente que hace que, cada día que me levanto,
  no piense como Séneca, que decía Mañana será peor... ;-)

  ¡Gracias!

  11.1.2.  De Francisco J. Montilla

  A mi apañero Toni, por compartir esas madrugadas linuxeras, por
  tenerme al día de lo que pasa en el mundo Linux, y por dejarme
  masacrarle al Quake tan generosamente :P.

  Y por dejarme sin nadie a quien agradecer. Abusooon!!!!!

  A mi mujer, por aguantar estoicamente mis trasnochadas Linuxeras, mi
  apegamiento ordenadoril, y animarme todavía a darle duro a esto.

  12.  Anexo: El INSFLUG

  El INSFLUG forma parte del grupo internacional Linux Documentation
  Project, encargándose de las traducciones al castellano de los Howtos
  (Comos), así como la producción de documentos originales en aquellos
  casos en los que no existe análogo en inglés.

  En el INSFLUG se orienta preferentemente a la traducción de documentos
  breves, como los COMOs y PUFs (Preguntas de Uso Frecuente, las FAQs.
  :) ), etc.

  Diríjase a la sede del INSFLUG para más información al respecto.

  En la sede del INSFLUG encontrará siempre las últimas versiones de las
  traducciones:  www.insflug.org. Asegúrese de comprobar cuál es la
  última versión disponible en el Insflug antes de bajar un documento de
  un servidor réplica.

  Se proporciona también una lista de los servidores réplica (mirror)
  del Insflug más cercanos a Vd., e información relativa a otros
  recursos en castellano.

  Francisco José Montilla, pacopepe@insflug.org.