Сегодня поговорим о таком актуальном вопросе, вызванной переходом на новую версию серверной ОС от Microsoft, как миграция старого dhcp сервера на новую платформу Windows Server 2012.
Обычно в продуктивной службе DHCP настроено множество параметров, в том числе огромные списки dhcp резерваций для клиентов (это всевозможные принтера, сендеры, компьютеры), поэтому о ручном переносе DHCP на новый Windows Server 2012 думать даже не хочется. К счастью существует возможность экспорта/импорта конфигурации DHCP сервера.
Нас интересуют два сценария переноса DHCP со старого сервера на Windows Server 2012:
1) Миграция DHCP сервера с Windows 2008/2008 R2
2) Миграция DHCP сервера с Windows 2003/ 2003 R2
Разберем оба эти сценария более подробно.
Миграция DHCP сервера с Windows 2008 на Windows Server 2012
Предположим, у нас имеется старый сервер с развернутой ролью DHCP, работающий под управлением Windows Server 2008 / 2008 R2 (пусть его имя srv-dhcp2008) и новый сервер с Windows 2012 (srv-dhcp2012), на который планируется осуществить перенос службы DHCP со всеми настройками.
На новом сервере с Windows Server 2012 установим роль DHCP с помощью команд Powershell:
Import-Module ServerManager
Add-WindowsFeature -IncludeManagementTools dhcp
Обратите внимание на параметр «IncludeManagementTools«, без которого роль DHCP будет установлена, но без соответствующей консоли управления.
Следующий шаг – авторизация нового DHCP сервера в Active Directory. Эту операцию также выполним с помощью Powershell :
Add-DhcpServerInDC -DnsName srv-dhcp2012.winitpro.ru -IPAddress 192.168.10.22
В Windows Server 2012 появились специальные PowerShell командлеты, позволяющие осуществить импорт/экспорт любых параметров DHCP сервера. Отметим, что Microsoft максимально упростило всю процедуру, и нам необходимо будет выполнить всего две команды PowerShell: Export-DhcpServer и Import-Dhcpserver, которые могут работать и в удаленном режиме.
Итак, для экспорта настроек DHCP сервера, всех зон и резерваций с сервера под управление Windows Server 2008/R2, в консоли powershell на новом сервере (srv-dhcp2012) выполните следующую команду:
Export-DhcpServer -ComputerName srv-dhcp2008.winitpro.ru -File C:\DHCP\w2008dhcpconfig.xml -verbose
Конфигурация старого сервера экспортируется в XML формате в файл w2008dhcpconfig.xml. Отключите службу DHCP на сервере srv-dhcp2008:
Stop-Service DHCPserver
Затем запускаем команду импорта:
Import-Dhcpserver –ComputerName srv-dhcp2012.winitpro.ru -File C:\DHCP\w2008dhcpconfig.xml -BackupPath C:\ DHCP\backup\ -verbose
Удостоверимся, что все dhcp зоны, резервации и мигрированы на новый сервер.
Если нужно импортировать только часть dhcp-зон, команда импорта будет выглядеть так:
Import-Dhcpserver –ComputerName srv-dhcp2012.winitpro.ru -File C:\DHCP\w2008dhcpconfig.xml -BackupPath C:\ DHCP\backup\ -verbose –ScopeId 10.1.1.0, 10.1.2.0
Перенос DHCP с Windows Server 2003 на Windows 2012
К сожалению, прямой перенос настроек базы DHCP из Windows 2003 в Windows Server 2012 невозможен, т.к. Powershell-модуль экспорта не совместим со старыми версиями Windows Server, а команда netsh dhcp не поддерживается в Windows 2012 (функционал netsh dhcp был перенесен в PoSh ), так что в этом случае придется сначала перенести базу DHCP на Windows 2008, а затем уже с помощью Powershell мигрировать ее в Windows Server 2012. Как мигрировать базу из Windows 2003 в Windows 2008 R2 описано ниже.
Перенос базы DHCP из Windows Server 2003 в Windows 2008
Допустим, у нас есть DHCP сервер, работающая под управлением ОС Microsoft Windows Server 2003. Экспортируем базу данных DHCP в бинарный файл командой:
netsh dhcp server export C:\dhcp_conf2003.dat all
В результате, в корне диска C:\ появится бинарный файл dhcp_conf2003.dat, содержащий все настройки старого DHCP сервера. Для предотвращения dhcp конфликтов в сети, остановим службу DHCP на старом сервере:
net stop "dhcp server"
Затем зайдем на сервер с Windows Server 2008 (на котором предварительно развернутся роль DHCP сервера, авторизованная в домене) и импортируем конфигурацию со старого сервера:
netsh dhcp server import \\win2003dhcp\c$\dhcp_conf2003.dat all
После этого нужно перезапустить службу DHCP на новом сервере с Windows 2008:
restart-service dhcp