DDI Registry Source Code

The source code for the DDI Registry is available under the LGPL, an Open Source license.

Download: DDI Registry

Purpose

You can deploy the DDI Registry software on your own infrastructure to run your own registry service. You might want to do this if you would like to provide your own delegation and resolution services, instead of relying on the DDI Alliance's registry service.

Installation

Step 1. Dependencies

The following should be installed on your system:

  • .NET 4.0 Framework (the full version)
  • IIS

Step 2. Database

Create two postgreSQL databases with the following names:

  • ddi_registry
  • ddi_registry_user

Run the SQL commands in the following files to create the database structure:

  • Ddi.Registry.Data/postgres-schema.sql.txt
  • Ddi.Registry.Data/postgres-membership-schema.sql.txt

Step 3. Deploy Site Binaries

Extract the built solution files to a directory which IIS can access (e.g., c:\inetput\DdiRegistry).

Step 4. IIS Configuration

Create a Site for DDI Registry

  1. In IIS, choose your machine and select Add Web Site. Use the following settings:
    Site Name
    MyRegistry
    Physical path
    the location where you extracted the DdiRegistry/ directory above
    Binding
    http
    Hostname
    your desired hostname
  2. In the newly created Application Pool, make sure the .NET Framework Version is set to 4.0.

Update the Web.config file

In the Web.Config file at the root of your site, search for the "connectionStrings" element and update these to point to your database.

Step 5. Integrate with DNS

The Ddi.Registry.ZoneWriter console application is used to integrate the contents of the DDI Registry's database with your DNS system. To use this, follow these instructions.

The ZoneWriter works be writing a bind-compatible zone file. This file can be used by both bind and ActiveDirectory.

  1. Update ZoneWriter's App.config file:
    • Update the DdiRegistry connection string to point to your databasde
    • Under the Ddi.Registry.ZoneWriter.Settings element, update the following properties:
      BaseZone
      The name of the root, authoritative zone for the registry system. To work with the DDI Registry system, leave as registry.ddialliance.org
      MasterName
      The hostname of your primary nameserver
      Nameserver
      A list of hostnames of your nameservers
      DefaultARecord
      The A record for the hostname specified in the BaseZone setting
      ZoneFileLocation
      The location where your zone file will be written.
  2. Schedule the ZoneWrite to run on a regular basis (e.g., every 5 minutes).
  3. Set your DNS Server to use the zone file for its configuration.

Frequently Asked Questions

Nothing has really come up yet. Get in touch with us and we'll add answers to common questions as they come up.