  SLIP-MiniComo
  Manuel Soriano m_soriano@dapsys.ch
  Maquetador Linuxdoc-SGML: Antonio Ismael Olea Gonzlez,
  olea@poboxes.com 2:345/108.9@fidonet.org

  Cmo configurar Linux para usar TCP/IP por cable serie mediante SLIP.

  1.  Antes de nada

  Hay que considerar una cosa, qu es lo que se quiere configurar, si un
  cliente o un servidor de comunicaciones o, por qu no, ambos.

  Lo primero que hay que hacer es recompilar el kernel habilitando los
  siguientes parmetros:

       ``Networking support'' CONFIG_NET y
       ``TCP/IP networking'' CONFIG_INET y
       ``Assume subnets are local'' CONFIG_INET_SNARL y
       ``Network device support?'' CONFIG_NETDEVICES y
       ``Dummy net driver support'' CONFIG_DUMMY y
       ``SLIP (serial line) support'' CONFIG_SLIP y
       ``CSLIP compressed headers'' CONFIG_SLIP_COMPRESSED y
       ``PPP (point-to-point) support'' CONFIG_PPP y
       ``PLIP (parallel port) support'' CONFIG_PLIP y

  2.  Configuracin de un servidor de comunicaciones:

  Para ello usaremos el programa dip que hace el trabajo de
  configuracin y rutado por nosotros.

  Modificar el fichero /etc/hosts y poner las direcciones IP de ambas
  mquinas.

       75.0.1.10      obe_slip  # maquina servidora o local
       75.0.1.11      ide_slip  # maquina cliente o remota (la que llama, leche)

  Creamos un usuario slip con la utilidad adduser.

    usuario : Sidefix

    grupo : slip

    shell : /sbin/diplogin (asegurarse que diplogin est en /sbin)

    Directorio home : /tmp

    Password : Sidefix ( o el que quieras)

  Como adduser cambia los permisos del directorio al usuario, hacer lo
  siguiente:

       chown root /tmp
       chgrp root /tmp
       chmod 777 /tmp

  @:-)

  Editamos el fichero /etc/group e incluimos un nuevo grupo slip, la
  lnea quedar:

       slip::16:Sidefix

  NOTA : el nmero de grupo debe ser el ms bajo posible despus de man.

  Editamos el fichero /etc/diphosts e incluimos la siguiente lnea:

       Sidefix::75.0.1.11:75.0.1.10:255.255.255.0::CSLIP,296

  Esta lnea se compone de campos separados por ":" . Vamos a ver qu
  quiere decir cada campo.

    Usuario remoto

    Password, si queremos, ste no hace falta encriptarlo

    Direccin remota (ide_slip)

    Direccin local (obe_slip)

    Mscara de red (suele ser siempre 255.255.255.0)

    Comentarios

    Protocolo (SLIP, CSLIP, PPP, etc..), el protocolo va seguido del
     MTU (yo uso 296, se puede dar un valor mas alto si se tiene una
     UART que aguante, pero penaliza el trabajo que no sea ftp)

  Nos aseguramos que en /sbin tenemos:

       lrwxrwxrwx   1 root     root           10 Apr 30 19:35 dip -> dip-3.3.7l*
       -rws--x--x   1 root     bin         40964 Feb 16 13:37 dip-3.3.7l*
       lrwxrwxrwx   1 root     root           10 Apr 30 19:35 diplogin -> dip-3.3.7l*

  Si no los tenemos, instalar la serie N de disquetes (porting
  Slackware)

  Editar el fichero /etc/inittab y asegurarnos que tenemos la siguiente
  lnea:
  Se asume que la conexin se har por el segundo puerto serie (COM2)

  Para conexin directa, sin mdem:

       s2:45:respawn:/sbin/agetty 38400 ttyS1

  Para los que tengan mgetty primero va el puerto (ttyS1) y luego la
  velocidad.

  Para conexin con mdem:

       d2:45:respawn:/sbin/agetty -mt60 38400,19200,9600,2400,1200 ttyS1

  (Ojo una almohadilla indica comentario)

  Una vez el fichero inittab correcto hacer lo siguiente:

       init q

  Bueno, el servidor est configurado, vamos a ver el cliente;

  En esta mquina nos debemos asegurar que existen los mismos programas
  dip en /sbin.

  Tambin modificaremos el fichero /etc/hosts, pero con la salvedad de
  que:

       75.0.1.10      obe_slip  # maquina servidora o remota
       75.0.1.11      ide_slip  # maquina cliente o local (la que llama, leche)

  Asegurarnos que en el fichero /etc/inittab la lnea correspondiente al
  mdem o conexin est deshabilitada, comentada con #.

  El usuario que quiere llamar debe tener un fichero de ordenes dip
  (chat.dip) que se debe parecer a algo como sto:

    main:
      get $remote obe_slip
      get $local ide_slip
      port cua1   # (cua0 para com1 o el que quiera)
      speed 38400

      # Resetea el modem y la linea
      reset

      # Cadena de inicializacion del modem
      send ATQ0V1E1X4\r
      wait OK 2
      if $errlvl != 0 goto modem_trouble
      # con esto llamas obe_slip (mi maquina)
      dial 003461770949
      if $errlvl != 1 goto modem_trouble

      # Estamos conectados
    login:
      sleep 2
      send \r\n\r\n
      wait ogin: 20
      if $errlvl != 0 goto login_error
      send Sidefix\n
      wait ord: 20
      if $errlvl != 0 goto password_error
      send Sidefix\n
      if $errlvl != 0 goto password_error
      wait ord: 20
      if $errlvl != 0 goto password_error
      send \n # (esto es el password definido en /etc/dip.hosts)
    loggedin:
      default
      # Se acabo
    done:
      print CONECTADO $local ---> $remote
      mode CSLIP
      goto exit

    prompt_error:
      print TIME-OUT esperando el inicio de SLIPlogin ...
      goto error

    login_trouble:
      print Problemas esperando el login: prompt...
      goto error

    password:error:
      print Problemas esperando el password: prompt...
      goto error

    modem_trouble:
      print Problemas con el modem...
    error:
      print CONEXION con $remote fallada
      quit

    exit:
      exit

  Para iniciar una conversacin, hacer:

       dip chat.dip

  Segn lo que parezca por pantalla, actuar en consecuencia.

  Si aparece el mensaje:

       CONECTADO 75.0.1.11 ---> 75.0.1.10

  Entonces ya tienes acceso a todos los servicios TCP para esa conexin.

  Para finalizar la conexin, en la mquina cliente, hacer:

       dip -k

  Para configurar una mquina cliente/servidor de comunicaciones serie,
  crear todo lo que se ha visto en este texto en una sola mquina. Ojo
  con los puertos serie dependiendo si queremos ser cliente, servidor o
  cliente/servidor.

  Para los que quieran usar PPP o SLIP sin compresin, en los ficheros
  de configuracin (/etc/dip.hosts y chat.dip), cambiar CSLIP por PPP o
  SLIP. Fcil.

  Bueno pues esto es todo, que te diviertas comunicndote.

