SLATTACH(8)

NAME
slattach - attach serial lines as network interfaces

SYNOPSIS
slattach [-a] [-c] [-e exit-command] [-f] [-h] [-l] [-n] [-z] [-L] [-r redial-command] [-s baudrate] [-u unit-command] [-K keepalive] [-O outfill] [-S unit] ttyname

DESCRIPTION
Slattach is used to assign a tty line to a network interface, and to define the network source and destination addresses. The following operands are supported by slattach:

-a  Autoenable the VJ header compression option, if the other end of the link is capable of VJ header compression then it will be used otherwise normal headers will be used.

-c  Enables the VJ header compression option. Note that both ends of the link must be able to use VJ header compression for this to work.

-e exit-command
    Specifies a command to be invoked within a shell ‘sh -c exit-command’ before slattach exits.

-f  Disables the invocation of daemon() to run slattach in the background.

-h  Turn on cts/rts style flow control on the slip port, by default no flow control is done.

-l  disable modem control (CLOCAL) and ignore carrier detect on the slip port. By default the redial-command is invoked upon carrier drop and slattach aborts if no redial-command is specified.

-n  Throw away ICMP packets. The slip interface will ignore ICMP packets to prevent slow lines being saturated by ICMP responses.

-r redial-command
    Specifies a command to be invoked within a shell ‘sh -c redial-command’ whenever carrier is lost on the modem line. Empty redial-command i.e. -r "" cause connection reestablishing on leased line without any external command invoked.

-s baudrate
    Specifies the speed of the connection. If not specified, the default of 9600 is used.

-u unit-command
    When the line is switched to slip discipline, run ‘sh -c unit-command <old> <new>’ where <old> and <new> are the slip unit numbers when the line was last opened and the unit number of the current slip connection respectively. The unit number can change after redialing if you are using more than one slip line. When slattach connected first time, it run ‘sh -c unit-command -1 <new>’. When slattach disconnected, it run ‘sh -c unit-command <old> -1’. Slattach will abort if the unit number changes and ‘-u unit-command’ was not specified.

-z  forces redial redial-command upon startup irrespective of carrier.

-L  Use uucp-style device locking. You need it unless you start slattach from external program which already does uucp locking. Default case is no uucp locking to satisfy such programs.

-K keepalive
    Set SLIP "keep alive" timeout in seconds. If FRAME_END is not received in this amount of time, re-connect occurs. The default value is no timeout.

-O outfill
    Set SLIP "out fill" timeout in seconds. It forces at least one FRAME_END to be sent during this time period, which is necessary for the "keep alive" timeout on the remote side. The default value is no timeout.

-S unit
    Set the SLIP unit number directly. Use with caution, because no check is made for two interfaces with same number. By default sliplogin dynamically assigns the unit number.

ttyname
    Specifies the name of the tty device. Ttyname should be a string of the form ‘ttyXX’ or ‘/dev/ttyXX’.

Only the super-user may attach a network interface.

To detach the interface, use “ifconfig interface-name down” after killing off the slattach process using ‘kill -INT’. Interface-name is the name that is shown by netstat(1)

To setup slattach to redial the phone when carrier is lost, use the -r redial-command option to specify a script or executable that will reconnect the serial line to the slip server. For example, the script could redial the server and log in, etc.

To reconfigure the network interface in case the slip unit number changes, use the -u unit-command option to specify a script or executable that will be invoked as ‘sh -c unit-command old new’ where old and new are the slip unit numbers before and after reconnecting the line. The unit number can change if you have more than one line disconnect at the same time. The first to succeed in reconnecting will get the lowest unit number.

To kill slattach use ‘kill -INT’ (SIGINT) which causes it to close the tty and exit.

To force a redial, use ‘kill -HUP’ (SIGHUP) which causes slattach to think carrier was lost and thus invoke ‘sh -c redial-command’ to reconnect to the server.

If you use a hard-wired connection rather than a modem, invoke slattach with the -l option in order to ignore carrier on the slip line.

EXAMPLES
    slattach ttyd8
    slattach -s 4800 /dev/ttyd1
    slattach -c -s 38400 /dev/cuaa1
    slattach -r 'kermit -y dial.script >kermit.log 2>&1'

DIAGNOSTICS
Look for error messages in /var/log/messages ( slattach is a daemon). Messages indicating the specified interface does not exit, the requested address is unknown, the user is not privileged and tried to alter an interface's configuration are logged there. Slattach also logs failure to set the controlling terminal or failure to install signal handlers. Upon connection and redial the ttyname and baud rate are logged and on shutdown the ttyname is logged.

FILES
/var/run/slattach.<tty>.pid,

with tty replaced by the terminal path name component of ttyname. This file contains the numerical process ID of the slattach process and can be examined by scripts in order to send a signal to slattach.

SEE ALSO
netstat(1), startslip(1), uustat(1), netintro(4), ifconfig(8), rc(8), sliplogin(8), /usr/share/examples/slattach

HISTORY
The slattach command appeared in 4.3BSD.