dip -k
para PPP ?.No. En el directorio de chat
hay un PPP-off
script.
Ejecutando este script se consigue el mismo efecto que con dip
-k
. Este script aparece a continuación. Para usarlo, corte el texto,
sálvelo en el fichero nombrado arriba y hagalo ejecutable con
chmod
.
#!/bin/sh
DEVICE=ppp0
#
# Si el fichero ppp0 pid existe es que el programa esta funcinando. Paralo.
if [ -r /var/run/$DEVICE.pid ]; then
kill -INT 'cat /var/run/$DEVICE.pid'
#
# Si kill no ha funcionado entoces no hay ningun proceso asociado a este
# pid. Tambien puede significar que el fichero lock sigue abierto. Seria deseable
# borrar tambien el fichero lock.
if [ ! "$?" = "0" ]; then
rm -f /var/run/$DEVICE.pid
echo "ERROR: Removed stale pid file"
exit 1
fi
#
# OK. Ahora dejamos a pppd terminar a su manera.
echo "PPP link to $DEVICE terminated."
exit 0
fi
#
# el proceso PPP no esta ejecutandose para ppp0
echo "ERROR: PPP link is not active on $DEVICE"
exit 1
Hay varias razones para que ocurra esto:
módem
en la línea de comandos de
pppd
?. Este parámetro controla si es pppd
el que debe controlar
las señales de status del módem. Este parámetro aparece explicado más
detalladamente en la página man
de pppd
.
&C1
. Si resetea
el módem durante la sesión con ATZ
, asegúrese de que configura su
módem correctamente.
La señal DTR la genera el ordenador e indica al módem cuando desconectar.
La secuencia Hayes para esto es &D1
o &D2
,
siendo &D2
la opción preferida por PPP. Muchos fabricantes de
módems deshabilitan este uso de la señal DTR en la configuración de
fábrica que viene almacenada en el módem .
pppd
de forma correcta ?. El proceso pppd
debería
ser lanzado (con exec
) desde un script y no desde la línea de
comandos del shell que esté usando. Si hace esto último y ejecuta
pppd
, será el shell el que reciba la señal HUP (hang-up, colgar) y no
pppd
.
Un script típico para lanzar pppd
es el siguiente:
#!/bin/sh exec pppd -detach modem ...
dip
y diald
puede interferir en
algunas ocasiones con la capacidad de pppd
para detectar la falta de
portadora de la línea serial. En esta situación, debería usar las opciones
lcp-echo-request
y lcp-echo-failure
para que pppd
pueda
detectar esta condición.