GnuDIP Logo

GnuDIP Release 2.3.4 - README File


This is GnuDIP Release 2.3.4.

The GnuDIP software implements a Dynamic IP DNS service. It provides clients with a static DNS name even if their IP address is dynamically assigned.

GnuDIP is written in Perl.

GnuDIP has two main parts on the server side:

A client which works with both Linux/UNIX and Windows is also provided.

GnuDIP is released under the GPL. Please see the file COPYING included in this distribution for more information.


The client Perl script, for Linux/UNIX, may be found in the directory:

client/UNIX/.
The directory above has a tar ball for the latest release, and a directory which is just the unpacked tar ball which you can browse through.

Using the client with Linux/UNIX is described in the file client/UNIX/gdipc/CLIENT.html.

The same client Perl script, but with minor changes to adapt it to the Windows environment, may be found in the directory:

client/Windows/.
The directory above has a Windows self-extracting zip executable file and a directory which is just the expanded zip file which you can browse through.

Using the client with Windows is described in the file client/Windows/gdipc/CLIENT.html.


More specifically, the requirements are:

To use secret key rather than IP address access control for dynamic DNS you may also want the dnskeygen command from BIND 8 or the dnssec-keygen command from BIND 9, to generate input files for nsupdate, and probably the key values in them.

Although not required, GnuDIP will run a bit faster if you install the Perl Digest-MD5 module.

In order to use mySQL rather than the Linux/UNIX file system for Web Tool configuration and user information, you will also need:

If you have Linux, OpenBSD or such, Perl (including the DBI module), BIND and Sendmail will probably be available as options from your installation CD. You may need to obtain and install the rest.

Read INSTALL.html for instructions on installing GnuDIP.

If you wish to use some other database management system, you will need to obtain a DBI driver for it, and you will have to adapt the installation instructions yourself.


You may want to browse the file gnudip/html/credits.html.


Changes since Release 2.1.2 are discussed in the file gnudip/html/release.html.

Features retained from Release 2.1.2 include:

Web Configuration

You can use the web tool for all administration of your GnuDIP server.

Auto URL

Set GnuDIP as your default page and it will automatically authenticate you and redirect you to a page of your choice.

Use GnuDIP on your main domain

It is possible to use GnuDIP on your main domain without worrying about zonefile corruption.

Strong Security

Passwords in communications between client and server are "salted" with a random string sent by the server and then digested using the MD5 algorithm. It is not possible for "wire tappers" to "spoof" GnuDIP passwords.

Offline

You can set offline and GnuDIP will not respond with incorrect answers for your hostname.

Self Signup

If allowed, users can register themselves as user with no administrator intervention required.

Restrict Usernames

Set a list of usernames you do not want people to register. Wild card matching is supported.

Custom Login Page

GnuDIP has an option to read in a page you design and display it on the login page.

Multi-Domain Ready

You can easily add other domains for your GnuDIP server to handle, and mangage users for all domains at once, or have individual permissions on each domain.


The protocol used between the client and the update server is described in the file PROTOCOL.html.


The notes from GnuDIP Release 2.1.2 are included for reference. Read README-2.1.2 and README.mysql-2.1.2 but watch out for antiquated information.

Parts of the Release 2.1.2 notes have been incorporated into this file verbatim.


As a bonus, the sbin/ directory contains a bare bones version GnuDIP ("MiniDIP"?), with no mySQL or web tool.

The minidip.pl Perl script is a server program for (X)INETD. It takes the name of the configuration file as an argument. With no argument it uses minidip.conf in the GnuDIP configuration directory.

The BIND setup is the same as for the full GnuDIP software.

This script could easily be adapted to provide a GnuDIP-compatible update interface to a non-GnuDIP dynamic DNS service, so that the GnuDIP clients could be used. Just change the script to get the password somewhere else.