smeserver-ddclient/root/etc/ppp/ddclient_ip-up.local

41 lines
1.4 KiB
Bash
Executable File

#!/bin/sh
######################################################################
## $Header: /home/paul/src/ddclient/RCS/sample-etc_ppp_ip-up.local,v 3.6 2002/11/03 20:20:16 root Exp $
######################################################################
##
## On my host, pppd invokes this script with args:
## /etc/ppp/ip-up.local ppp0 /dev/pts/1 115200 192.168.2.1 192.168.2.3
##
## From the manual page for my pppd, these aguments are:
## scriptname interface-name tty-device speed local-IP-address remote-IP-address ipparam
##
## Some people have reported that their pppd returns their
## local-IP-address as $3. If that's also the case for you,
## you may need to change the $4 below to $3. This may not
## be necessary if you pppd also passes the local-ip-address
## in the environment as either PPP_LOCAL or IPLOCAL.
##
######################################################################
PATH=/usr/sbin:${PATH}
IP=
IP=${IP:-$PPP_LOCAL}
IP=${IP:-$IPLOCAL}
IP=${IP:-$4}
## update the DNS server unless the IP address is a private address
## that may be used as a internal LAN address (or PPtP tunnel).
logger -t ddclient $0 $*
case "$IP" in
10.*) ;;
172.1[6-9].* | 172.2[0-9].* | 172.3[0-1].*) ;;
192.168.*) ;;
"") logger -t ddclient No local IP given so cannot update
;;
*) (
sleep 5
ddclient -daemon=0 -syslog -use=web -if=$1 >/dev/null 2>&1
) &
;;
esac