0.      Contents of rxdyndns.zip 0.5:

0.1     RXDYNDNS.TXT    this text

0.2     RXDYNDNS.CMD    simple DynDNS update script for OS/2 REXX

0.3     WATCHPPP.CMD    simple OS/2 ppp0 daemon using RXDYNDNS.CMD

0.4     WATCHPPP.ICO    a nice icon for WATCHPPP.CMD <PPP0.DAEMON>


1.      Prerequisites

1.1     RXSOCK.DLL      REXX sockets library from IBM

1.2     ppp0.pid        ?:\mptn\etc\ppp0.pid watched by WATCHPPP.CMD

1.3     ifconfig.exe    dynamic IP determined by IFCONFIG PPP0

1.4     host.exe        used by WATCHPPP.CMD to get host by name

1.5     hostid.exe      used by WATCHPPP.CMD to get and set local IP

1.6     HOSTNAME        your DynDNS host, e.g. test.dnsalias.org

1.7     USERNAME        your DynDNS loginid., e.g. test

1.8     PASSWORD        your DynDNS password, e.g. test for test



2.      Installation

2.1     Copy WATCHPPP.CMD and RXDYNDNS.CMD to a directory in your PATH.

2.2     Edit WATCHPPP.CMD to reflect your HOSTNAME, USERNAME, PASSWORD.

2.3     Use 'WATCHPPP *' (once) to (re)create a WPS object PPP0.DAEMON.

2.4     Edit PPP0.DAEMON settings as needed (e.g. use WATCHPPP.ICO).

2.5     Create a shadow of PPP0.DAEMON in the start folder <WP_START>.

2.6     Start PPP0.DAEMON manually for the first time (or reboot :-).

2.7     Move object PPP0.DAEMON from the desktop to any other folder.



3.      WATCHPPP.CMD

3.1     The shipped version of WATCHPP.CMD updates a DynDNS host with

        call RXDYNDNS 'ppp0', 'test.dnsalias.org', 'test', 'test'

3.2     You can edit this script as needed, e.g. start other tasks

        as soon as a new IP (= dialup internet connection) is detected.

3.3     You can edit FORCEDIP = 1 to use a new dynamic IP as hostid

        (reported by hostid.exe), if your host has no other IP.

3.4     WATCHPPP.CMD can be used as VIO program on the command line or

        as PM program (started by CMD.EXE or PMREXX.EXE).  At most one

        instance of WATCHPPP.CMD can run for any given interface, the

        default interface is IFCONFIG = 'ppp0'.

3.5     To start a new PPP0.DAEMON call e.g. WATCHPPP 10 for a poll

        cycle of 10 seconds.  To kill a running PPP0.DAEMON or to see

        the usage text call WATCHPPP without arguments, this sends a

        termination request to the running daemon.

3.6     In fact PPP0.DAEMON uses a private REXX queue 'PPP0.DAEMON'

        to retrieve the output of ifconfig.exe etc., and terminates

        itself if anybody else writes into this queue.



4.      RXDYNDNS.CMD

4.1     RXDYNDNS can be used directly on the command line to update

        a DynDNS host: RXDYNDNS interface hostname username password,

        e.g. try RXDYNDNS ppp0 test.dyndns.org test test

4.2     Please edit the line COPYLEFT = ... in RXDYNDNS.CMD as soon

        as you change anything else in this script, because DynDNS

        can block erroneous resp. abusive update clients.

4.3     As shipped RXDYNDNS.CMD supports only the DynDNS system of

        DynDNS.org for a single host without MX record. Adding more

        options should be easy, but please change the COPYLEFT too.

4.4     RXDYNDNS.CMD does not actually handle the DynDNS protocol,

        it only displays resp. returns the result of an attempted

        update. The caller has to evaluate the result messages as

        specified in: http://clients.dyndns.org/devel/codes.php.

4.5     WATCHPPP.CMD simply displays any RXDYNDNS.CMD result, so the

        user is responsible for the proper reaction like waiting for

        a certain period or correcting invalid WATCHPPP parameters.



5.      History

5.1     I've created RXDYNDNS 0.3 because DNSAlias-Net 2.0 had been

        removed from the list of "other clients" for unknown reasons.

        It's now back again, see http://clients.dyndns.org.

5.2     One problem with DNSAlias-Net 2.0 could be that the author

        forgot to update the client's identification (compare 4.2 ;-).

        Of course you can use WATCHPPP.CMD with UPDATE.CMD instead of

        RXDYNDNS.CMD.

5.3     Please note that B64encode used in DNSAlias-Net 2.0 is not

        strictly correct, but DynDNS accepts it anyway.  For details

        compare results of RXDYNDNS.CMD procedure MIME and B64encode.

5.4     If your domain is something like host.orgdns.org then RXDYNDNS

        version 0.4 sends its update requests to members.orgdns.org

        instead of members.dyndns.org, see www.orgdns.org.

5.5     Version 0.5 sends "Connection: close" and "Pragma: no-cache"
        headers in a HTTP/1.0 GET request, HTTP 1.0 has no "chunked"
        replies (see HTTP/1.1 RFC 2616 19.4.6) and is easier to parse.

5.6     This is version 0.5 of RXDYNDNS.CMD, for future updates see

        http://frank.ellermann.bei.t-online.de/src/rxdyndns.zip.


XHTML validator Last update: 21 Mar 2002 10:45 by F. Ellermann