Error migrating DHCP database to Windows Server 2008 from Windows 2003 Server

Finally back to the blogsphere. I’ve decided to use my blog as a repository for issues & stuff I come across that I want to document. We’ll see how long this lasts.

On the first day back at work, I ran across an interesting issue while migrating the DHCP server in our lab from a physical 2003 server to a virtual 2008 R2. Clients without reservations were receiving addresses, but were not being displayed in the DHCP mmc (Statistics showed IPs in use). However, clients with reservations were not getting their IPs. Also, reservations would not show DHCP in mmc and no addresses were under the Address Lease node. The folder which normally displays a clock had a red X. After doing some searching I ran across an article on social.technet.com. First, was a discussion on a difference between 2003 and 2008 R2 in regards to leases. In 2003, you could create a reservation for servers that fell outside of the available IP range. I had used this to keep track of IP’s within DHCP instead of a spreadsheet or other document. However, it appears 2008 R2 does not support this. I’m not sure on Server 2008 since I skipped over it.

Here’s how I fixed my issue:

1. On the source DHCP server, I deleted all leases that fell outside of the available range. This range includes specified exclusionary ranges as well as undefined ranges.

2. I exported the DHCP database using Netsh: netsh dhcp server export ALL

3. On my destination server, I stopped the DHCPServer service and deleted c:windowssystem32dhcpdhcp.mdb

4. After deleting the database, I started the DHCPServer service.

5. I imported the DHCP database using Netsh: netsh dhcp server import ALL

6. Upon opening the DHCP mmc, I was able to see all leases as well as reservations. Also, all clients previously using reservations now received IP addresses.

Thanks to the Sainath IRP_MY_Create on Network Infrastructure Servers forum on social.technet.com for assistance on this!

Leave a Reply

Your email address will not be published. Required fields are marked *

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax