Ever Wanted to Own a Fully Featured Dynamic DNS Service?
Now You Can With MintDNS 2006 - - The Award Winning DDNS Server Suite!!!

 
Click here for DDNSServ support.
 
MintDNS- - Support

Due to the technical difficulties some users experience during setup, our support services are offered on a free and unlimited basis to all MintDNS users. These support services will prove to be your fastest route to a successful setup, should you experience any difficulties.


If you experiencing an error that is not addressed in this section or have question pertaining to any aspect of MintDNS please feel free to Call  479-232-5857 M-F 6:00am-9:00pm CST, or  Email support.
 
 
Installation
Adams-Land MintDNS 2006 Enterprise Edition
 
To request support please click here.

Contents

Introduction

MintDNS 2006 Enterprise Edition is an interface for Microsoft DNS that replaces earlier versions of DDNSServ. MintDNS allows your Windows 2000-2003 Server to act as a public or private DDNS daemon, and can provide the internet community with both static and dynamic DNS services. MintDNS supports standard update formats and at this time supports many third party update clients enabling compatibility with most all operating systems.

MintDNS setup and configuration is extensive and complicated. A successful setup will require your full attention to the entire scope of this document. In the event you are unable to successfully setup MintDNS please do not hesitate to contact support by clicking here or by calling 479-232-5857 during our normal hours of business 8:00am-5:00pm CST. As always 24hr support is available to all registered users. Free support and setup services are offered to all MintDNS users. If your having difficulties configuring your server please don't hesitate and contact support.
[TOP]

Hardware and Software Requirements

Windows 2000 or 2003 Server operating system (With Active Directory Installed) Please see these links for instruction on installing Active Directory 2000 server, 2003 server. (Later additions to the Windows Server family will be supported when they are officially released.) PC with a 133-MHz processor required. 700-MHz or faster processor recommended. 128 MB of RAM required. 256 MB or more recommended. At least one fully qualified domain name. Static IP address. Broadband connection to the internet. Routers Firewalls and Proxies may hinder your ability to use MintDNS. Latest security updates from windowsupdate.microsoft.com. To accept payment with the standard method included with MintDNS you will need a PayPal account. (Creating an account is free and easy. Click here to create a PayPal account.)
[TOP]

Server Setup (Prior to installing MintDNS)

Some steps should be completed before installing MintDNS.
 

  1. Install Active Directory
  2. Ensure the Microsoft DNS service is Installed and running.
  3. Ensure IIS is installed and running. (If 2003 server ensure asp support is enabled.)
  4. Create a new user and add this user to the Administrators group.
    (Will be used by MintDNS, Use any username and password you like. Keep note of user name and password)
  5. Choose and install a Database Engine (Not needed if using the Access Database)
     
    (Recommended Engines are MySQL 3.51-4.1 or Microsoft SQL Server 2000-2005.)
    Additional Database Engines are supported including Oracle, DB2, Interbase, Sybase, Informix, Ingres, Mimer SQL, Lightbase, PostgreSQL, Paradox, Firebird and Pervasive. However we only provide connection strings for Access, MySQL and Microsoft SQL Server.
  6. Create Zone or Zones in DNS [image] (Must be AD integrated)
  7. Edit Zone Properties to Allow Only Secure Dynamic Updates. [image]
  8. Change Network Adapter to Use local DNS Server for Resolution. [image1] [image2]
  9. Register Your Server as a Name Server (Done at your registrar)
Click Start, point to Run and type "dcpromo".
The wizard windows will appear. Click Next.
Choose Domain Controller for a new domain and click Next.
Choose Create a new domain tree and click Next.
Choose Create a new forest of domain trees and click Next.
Enter the full DNS name of the new domain, for example - mydom.local
Accept the the computer suffix name. Click Next
Accept the Database and Log file location dialog box. Click Next.
Accept the Sysvol folder location dialog box. Click Next.
Dcpromo will install the DNS service, create the appropriate zone, configure it to accept dynamic updates, and configure the TCP/IP settings for the DNS server IP address. Click Next.
Accept the Pre-Windows 2000 compatible permissions.
Enter the Restore Mode administrator's password. You can leave it blank (in Windows Server 2003 you must enter a password) but whatever you do - remember it! Without it you'll have a hard time restoring the AD if you ever need to do so. Click Next.
Review your settings. Click Next.
Never click cancel while the wizard works!!! You'll wreck your computer if you do.
If all went well you'll see the final confirmation window. Click Finish.
You must reboot in order for the AD to function properly. Click Restart now.
Active Directory should now be installed.

You now need to unsure the Microsoft DNS and IIS services are installed and running. This is most easily done by opening Control Panel\Administrative Tools\Services, and verifying the DNS Server and World Wide Web Publishing Service exist and are running. You also want to make sure the startup type is set to automatic.

If the DNS Server service does not exist open the add remove programs wizard (Control Panel\Add Remove Programs\Windows Components). After the Windows Component Wizard opens highlight networking services and click details. Domain Name System (DNS) should be checked. If it is not check this value and apply your changes.

If the World Wide Web Publishing service does not exist open the add remove programs wizard (Control Panel\Add Remove Programs\Windows Components). After the Windows Component Wizard opens highlight the Internet information services (IIS) field and click details. At a minimal the Internet information Services Snap-In and World Wide Web Server fields should be checked. If not check them and apply your changes.

MintDNS requires Administrative privileges to perform DNS functions, so you will need to create a new Administrative user that we will use to configure MintDNS after installation.  Open Administrative Tools\Computer Management - If Active Directory is installed you may have to use the Active Directory Users and Computers option.  In either case right click on the users folder and select new then user. Name the user anything you like and set the password to anything you like. (Just keep note of the username and password). After the user is created right click on the users name and select the tab {Member of} and add the administrators group. Apply your changes. [image] [image2] [image3]

Next you will need to decide which Database Engine you will use. We recommend MySQL 4.1 or higher If you use MySQL you will also need to download and install the MySQL ODBC 3.51 Driver.

Another option is Microsoft's recently released SQL Server 2005 Express Edition which is free, but not as robust as MySQL. (We have had a few bugs reported that relate to setup and configuration when using SQL 2005)

Of course if you already have MySQL 4.1+ or Microsoft SQL 2000 or later installed then there's no real need to upgrade.

If you are only going to have a 100 or so users you should be fine just using the Access Database in which case you do not need a database engine. 

You now need to setup your domains in DNS. Open the DNS snap in Administrative Tools\DNS. Highlight the Forward Lookup Zones Directory. Right click and choose New Zone. Supported Zone Types are Active Directory Integrated. Enter your domain name E.G. yourname.com not www.yourname.com and complete the new zone wizard. (Complete this step for each domain you wish to use with MintDNS)
NOTE: Only domains configured later in the setup instructions will be managed by MintDNS. Just because a domain exists in DNS does not mean the public will have access to it. MintDNS provides security for zones not used by the system. [image]

For every zone that you plan to use with MintDNS you must enable  Dynamic Updates. To do this right click on the zone and select properties. You will see an option to allow or disallow dynamic updates. You need to select the option Allow Secure Updates only. If you do not see this option you must change the zone type to Active Directory Integrated, and repeat the process. MintDNS will work with non Active Directory zones when the allow updates option is set to Yes. However everyone in the world will also be able to dynamically update your zone. As such the ensuing security breach would probably be comparable to the  invasion of Germany during World War II. Please set your zones to allow secure updates only. [image]

You will next need to configure your local network adapter or adapters to use your server for DNS, since the MintDNS module uses this information to locate your zones. Open the Control Panel/Network and Dial-up Connections snap in and right click your network adapter or adapters if you have more than one. Select the TCP protocol and click properties. Choose the option Use the following DNS server addresses and enter your servers IP address. Apply your changes and exit. [image]

Next select the zone or zones you created one at a time. you should see two records right click the SOA record and view properties. Set the Minimal TTL to 0 and the Records TTL to 0. This will allow all new records created in this zone to have a Time To Live of 0. You may want to add your basic records at this time such as www, ftp, mail etc. This is a pretty straight forward process, just right click on the zone name and choose new host. On the following screen enter www etc. as a name and enter your servers IP address. [image]

Once you have your zones setup in DNS you are ready to configure these domains to use your server for DNS. Browse to your registrar for example godaddy.com (The following instructions are for godaddy.com) At godaddy you will choose manage domains. You will then click the domain you wish to use, on the right hand side you should see a link called Domain hosts summary once clicked you should then see a link that says click here to view or modify. You want to add two new hosts
NS1.YOURDOMAIN.COM
NS2.YOURDOMAIN.COM
both using your servers IP address. Once created set all of your domains name servers to these two addresses.

Your now ready to install MintDNS.
[TOP]

Installing MintDNS 2006

Steps to install MintDNS
 

  1. Create the DDNSDATA database
  2. Install the MintDNS COM component.
  3. Copy the ASP files to your Web-Root [global.asa image] (Edit global.asa)
  4. Set anonymous access settings for the ASP files [image1] [image2]
  5. Turn off authentication settings for nic\update directory [image1] [image2]

Creating the DDNSDATA database will differ from Engine to Engine. We will start with instructions for MySQL. The instructions assume you are using MySQL 4.1 and have the MySQL administrator installed. Creating the MySQL database is a straight forward afair. You need only logon to the MySQL administrator and choose restore. Select the DDNSDATA.SQL file found in schemas\MySQL. Check the {Create databases if they don't exist} check box and click start restore. That's it your database should have been created. At this time you may want to add a user to MySQL which we will use a little later. (Make sure the user has all rights to the DDNSDATA schema.)

For Microsoft SQL Server you will want to create a new database named DDNSDATA and then right click on the database and choose all tasks restore. On the Restore screen you will choose from device and then select device, and browse to the schemas\Microsoft SQL Server directory and choose the DDNSDATA.backup file. Start the Restore and that's it. You may want to add a privileged user at this point as well.

If your going to use the Access database you need only copy the database from the schemas\Access directory to a location of your choice. We recommend this location be outside of your web root (Make note of this location as you will need it later). You will then need to right click on the file and choose properties. From the properties window select the Security tab and add the user Everyone. Make sure the User Everyone has at least Modify, Read and Write access, and apply your changes.

You now need to run the MintSetup.exe file. Complete the setup and then click Start\Programs\MintDNS\MintAdmin. Enter the Administrative user name and password you created in the prior to setup steps above. Also enter the users local domain. [Image]

We are now ready to copy the ASP files to your Web-Root which is generally c:\Inetpub\wwwroot. (Off course this directory could be different if you have changed it or are using a virtual web site. Open the Asp Files directory and choose Edit Select All and then select Edit again and choose the option Copy to Folder. Select your Web Root folder and click OK to copy the files. one the files are copied you need to browse to your Web Root directory and edit the global.asa file in your favorite text editor. Specify your servers OS and select a database connection string, and edit the connection string accordingly. [image]

Since MintDNS requires admin access to manage DNS we need to open the Administrative Tool\Internet Services Manager and select the website which is hosting the asp files. Right click on the website and choose properties. From the properties select the Directory Security tab, and then click the edit button in the Anonymous access settings field. on the following window click the anonymous access sections edit button and enter the user name and password we created earlier. You may also enter the Administrator username and password. (in the future if you change this users password you will need to redo this step entering the new password) [image] [image]

Next we need to set the authentication method used for the nic\update directory. In the Internet Services Manager Snap in select the website that is hosting the asp files. on the left hand pane double click the nic directory and select properties for the update directory then choose the directory security tab. Click the anonymous access edit button and uncheck Basic Authentication and Integrated Windows Authentication. Apply your changes. [image] [image]

MintDNS should be setup at this point but still requires an initial configuration to be made.
[TOP]

Client Application Configuration

  1. Download the NSIS Setup Compiler (NSIS Compiler)
  2. Configure your domain using EditHost.exe
  3. Edit the Client.nsi file
  4. Compile your Clientsetup.exe
  5. Copy ClientSetup.exe to Your Web Root

In order to create your client install package you will need to download and install the NSIS installer system. you can download this application here http://prdownloads.sourceforge.net/nsis/nsis20b3.exe?download

Once you have downloaded and installed NSIS you must configure the Client application to use your domain. This is done by running the file Edithost.exe and entering the domain that hosts DDNSServ's asp scripts
(EditHost.exe can be found in the Client Config and Compile directory)

You will next need to edit the Client.nsi file found in the Client Config and Compile directory. You will then need to compile your setup package.
1. Open Client.nsi in your favorite text editor.
2. Near the top of the Client.nsi file you will see an entry which says Your Company Name. Change the value Your Company Name to the name you wish to use for your setup package.
3. Save changes and exit the file Client.nsi.
4. Using the right mouse button, right click on the file Client.nsi and choose the compile option. This will create a file named ClientSetup.exe in the Client Config and Compile directory.
5. Test the setup package by running the new ClientSetup.exe file. If everything is OK distribute the file ClientSetup.exe to your users.

YOU MAY NOT CHANGE OR EDIT THE FILE LICENSE.TXT AND YOU MAY NOT EXCLUDE IT FROM YOUR DISTRIBUTION PACKAGE. FAILURE TO COMPLY IS A VIOLATION OF YOUR LICENSE AGREEMENT.

You will need to copy the ClientSetup.exe file you created to your webroot. Links to the client application are automatically created within the user help pages.
[TOP]

Initial Configuration

Step for initial configuration.

  1. Change Admin Settings.
  2. Ensure MintDNS is working correctly

Logon to the admin control panel http://yourdom.com/admin the default user name and password is
Admin
Password

Change the admin password, and then decide if your service will be a free service or a pay service. In the Payment processing options turn payment on or off and specify your Primary PayPal address. Next edit the registrar instruction and provide the two NS records we created earlier.

Next remove the domain replaceme.com from the domains section and add your domains which we setup in DNS earlier.

You can also specify pricing for your service and specify the number of domains and host records users are allowed to create.

Click logout and point your browser to http://yourdom.com/usign.asp create a new user and test the system. If you encounter any errors please send the content to sam@dyndnsservices.com
[TOP]

Ports used by MintDNS

The following ports are used by MintDNS Port 80 TCP, Port 53 TCP, Port 53 UDP
[TOP]

Basic URL's

Basic URL's used for navigation.
http://yourdom.com/usign.asp (New user signup)
http://yourdom.com/logon.asp (User Logon)
http://yourdom.com/admin/ (Administration)
http://yourdom.com/nic/update/ (Update URL Standard update compliant)
[TOP]

Client Applications

Client Applications

  1. Linux Clients
  2. Windows Clients
  3. Hardware Clients

A native Win32 client application is provided for your convenience Setup instructions should been seen here. Also most existing third party clients that supports NIC v2.0 and allows the end user to specify a server to connect to are now supported.

We have included in this distribution documentation for four third party clients. A Linux Client {ddclient}, and Some Windows Clients in the form of plug ins. We supply a DynSite Plug in, as well as a DirectUpdate Plug in, and a WinConnect Plug in. Since these four clients are top rated in there class of software your Linux\Unix, and Windows users should enjoy trouble free IP updates.

ddclient is bundled with most current Linux distributions. And a sample configuration file and instructions for using ddclient is built into the user help. You may wish to verify that the sample configuration file is displaying your servers correct URL, by login to the user logon.asp and viewing of the help files.

As with ddclient the DynSite plug in should be available to your users in the help pages, and your servers URL should be automatically changed to the correct value.

As with the other clients the DirectUpdate plug in should be available to your users in the help pages, and your servers URL should be automatically changed to the correct value.

As with the other clients the WinConnect plug in should be available to your users in the help pages, and your servers URL should be automatically changed to the correct value.

Other clients for Novell, Macintosh and others exist. Instructions for users are provided in the user help files.
[TOP]

Custom Development

Custom clients and Interfaces.

  1. Custom Interfaces.
  2. Custom Clients

If your a developer you may interested to know that the MintDNS component is a stand alone component and can be used in your applications. You cannot distribute a registered version of the MintDNS component, but you can develop your own interface in most all popular programming languages. A basic list of features can be seen below in Visual Basic format.

'Visual Basic ASP Usage
'Not a working example

'Create a reference to the MintDNS Component
Set sd = Server.CreateObject("MintDNS.DNSMAN")


'MintDNS Usage
'Base64 encoding and decoding returns string

encodedstring = sd.base64_encode("string to encode")
decodedstring = sd.base64_decode("string to encode")


'Creates and removes Host type A records returns FAIL or OK
createhost = sd.CreateARecord("www", "yourdomain.com", "127.0.0.1")
removehost = sd.DeleteARecord("www", "yourdomain.com")


'Creates and removes MX records returns FAIL or OK
mailserverIP = "127.0.0.1"
createmx = sd.CreateMXRecord("mail","yourdomain.com", "10", mailserverIP)
removemx = sd.DeleteMXRecord("mail", "yourdomain.com")



'Updates A type records IP addresses returns FAIL or OK
NewIP = "127.0.0.1"
upip = sd.UpdateARecord("www", "yourdomain.com", NewIP)
MXip = sd.UpdateMXRecord("www", "yourdomain.com", NewIP)


'Determines if an IP address is valid returns True or False

IP = "127.0.0.1"
isvalidhuh = sd.IsValidIPAddress(IP)

 

If you wish to develop a custom client application you should follow the update format found below.

Update Syntax

Example of usage:

http://username:password@yourservice.com/nic/update?
         hostname=yourhost.domain.com,yourhost2.domain.com&
         myip=ipaddress&uid=username&pass=password


    uid and pass are optional if using basic authorization
    If using basic authentication the username and password must be base 64 encoded.

GET /nic/update?
         hostname=yourhost.domain.com,yourhost2.domain.com&
         myip=ipaddress&uid=username&pass=password
    Host: yourservice.com Authorization: Basic username:password


    uid and pass are optional if using basic authorization
    All other standard update strings are optional.
   I f using basic authentication the username and password must be base 64 encoded.

Possible Return Values: good
                                             nochg
                                             badauth
                                             nohost
                                             badsys
                                             !donator
                                             911

 

The Client applications source code is also included with this package, and can be modified to suit your specific needs. As always we are more than happy to answer any development questions you may have.
[TOP]

Styles and Templates

The user interface is entirely template based. You can change the look and feel of the interface without worry of corrupting the core asp files by editing the template files found in YourWebRoot\styles\default.
[TOP]

Error Submission

Please send any and all errors to sam@dyndnsservices.com
[TOP]

 

 
Known Bugs and Workarounds
A problem has been identified that affects support for some hardware and software clients. IIS contains a bug that will return a 301 error to some Unix/Linux based update clients. If you are receiving a 301 error when using a hardware client or Linux/Unix client. This error and workaround may apply to you. This error was originally discovered using the Symantec Gateway Security 420.

Currently we have a fix for both 2000 and 2003 server. This update is intended for all MintDNS 2006 installations.

Cause: When a request is made from a Linux/Unix client to the nic/update directory, IIS may return a 301 error instead of the directories default content.

Resolution Summary: A viable workaround has been found and tested in a live production environment. Please download the NIC ISAPI Update and follow the instructions below.

Resolution: (yourdomain.com used below should be substituted with your domain name)

  1. Install the NIC ISAPI update found above
  2. Open the Internet Services Manager snap in, and view properties for the website hosting the MintDNS asp files
  3. Click on the ISAPI tab, and click add. Supply a generic name and browse to C:\Program Files\Nic isapi\Mupdate.dll
  4. Apply your changes.
This new Update ISAPI supports both NIC 2 and older update formats found in Planet Routers etc.

This fix has been applied at http://www.dynddns.us. You can test your devices for compatibility by creating a new dynddns account and pointing your update clients to www.dynddns.us

 

 


 


Top
Home | Awards | Support | Purchase | Download | Link to us | Affiliates