Dyndns.org client
Usage : ipcheck.py [options] Username Password Hostnames or ipcheck.py [options] --acctfile acct_info_file
Options: -a address manually specify the address
-r URL
NAT router, use web IP detection
-A text
scan syslog for an IP after text (Unix only)
-F filename
guess the WAN IP from a firewall log
-b
backup mx option ON (default OFF)
-c
custom dns option (default dynamic)
-d dir
directory for data files (default current)
-e script
execute script after a successful update
-f
force update regardless of current state
-g
NAT router, let dyndns guess your IP (do not use this in a cronjob, try -r)
-h
print this help text
--help
print all available help text
-i interface
interface for local address (default ppp0)
-j
disable https
-l
log debugging text to ipcheck.log file
--syslog
log debugging text to syslog (Unix only)
-m mxhost
mx host (default NOCHG)
-o
set dyndns offline mode
-p
proxy bypass on port 8245
-q
quiet mode (unless there is an error)
-s
static dns option (default dynamic)
-t
test run, do not send the update
-v
verbose mode
-w
wildcard mode ON (default OFF)
--makedat
create the ipcheck.dat file by dns lookup
--devices
print router options (Linksys, Netgear, etc)
-n ip
the router IP address on the internal lan
For help with different options: python ipcheck.py -h For supported devices listing : python ipcheck.py --devices For long detailed help text : python ipcheck.py --help
Make sure you can write to the current directory for data files and that you always run from the same directory. The first time you run the script, you will be asked to run with the --makedat option in addition to any other options. This will create the data files for the hostnames and options your specify on the command line. You should only do this once. Subsequent runs should be made without the --makedat option.
For help with different options: python ipcheck.py -h For supported devices listing : python ipcheck.py --devices For long detailed help text : python ipcheck.py --help
Example 1: the external IP is on eth0 of the current machine python ipcheck.py -l -i eth0 username password hostnames
Example 2: you are using the Linksys routing device python ipcheck.py -l -L linksyspassword username password hostnames
Example 3: you want to use web based ip detection python ipcheck.py -l -r checkip.dyndns.org:8245 ...
where ... is your dyndns username password and hostnames. Hostnames should be comma delimited if there are more than one.