On Tue, 16 Jan 2001, Félix Hauri wrote:

> Par ailleur ``diald'' se mélange un peu les pinceaux, il ``surveille''
> ppp0 tandis qu'il ``commande'' tantôt ppp0, tantôt ppp1.

non, diald surveille sl0 (SLIP). Quand un paquet arrive, il lance un pppd,
qui lance un script d'initialisation avec en paramètre le nom d'interface
ppp (p.ex. pour la route).

Nulle part n'est fait mention de ppp0 dans ma config diald.

De même pour mgetty: lance pppd, qui lance un script d'initialisation
avec en paramètre le nom de l'interface. Libre à toi de créer du routage,
des règles de firewall, etc, à enlever à l'arrêt de pppd.

cf man pppd, /etc/ppp/ip-down, /etc/ppp/ip-up (et aussi route-up, etc)
cf man diald

(du moins avec mes versions antédiluviennes de pppd et diald).

Mon setup

# Verbose RST provoking mode
# NOTE
#    - We firewall old remote addresses on PPP shutdown
echo 7 > /proc/sys/net/ipv4/ip_dynaddr
DIALD_SPEED=115200
DIALD_DIAL_TO=sunrise
DIALD_DEFAULT_ROUTE="defaultroute dynamic"
DIALD_LOCAL_IP=127.0.0.2
DIALD_REMOTE_IP="remote 0.0.0.0"
DIALD_DEVICE=ttyS1
MORE_PPP_ARGS='-- asyncmap 0 name sunrise -defaultroute lcp-echo-interval 15 
lcp-echo-failure 2'
MORE_DIALD_ARGS=''

/usr/sbin/diald $MORE_DIALD_ARGS mode ppp accounting-log \
   /tmp/diald_log.${DIALD_DIAL_TO} local $DIALD_LOCAL_IP $DIALD_REMOTE_IP \
   device /dev/$DIALD_DEVICE connect \
   /usr/lib/ppp/ppp-on-${DIALD_DIAL_TO}-diald \
   lock modem crtscts ip-up \
   /usr/lib/ppp/diald-ipup-${DIALD_DIAL_TO} \
   ip-down /usr/lib/ppp/diald-ipdown-${DIALD_DIAL_TO} retry-count 1 \
   redial-backoff-start 3 dial-fail-limit 10 fifo /etc/diald.fifo
   reroute addroute \
   /usr/lib/ppp/add-route-diald-${DIALD_DIAL_TO} speed $DIALD_SPEED
   $DIALD_DEFAULT_ROUTE nodev-retry-timeout 30 $MORE_PPP_ARGS

Et:

bash-2.01# cat /usr/lib/ppp/ppp-on-sunrise-diald 
#!/bin/sh

case $MODEM in
   /dev/ttyS0) exit 1;;
   /dev/ttyS1) CHAT_CONFIG=/usr/lib/ppp/chat_configs/sunrise;;
esac
 
if /usr/sbin/chat -f $CHAT_CONFIG
then
    exit 0
else
    exit 1
fi

bash-2.01# cat /usr/lib/ppp/diald-ipdown-sunrise 
#! /bin/sh

# Flush forwarding rules
/sbin/ipfwadm -F -f

# Flush rules
/sbin/ipfwadm -I -f

/sbin/ipfwadm -O -i reject -S $3/32 -D 0/0

exit 0

bash-2.01# cat /usr/lib/ppp/add-route-diald-sunrise 
#! /bin/sh

if [ $# != 5 ]; then
   echo "$0 iface netmask local-ip remote-ip metric"
   echo "$0: bad args."
   exit 2
fi

#/sbin/route add $4 dev $1
/sbin/route add $3 dev $1

#! /bin/sh

if [ $# != 4 ]; then
   echo "$0 iface netmask local-ip remote-ip"
   echo "$0: bad args."
   exit 2
fi

# No forwarding

/sbin/ipfwadm -F -p deny -W $1

# Flush rules
/sbin/ipfwadm -I -f

# Security preventing one-way 127.0.0.1 spoofing
[ ... ]
exit 0

--
http://www-internal.alphanet.ch/linux-leman/ avant de poser
une question.

Répondre à