Getting your infrastructure running like a finely tuned engine is no easy feat; it takes blood, sweat, and tears, not to mention hundred, if not thousands, of hours of configuring, tweaking, and adjusting. So, if your organization decides to move to a Windows Server 2008-based infrastructure, how will you make the change as easy as possible?

Starting all over again just to move to a new server operating system is something to avoid if you can. Microsoft understands this concern and realizes that the easier it is to migrate to a newer version of Windows, the more likely organizations are to make the move.

While there are many things that merit consideration when moving from a Windows 2000 Server- or Windows Server 2003-based network to a Windows Server 2008-based network, there is one important service that will make or break your migration: DHCP. If you blow it, everyone will know it!

DHCP is one of two foundational network services that govern how your network operates; the other is DNS. Migrating a Windows 2000 Server/Windows Server 2003 DNS database to Windows Server 2008 is a simple process, sometimes requiring nothing more than a configuration change to DNS; at its most complex, it requires the completion of a zone transfer between the old and new servers to migrate DNS information. DHCP, on the other hand, has no built-in mechanism to easily transfer its database information from one server to another. But with a little bit of work, it doesn’t require too much effort to migrate your DHCP services from your Windows 2000 Server/Windows Server 2003 to Windows Server 2008.

There are different steps depending on whether you’re moving DHCP from Windows 2000 Server or Windows Server 2003. Here are descriptions of both processes.

Migrating DHCP from Windows 2000 Server to Windows Server 2008

The process to migrate your Windows 2000 Server DHCP database to Windows Server 2008 requires a two-step strategy. First, you’ll export the DHCP settings from your old Windows server. Then, you’ll import those settings into the server that’s running Windows Server 2008. You should be prepared to spend about 15-20 minutes performing the procedure, assuming that you already have Windows Server 2008 installed and configured ahead of time. It’s also assumed that you’ve installed the DHCP role on the Windows Server 2008 computer.

On the old server: Moving the settings out
Migrating the DHCP database settings off of your old Windows server is a fairly simple task. You’ll need to disable the DHCP service on the old Windows server so that it cannot be started again. To do this, you’ll use the Services console in the Administrative Tools folder. Double-click the DHCP Server item and select Disabled, as shown in Figure A.

Figure A

Disable the DHCP service on the Windows 2000 Server.

After disabling the service, stop the currently running DHCP service; either click the Stop button shown in Figure A or issue the net stop dhcpserver command from the command line. After disabling and stopping the running DHCP service, all that remains to be done on the legacy Windows server is to export the DHCP database information so that it can be transferred to the Windows Server 2008 computer.

You can do this using the Registry Editor (regedt32). Save the appropriate key to another location, such as a networked drive that is accessible to both the Windows 2000 Server and the server running Windows Server 2003. Open the Registry Editor and navigate to the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ DhcpServer\Configuration key.

Once there, click the Registry menu and select Save Key, as shown in Figure B. Save the key with a name that you will recognize, such as config.key.

Figure B

You can save the key here.

You’ll need to copy the entire contents of the %SystemRoot%\System32\Dhcp folder (Figure C) to another location, preferably the same network drive where you placed the configuration key previously. Now it’s time to move to the server that’s running Windows Server 2008.

Figure C

Export the Configuration key to migrate the Windows 2000 DHCP server settings.

On the new server: Moving the settings in

To migrate your DHCP configuration to Windows Server 2008, you’ll need to have already installed the DHCP Server service on the computer. If you have not done so, you can do this from the Server Manager available on the Start menu.

Once the DHCP service is installed, you’ll need to stop it so you can import the DHCP configuration. To do so, from a command prompt, issue the command net stop dhcpserver. Now you’re ready to import the DHCP configuration into Windows Server 2008.

First, import the registry key that you previously exported. On the server that’s running Windows Server 2008, double-click the registry file that you exported earlier. When asked to verify the operation, choose Yes.

The next step you’ll need to complete is the transfer of the %SystemRoot%\System32\Dhcp folder contents. Navigate to this location and delete all contents in the folder, including all subfolders and their contents. Copy the information into this folder that was previously taken from the Windows 2000 Server’s DHCP folder.

After you complete this step, you can begin putting your new Windows Server 2003 DHCP server in operation. You’ll need to start the DHCP Server service by issuing net start dhcpserver from a command prompt. You should receive the confirmation dialog box shown in Figure D.

Figure D

Start DHCP after you copy the old files.

Migrating DHCP from Windows Server 2003 to Windows Server 2008

Migrating DHCP from Windows Server 2003 to Windows Server 2008 is easier than migrating from earlier versions of Windows. This procedure assumes that the existing DHCP server is running on Windows Server 2003 and that you’ve already installed the DHCP server role on your Windows Server 2008 server. (Note: IPv6 DHCP capability is not discussed in this column.)

Follow these steps:

  1. Start a command prompt on the Windows Server 2003 DHCP server.
  2. At the prompt, type netsh dhcp server export C:\w2k3-dhcp.txt all.
  3. Copy w2k3-dhcp.txt to the root of the C: volume on your new server.
  4. On the new Windows Server 2008 DHCP server, start a command prompt.
  5. At the prompt, type netsh dhcp server import c:\dhcpdatabase.txt all.
  6. Start the DHCP administrative console and verify that your scopes and configurations made their way to your new server.

Post migration

Once the migration is complete, you’ll need to do some tidying up within the DHCP console. Open the DHCP console from the Administrative Tools folder and reconcile all scopes by clicking Action | Reconcile All Scopes. If any leases are found that need to be reconciled, click Reconcile to synchronize the DHCP Registry and Active Directory settings.

Verify that your DHCP server is operating properly by opening the DHCP console and checking your configuration, as shown in Figure E.

Figure E

Once the scope shows the Status is Active, all is well.

Note: Editing the registry is risky, so be sure you have a verified backup before saving any changes.

Related TechRepublic resources

Want to keep up with Scott Lowe’s posts on TechRepublic?