| iMatix home page | Xitami home page | << | < | > | >> | Xitami Version 2.5b6

## The Dynamic DNS Feature

### What is Dynamic DNS?

Dynamic DNS is a way of registering your computer on the Internet domain-name system (DNS) even when you have a dial-up line or cable modem, with an IP address that changes each time you connect. Without a DDNS service, people using your server must know and type its IP number. With a DDNS service, they can use the domain name.

Dynamic DNS services vary a lot in qualty. Free services, like the now defunct Monolith service, are often heavily loaded and can be slow to update. Commercial services cost from $25 upwards per year, and offer two main advantages over free services. Firstly, generally better performance and secondly, a commercial DDNS service has more incentive to continue than a free service, so your domain name has a long-term security. We work with one DDNS provider, tzo.com, to provide dynamic domains under the xitami.net domain.

A DDNS service works as follows: when you've connected to the Internet, you need to run some client software that talks to the DDNS server, and tells it your current IP address. The DDNS server updates its own DNS tables and broadcasts update records to other DNS servers on the Internet, so that your users can eventually use this information to find your server. For most DDNS services, some client software is available, either as a Windows program, a Perl script, or a Unix shell script.

### The Xitami Dynamic DDNS Client

Xitami contains all the code needed to act as a DDNS client for the most popular DDNS services, including Xitami.Net, tzo.com, dyndns.org, ns1.net, yi.org, and PengiunPowered.com (surprise, it's intended for Linux owners. But Xitami lets you use it on any platform). Furthermore, you can add support for new DDNS services by editing the file 'ddnsdef.xml', an XML configuration file. The file contains its own comments. If you add DDNS services, let us know the details so we can provide them as standard.

As delivered, Xitami supports: localhost, xitami.net, tzo.com, , , dyndns.org, and penguinpowered.com. If you need to, you can define other DDNS services in the file ddnsdef.xml. Xitami supports both HTTP and proprietary DDNS protocols.

### The ddnsdef.xml Definition File

This file, supplied with Xitami, defines the various DDNS services and the client protocols needed to register and unregister from them.

The XML structure of this file is:

    DDNS
      SERVICE
        [SIGNON]
        [SIGNOFF]

The SERVICE item has these attributes:

- NAME (required) - Name of service, used in Xitami config file.
- TITLE (optional) - Descriptive title, shown in WBA.
- HOST (optional) - Name of host to connect to (default localhost).
- PORT (optional) - Port number to connect to (default 80, HTTP port).
- VERBOSE (optional) - If 1, show progress (default 1).
- TRACE (optional) - If 1, show communications (default 0).
- URL (optional) - Home-page URL.

SIGNON and SIGNOFF have these attributes:

- SEND (required) - String to send to SERVICE.
- EXPECT (optional) - Expected response from SERVICE ("HTTP/1.? 200*").

In the SEND string, you can use these symbols:

- $(username) - User name or e-mail from Xitami config file.
- $(password) - User name or key from Xitami config file.
- $(domain) - Dynamic domain name from Xitami config file.
- $(ipaddr) - Current local IP address.
- $(httpauth) - HTTP 'Authorisation:' header string.
- $(httpheaders) - Other standard HTTP headers.
- $(xxxx) - Any other attribute defined in SIGNON or SIGNOFF.

The send and expect strings can contain the escaped characters \\n and \\r. The expect string is matched against the SERVICE response, if any. The wildcard character ? matches any character in the response string and the wildcard character * matches the remainder of the response string.

| << | < | > | >> | Welcome To Xitami | Table Of Contents | Installing Xitami | Administration | Configuration | Using The Common Gateway Interface (CGI) | Server-Side Includes (SSI) | Using Filters | Server-Side XML Processing | Server-Side GSL Scripting | Image Maps | Virtual Hosts | The FTP Service | The Dynamic DNS Feature | Throttle Pipes | A Beginner's Guide | Writing Web Server Extension (WSX) Agents | Extending Xitami with External Peer Processes | FAQ | Getting Support | Credits | Release History | License Agreement | Copyright © 1996-2002 iMatix Corporation