#!/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