Lead Image © Photo by mathyas kurmann Unsplash.com
Setting up and managing IPv6 on Windows Server 2016
Change of Address
Windows Server 2016 automatically prefers IPv6 addresses, if available, but the manual configuration steps differ from IPv4 and necessitate new tools. Here’s how to approach IPv6 in your daily admin work.
One common reason why IT managers shy away from IPv6 is the hexadecimal notation with colons that divide the address into eight blocks, each with a length of 16 bits. For example, an IPv6 address looks like this: 001:0db7:85b3:07d3:1319:8a2d:437a:63d4
. These addresses are difficult to memorize and assign manually. Consequently, automatic assignment is the way to go in IPv6 infrastructures.
All IPv6 nodes automatically configure a local address with the fe80::/64
prefix for each physical or logical IPv6 interface. These addresses can only be used for communication with neighboring nodes. They are not registered in the DNS, and if data needs to be sent to such an address, a zone ID is also required. In the case of manual configuration or allocation of an IPv6 address by a DHCP server, the corresponding entries are, of course, made automatically.
IPv6 Preferred
Microsoft Windows Server 2016 uses the Next Generation TCP/IP Stack, a TCP/IP protocol stack that integrates both IPv4 and IPv6. For example, if a DNS query returns IPv6 and IPv4 address, the stack will first attempt to communicate over IPv6. The preference of IPv6 over IPv4 offers IPv6-enabled applications better network connectivity.
Enabling IPv6 and its preference by default has no negative effect on IPv4 connectivity. In networks in which no IPv6 DNS entries are available, IPv6 addresses are not used for communication. Windows Server 2016 always tries to communicate with IPv6; if no IPv6 addresses are available, the server will use IPv4.
In a network with Windows Server 2016, IPv6 offers several advantages:
- Larger address space. The IPv6 128-bit address space provides enough space for each device to have its own globally valid address.
- More efficient routing. The revised IPv6 header and the new addressing scheme, which supports a hierarchical routing infrastructure, allow IPv6
…
Use Express-Checkout link below to read the full article (PDF).
Buy this article as PDF
Express-Checkout as PDF
Price $2.95
(incl. VAT)
TABLET & SMARTPHONE APPS
US / Canada
UK / Australia
Related content
-
11 Tricks for Windows servers
A number of techniques applied in PowerShell or other management tools can run Windows servers more effectively, harden them, and improve their performance.
-
Virtual networks with Hyper-V in Windows Server 2016
Microsoft provides some interesting virtualization features in current and future versions of Windows Server. You can connect or isolate virtual machines, and Windows Server 2016 even supports virtual switches.
-
Software-defined networking with Windows Server 2016
Windows Server 2016 takes a big step toward software-defined networking, with the Network Controller server role handling the centralized management, monitoring, and configuration of network devices and virtual networks. This service can also be controlled with PowerShell and is particularly interesting for Hyper-V infrastructures.
-
Configuring IPv6 in Windows with NetShell
Windows provides a simple dialog box for configuring IPv6, but the available settings only scratch the surface. IPv6 comes with many features that are primarily managed using the command-line tool NetShell.
-
Policy-based DNS in Windows Server 2016
Inflexible DNS name resolution was solved in Windows Server 2016, thanks to policy-based DNS.
comments powered by
Subscribe to our ADMIN Newsletters
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Support Our Work
ADMIN content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
Dynamic Host Configuration Protocol (DHCP) Server is one of the critical parts of today’s enterprise networks. When somebody request for IP (Internet Protocol), instead of a network administrator, a server distributes IP for the device. It is more effective and less expensive. Also, DHCP server provides more information to the clients such as default gateway, subnet mask. DHCP allows hosts to acquire necessary TCP/IP configuration information from a DHCP server and do more. In order to configure DHCP Server follow the steps.
DHCP Server Post-installation configurations
After installing the DHCP role on Windows server, you need to configure DHCP server.
1. When the DHCP role installed, open Server Manager. Click on flag. Then click on Complete DHCP configuration hyperlink.
2. Skip the Description page by clicking on Next button. Now enter the credentials in both boxes, for entering the alternative credential click on Specify button and type the username and password. Make sure you use credentials that have permissions to perform these tasks. Then click on Commit button.
3. The Summary page show you the summary of post installation configurations. Click on the Close button.
Create DHCP scope
You need to create a DCHP scope. DHCP scope is the range of possible IP addresses that can be assigned to clients. Every scope defines a physical subnet.
1. Now open Server Manager and click on Tools tab then click on the DHCP to open it.
2. When the DHCP opened, expand DHCP server name and right-click on IPv4 then click on the New Scope option to create an IP scope for distribution.
3. Type an scope name. Add a description for scope. Then click Next button.
4. Specify the IP Address Range by entering the start IP Address and End IP address. The length automatically assigns, based on you IP address class and the subnet mask assigns automatically. Then click on Next button.
5. You can exclude some of the IP addresses for the servers or especial services. The IPs excluded will not be assigned automatically. IPs before and after the exclusion range are assigned. IPs excluded are assigned on servers manually. Specify the IP range you want to exclude, add the IP range and click on Next button.
6. On the Configure DHCP option page, select this option: Yes, I want to configure these options now. Clicking on Next button.
7. Enter your Router’s IP address in the box and click on add button to add the IP address. Then click on Next button.
8. DNS (Domain Name System) server translates the name to IP address and IP address to name. Type the DNS server’s name in the box. Then type IP address in the box below then click on Add button to add to the IP address. At the end click on Next button.
9. WINS Server translates NetBIOS computer name to IP address. Type WINS server name in Server name box. Type the WINS server’s IP address and click on Add button. Then click on Next button.
10. Finish the wizard clicking on Finish button.
DHCP Server Console
We are done with the creation of new scope. It is the time to know more about DHCP server console. Below the DHCP server name, you see IPv4 and IPv6 options. It means that Windows server 2016 can support both IPv4 and IPv6 versions of IP address. Expand IPv4 to see the scope you have created. Also Server Options, Policies and Filters.
Expand the scope. Things you see are these:
- Address Pool: IP address range can be assigned to clients and exclusion range is listed here.
- Address Leases: IP address which have been assigned to clients dynamically are listed here. IP address which have been assigned manually won’t be listed here.
- Reservations: Reserved IP range is listed here.
- Scope Options: Some options like Router, PXE client and etc.
- Policies: Policies created for DCHP server are listed here.
Conclusion
DHCP has been successfully configured and ready to be used. For any question, suggestion, feel free and leave a comment. I answer your question as soon as possible.
Данная статья описывает процедуру установки и настройки DHCP сервера на базе Windows Server 2019. В статье описаны особенности установки и настройки DHCP роли, создания областей DHCP, настройки их параметров и резервации статических адресов. Мы рассмотрим как привычный способ настройки параметров DHCP сервера через графическую консоль, так и настройку DHCP из командной строки PowerShell.
Протокол DHCP (Dynamic Host Configuration Protocol) используется для автоматического назначения сетевых настроек (IP адрес, маска подсети, шлюз, DNS сервера и т.д.) устройствам в вашей сети (компьютеры, ноутбуки, сканеры, принтеры и т.д.). Также DHCP сервер позволяет более эффективно использовать адресное пространство, избегать конфликта IP адресов в сети и централизованно управлять сетевыми параметрами на клиентских устройствах.
Содержание:
- Установка роли DHCP сервера в Windows Server 2019/2016
- Настройка DHCP областей в Windows Server
- Резервация IP адресов на DHCP сервере
- Настройка и управление DHCP сервером с помощью PowerShell
Установка роли DHCP сервера в Windows Server 2019/2016
В этом примере мы установим DHCP сервер на хосте с Windows Server 2019 и IP адресом 192.168.13.4. Вы можете использовать как Server Core версию, так и Full GUI. В маленькой инфраструктуре допустимо устанавливать DHCP сервер на сервер с ролью контроллера домена Active Directory.
Обязательно назначьте статический IP адрес серверу с ролью DHCP сервер. При установке роли DHCP из консоли PowerShell на сервере с автоматическим получением IP адреса появляется предупреждение:
Configure at least one static IP address on your computer before installing DHCP. WARNING: The following recommended condition is not met for DHCP: No static IP addresses were found on this computer. If the IP address changes, clients might not be able to contact this server. Please configure a static IP address before installing DHCP Server.
Установить роль DHCP Server можно из консоли Server Manager (Add Roles and Features -> Server Roles).
После установки роли DHCP роли нужно выполнить Post-Deployment Configuration. Для этого в консоли Server Manager щелкните по уведомлению и выберите Complete DHCP configuration.
Вам будет предложено аутентифицировать новый DHCP сервер в Active Directory (экран Authorization). Для авторизации DHCP сервера в AD учетная запись должна состоять в доменной группе Enterprise Admins.
Если у вас нет прав на авторизацию DHCP в AD, вы можете указать, чтобы ваш DHCP сервер запускался без проверки авторизации в домене:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\DHCPServer\Parameters" -Name DisableRogueDetection -Value 1 -Force
Также вы можете установить и настроить DHCP роль в Windows Server из консоли PowerShell.
Установка роли DHCP:
Install-WindowsFeature DHCP –IncludeManagementTools
Проверьте, что роль и инструменты управления RSAT-DHCP установлены:
Get-WindowsFeature -Name *DHCP*| Where Installed
Авторизуйте DHCP сервер в Active Directory (укажите DNS имя сервера и IP адрес, который будет использоваться DHCP клиентами):
Add-DhcpServerInDC -DnsName hq-dc01.contoso.com -IPAddress 192.168.13.4
Создайте локальные группы безопасности DHCP сервера:
Add-DhcpServerSecurityGroup
Чтобы Server Manager перестал показывать уведомление о том, что DHCP роль требует настройки, выполните команду:
Set-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\ServerManager\Roles\12 -Name ConfigurationState -Value 2
Перезапустите службу DHCPServer:
Restart-Service -Name DHCPServer -Force
База данных и логи DHCP сервера находятся в каталоге
%systemroot%\system32\dhcp
.
- dhcp.mdb — файл базы данных сервера DHCP’;
- j50.log – транзакционный журнал (используется при восстановлении конфигурации DHCP);
- j50.chk — файл контрольной точки;
- tmp.edb — временный рабочий файл DHCP-сервера.
Настройка DHCP областей в Windows Server
После установки роли DHCP вам нужно создать DHCP области (Scopes), которые описывают диапазоны IP адресов и другие настройки, выдающиеся сервером клиентам.
Для управления сервером DHCP используется консоль dhcpmgmt.msc (вы можете управлять DHCP сервером локально или с удаленного компьютера с установленным RSAT). Запустите консоль DHCP, разверните ваш сервер -> IPv4.
Чтобы создать новую область выберите New Scope.
Укажите название DHCP области.
Укажите диапазон IP адресов, который будет выдаваться этой областью и маску сети. В этом примере я хочу использовать эту DHCP область для обслуживания подсети 192.168.100.0/24. В рамках этой сети DHCP сервером будет назначаться динамические IP адреса из диапазона 192.168.100.50 — 192.168.100.250. В следующем окне можно добавить исключения в этот диапазон (Add Exclusions and Delay).
Далее нужно указать длительность аренды (Lease Duration) IP адреса DHCP клиентом (по умолчанию 8 дней, менять без особой необходимости не нужно).
Укажите, что вы хотите настроить дополнительный параметры DHCP области.
.
Укажите IP адрес шлюза в подсети, который должен назначаться клиентам (в нашем примере это 192.168.100.1).
Затем укажите имя домена и адреса DNS серверов, которые будут назначены клиентам DHCP.
Осталось активировать DHCP область (разрешить ей обслуживать клиентов).
DHCP сервер может выдавать клиентам различный настройки (кроме IP адреса). Для этого используются Scope Options.
В Windows Server DHCP можно настроить глобальные настройки области или Scope Options для каждой области.
Ранее мы уже настроили три опции области:
-
003 Router
-
006 DNS Server
-
015 DNS Domain Name
Можно добавить и другие опции (NTP сервера, PXE и т.д.).
В разделе Server Options DHCP сервера можно настроить глобальные опции, которые будут наследуются всеми областями. Но вы можете переопределить глобальные настройки в настройках каждой области (опции области имеют приоритет над опциями сервера).
Один DHCP сервер может обслуживать сотни удаленных подсетей и VLAN. Поэтому вы можете создать на нем несколько областей. Главное, чтобы в каждой из подсетей был настроен ретранслятор (DHCP relay agent), который пересылает широковещательные DHCP-запросы на указанный DHCP сервер. В терминах Cisco DHCP ретранслятор называется ip helper. Вы можете настроить DHCP Relay даже на Windows Server.
Протокол DHCP в качестве транспорта использует протокол UDP. Пакеты от клиента к серверу передаются по порту 67 UDP, обратно через UDP 68
Резервация IP адресов на DHCP сервере
По умолчанию DCHP сервер выдает клиентам динамические адреса. Это означает что IP адрес у любого клиента может меняться. Если вы хотите, чтобы определенные устройства всегда получали от DHCP сервера один и тот же адрес, вы можете его зарезервировать (например, для сетевых принтеров, которые настроены у пользователей).
Для DHCP резервации выберите область и перейдите в секции Reservation. В меню выберите New Reservation.
При создании резервации нужно указать IP адрес, который нужно сохранить за клиентом и его MAC адрес (уникальное значение). MAC адрес в Windows можно получить из результатов команды
ipconfig /all
или с помощью PowerShell
get-netadapter|select name,macaddress
). Опционально можно указать имя и описание устройства.
Также вы можете зарезервировать текущий динамический адрес за устройством, найдя его в разделе Address Leases. Щелкните по устройству и выберите Add to Reservation.
Настройка и управление DHCP сервером с помощью PowerShell
Все операции по настройке и управлению DHCP сервером на Windows Server 2019/2016 можно выполнять из консоли PowerShell. Рассмотрим основные команды управления DHCP. Для этого используется модуль DHCPServer. Импортируйте модуль в сессию:
Import-Module DHCPServer
Вывести полный список командлетов в моделе DHCP можно так:
Get-Command -Module DHCPServer
Следующая команда выведет список авторизованных DHCP серверов в Active Directory:
Get-DhcpServerInDC
Вывести список DHCP областей на указанном сервере:
Get-DhcpServerv4Scope –ComputerName msk-dhcp1
Если нужно показать все параметры области (Delay, Description, Name и т.д.):
Get-DhcpServerv4Scope –ComputerName msk-dhcp1| FL *
Если нужно отобразить данные о IPv6 областях:
Get-DHCPServerv6Scope
Получить настройки для конкретной области:
Get-DhcpServerv4Scope –ComputerName msk-dhcp1 –ScopeID 10.10.1.0
Создадим новую (неактивную) область с диапазоном адресов с 192.168.113.50 до 192.168.113.250:
Add-DhcpServerv4Scope -Name “Brahch1 192.168.113.0” -StartRange 192.168.113.50 -EndRange 192.168.113.250 -SubnetMask 255.255.255.0 -State InActive
Настроить следующие параметры DHCP сервера: DNS сервер, домен и адрес шлюза по-умолчанию:
Set-DhcpServerv4OptionValue -ScopeID 192.168.113.0 -DnsDomain contoso.com -DnsServer 192.168.13.4 -Router 192.168.113.1
Добавить исключения в DHCP область:
Add-DhcpServerv4ExclusionRange -ScopeID 192.168.113.0 -StartRange 192.168.113.90 -EndRange 192.168.113.100
Активировать DHCP область:
Set-DhcpServerv4Scope -ScopeID 192.168.113.0 -State Active
Для удобства можно использовать такую команду PowerShell при создании новой области:
$HashArgs = @{
'Name' = 'EKB Office Scope';
'Description' = 'workstations';
'StartRange' = '192.168.140.10';
'EndRange' = '192.168.140.200';
'SubnetMask' = '255.255.255.0';
'State' = 'Active';
'LeaseDuration' = '1.00:00:00';
}
Add-DhcpServerv4Scope @HashArgs
Опции для DHCP сервера добавляется так (к примеру, WPAD):
Add-DhcpServerv4OptionDefinition -ComputerName msk-dhcp1 -Name WPAD -OptionId 252 -Type String
Вывести список настроенных опций DHCP сервера можно так:
Get-DHCPServerv4OptionValue -ComputerName msk-dhcp1 | Format-List
Выведем список настроенных параметров зоны:
Get-DHCPServerv4OptionValue -ComputerName msk-dhcp1 -ScopeId 10.10.1.0 | Format-List
Показать текущий список арендованных адресов для области 10.10.1.0:
Get-DHCPServerv4Lease -ScopeId 10.10.1.0 -ComputerName msk-dhcp1
Создать DHCP резервацию для клиента, которому назначен динамический IP адрес 10.10.1.88 (конвертировать выданный адрес в зарезервированный):
Get-DhcpServerv4Lease -ComputerName msk-dhcp1 -IPAddress 10.10.1.88| Add-DhcpServerv4Reservation -ComputerName msk-dhcp1
Можно массово зарезервировать IP адреса для компьютеров по списку из csv файла. Для этого создайте текстовый файл в формате:
ScopeId,IPAddress,Name,ClientId,Description 10.10.1.0,10.10.1.88,Client1,ba-ab-5c-3d-4e-6f,Reservation PC-msk-s1 10.10.1.0,10.10.1.89,Client2,ba-ab-5c-5d-2e-3f,Reservation PC-msk-s2
Сохраните файл с именем
c:\dhcp\DHCPReservations.csv
и запустите следующую команду, которая импортирует данные из csv файла и создаст DHCP резервации для клиентов:
Import-Csv –Path c:\dhcp\DHCPReservations.csv | Add-DhcpServerv4Reservation -ComputerName msk-dhcp1
Отключить область на DHCP сервере:
Set-DhcpServerv4Scope -ComputerName msk-dhcp1-ScopeId 10.10.1.0-State InActive
Удалить область с DHCP сервера:
Remove-DHCPServerv4Scope -ComputerName msk-dhcp1-ScopeId 10.10.1.0 -Force
Возможно получить статистику DHCP сервера (количество областей, резерваций, процент использования адресов и пр.).
Get-DhcpServerv4Statistics -ComputerName msk-dhcp1
Аналогичная информация для конкретной области может быть получена с помощью командлета Get-DhcpServerv4ScopeStatistics.
Конфигурацию DHCP сервера можно экспортировать в указанный XML файл с помощью команды:
Export-DHCPServer -ComputerName msk-dhcp1 -File C:\dhcp\dhcp-export.xml
Совет. Заданием с такой командой в планировщике задач можно реализовать регулярное резервное копирование конфигурации DHCP сервера.
В дальнейшем эти настройки DHCP сервера можно импортировать (перенести) на другой DHCP сервер:
Import-DHCPServer -ComputerName msk-dhcp2 -File C:\dhcp\dhcp-export.xml -BackupPath C:\dhcpbackup\
In this post we’ll take a detailed look at the properties of the Windows Server 2016 IPv6 stack.
I perform(ed) this exercise for several reasons:
- Server 2016 is the latest OS released by Microsoft so this might give an indication as for their plans & strategy when it comes to supporting certain specifications.
(here you may keep in mind that the ~50 IETF meetings having passed since the publication of RFC 2460 provided ample opportunity for creative minds to come up with ever new ideas for “enhancing” IPv6, without too much real-life feedback/reality checks from enterprise space though, as simply not many of such organizations have deployed it at scale… or are incentivized to send their employees to week-long meetings in expensive hotels on other continents twice a year…). - as I laid out in this post the configuration approach an organization takes for their servers might depend on the support of specific features.
- obviously for both IPv6 planning and operations it might be helpful to understand the respective behavior of individual operating systems (which is why we researched stuff like this or this in the past).
- many years ago Microsoft published white papers with details as for the TCP/IP parameters of their OSs (incl. stuff like registry parameters to control it etc.) but I’m not aware of such a document for Server 2016 or Windows 10. I hence hope this post can somewhat contribute to public knowledge of the intricacies of their latest IPv6 stack.
Version
This is the Windows version I looked at:
Microsoft Windows [Version 10.0.14393]
As of this article this equates to Windows 10 Anniversary Update but I tested an installation of “Windows Server 2016 Standard”. I assume that except for some settings “tweaked for a server role” (like the creation of temporary addresses being disabled by default) the behavior of Windows 10 will be pretty similar to what’s described below, but one of my colleagues will test this in detail soon (results then presented in an update post to this one, or maybe in a future revision of this Internet Draft).
Tunnel Adapters
ISATAP as well Teredo adapters were present after the installation (more precisely: after the first successful installation of a network adapter, see below):
Tunnel adapter isatap.speedport.ip: Media State . . . . . . . . . . . : Media disconnected Connection-specific DNS Suffix . : speedport.ip Tunnel adapter Teredo Tunneling Pseudo-Interface: Connection-specific DNS Suffix . : IPv6 Address. . . . . . . . . . . : 2001:0:5ef5:79fb:4e7:27b0:3f57:fd99 Link-local IPv6 Address . . . . . : fe80::4e7:27b0:3f57:fd99%30 Default Gateway . . . . . . . . . : C:\>netsh int teredo show state Teredo Parameters --------------------------------------------- Type : client Server Name : win10.ipv6.microsoft.com. Client Refresh Interval : 30 seconds Client Port : unspecified State : dormant
Given I don’t think that there’s much need (dynamic) tunnel technologies nowadays (let alone on systems acting as “servers”; one notable exception being servers offering DirectAccess services, as Richard Hicks rightfully pointed out) I did not perform any further investigation on them but immediately disabled both by:
netsh int isatap set state disabled netsh int teredo set state disabled
This can be done in PowerShell, too:
Set-NetTeredoConfiguration -Type Disabled Set-NetIsatapConfiguration -State Disabled
And, of course, this could be done by means of GPOs.
DHCPv6 DUID
Let’s quickly look at the generation of the system’s DHCPv6 DUID. The installation was done on a laptop from our lab and interestingly both the build-in wireless and wired NICs were not recognized properly in the course of the procedure. This in turn meant that the system performed the first full boot process without any network adapters which had the consequence that no generation of the DUID took place. After installing the drivers for the WiFi interface and rebooting the following DUID was created:
As we can see this is a DUID “Based on Link-layer Address Plus Time [DUID-LLT]” (RFC 3315, sect. 9.2) which actually doesn’t come as a surprise given Windows (like many other OSs) has been using this as default in the past (and RFC 3315 recommends this for systems “that contain some form of writable non-volatile storage”). At a later point (after installation of the drivers for the wired Ethernet NIC) I tried to change the DUID to an LL-type one by deleting the registry key and putting a “00 03 00 01 E4 A7 A0 5B 85 E2” into the key (which should be a valid one according to RFC 3315, sect. 9.4).
The result was that, after another reboot, the DUID was overwritten by a new LLT based one. Interestingly enough this time with the MAC address of the Ethernet interface (the initial one was derived from the Wi-Fi interface, with this being the only one available at the time), even though the Ethernet interface had a higher interface ID/number (as of Windows’s own notation) and was disconnected when the system rebooted.
Overall this means that it seems not possible to modify the DUID generation mechanism on Windows systems at all, which is bad news for people hoping to either change it to LL-based generation in an early system initialization state or at least replace it with an LL-type one later on (e.g. in a scripted way, with MAC addresses fed from a CMDB), in order to facilitate (parsing for) DHCP reservations (so RFC 6939 support might be the only way to realize reservations in an operationally feasible way, as laid out in this post).
DHCPv6 Behavior
This is a particularly interesting section. Some of you may know that, since Windows 8.1, Microsoft OSs send DHCPv6 SOLICIT messages once their IPv6 stacks get initialized, even without being “told” to do so by router advertisements with an M flag. Many people incl. myself think that this somewhat violates RFC 4861 where it’s stated:
“Note: If neither M nor O flags are set, this indicates that no information is available via DHCPv6.”
but one might – rightfully – reply that using the term “indicate” does not constitute language with a claim to be normative…
Anyway Server 2016 shows this behavior as well, and the DHCPv6 Client service is running by default. The latter might be debatable by itself (it’s a “server” operating system which most sysadmins will have a tendency to configure in a way that leads to somewhat predictable – please note I’m avoiding the term “static” – addresses, which DHCPv6 might yield, or not).
In short: running a DHCP client service enabled by default on a “server” system somewhat feels wrong 😉
The more annoying aspect (than the potential deviation from the specs) of this approach is the following one: in segments where the router sends RAs with the O flag set to provision (IPv6) DNS servers and a DHCPv6 server is present (I mean why send RAs with O flag if not with a DHCPv6 server being reachable) but not configured to hand out addresses, this DHCPv6 server will respond to the Windows system’s initial DHCPv6 SOLICIT with a DHCPv6 ADVERTISE message containing a “NoAddrAvail” status code, but still including the option (23) holding the “DNS recursive name server”. Unfortunately the host then seems to ignore this DHCPv6 message/packet in full (which is aligned with RFC 3315, sect. 17.1.3, stating “The client MUST ignore any Advertise message that includes a Status Code option containing the value NoAddrsAvail”) and apparently (I tested this in multiple segments with different routers + RAs and DHCPv6 servers) later never sends a DHCPv6 INFORMATION-REQUEST message (which it should after receiving the RA with O flag set). This in turn means the host never learns the IPv6-related DNS resolvers/servers.
A pcap file showing this behavior can be found here. Please note I’ve stripped it down to the most relevant packets; the critical thing is that no DHCPv6 Inform can be observed, not even in the full capture ;-).
As Windows also ignores Option 25 (RDNSS) in router advertisements (see below) there’s apparently no way of distributing an IPv6 DNS resolver except for fully managed (M flag) DHCPv6.
Some Additional Notes on the DHCPv6 Behavior
Sending out “untriggered” DHCPv6 Solicits as part of the IPv6 stack/interface initialization seems somewhat contradicted when looking (by means of “netsh int ipv6 int $NUMBER”) at the command’s output which states:
Managed Address Configuration : disabled
Other Stateful Configuration : enabled
In fact the most reliable way to identify if this (behavior) is enabled/performed on an interface, from my perspective (feel free to correct me in a comment to the post), is this PowerShell command:
PS C:\> Get-NetIPInterface Ethernet -AddressFamily IPv6 ifIndex InterfaceAlias AddressFamily NlMtu(Bytes) InterfaceMetric Dhcp ConnectionState PolicyStore ------- -------------- ------------- ------------ --------------- ---- --------------- ----------- 13 Ethernet IPv6 1500 35 Enabled Connected ActiveStore
Furthermore if one wants to disable this thing (without stopping the DHCP Client service in full which requires a number of other services to be stopped as well and, more importantly, carries the risk that it is re-started without notice at any moment, e.g. when an interface is dis- & re-enabled) is the following command:
PS C:\> Set-NetIPInterface Ethernet -AddressFamily IPv6 -dhcp disabled
RA Option 25 (RDNSS)
There wasn’t much hope anyway but I nevertheless tested if adding Option 25 (RDNSS) to the RAs could be a way to distribute (IPv6 related) DNS resolver information. The result is: no, Windows still ignores Option 25 in RAs. Assuming that Windows 10 behaves the same way this means that a Windows system cannot get (in a dynamic/automatic manner) any IPv6 DNS resolver information in networks operating with RDNSS via RAs and/or O flag based DHCPv6, which in turn applies to many consumer (broadband or mobile) networks. To be honest I don’t think this is a smart design decision, and it probably won’t help IPv6 deployment (as Windows clients in such networks will be forced to rely on doing DNS resolutions over IPv4).
Implementation of RFC 6980
I was also interested if the stack implements RFC 6980, that means if fragmented neighbor discovery/router advertisement packets (which could circumvent the usual infrastructure based protection against rogue router advertisements, that is “RA Guard“) are ignored (as RFC 6980 sect. 5 mandates).
Here I was very pleasantly surprised that this actually seems to be the case (read: packets are discarded), at least for the vast majority of such packets. With the help of Chiron I managed to sneak around this protection by sending RAs split into two fragments with an added Destination Options header in the fragmentable part, but the good news is that these were not able to circumvent RA Guard (standard implementation on Cisco 2960 switch with a pretty old image) so I’ve not identified any way to make the test system accept rogue RAs in an RA Guard protected setting. I’ll discuss these tests in detail in another post to appear in a few days. Overall I’d say that Server 2016 pretty much fully implements RFC 6980.
Misc
For those interested here’s how some internal IPv6 parameters are set right after the installation (note that obviously some depend on the local environment such as the MTU [provisioned from the RA] and some of the timers/lifetimes, so your mileage may vary):
C:\>netsh int ipv6 sh int 11 Interface Wi-Fi Parameters ---------------------------------------------- IfLuid : wireless_32768 IfIndex : 11 State : connected Metric : 50 Link MTU : 1384 bytes Reachable Time : 28000 ms Base Reachable Time : 30000 ms Retransmission Interval : 1000 ms DAD Transmits : 1 Site Prefix Length : 64 Site Id : 1 Forwarding : disabled Advertising : disabled Neighbor Discovery : enabled Neighbor Unreachability Detection : enabled Router Discovery : enabled Managed Address Configuration : disabled Other Stateful Configuration : enabled Weak Host Sends : disabled Weak Host Receives : disabled Use Automatic Metric : enabled Ignore Default Routes : disabled Advertised Router Lifetime : 1800 seconds Advertise Default Route : disabled Current Hop Limit : 255 Force ARPND Wake up patterns : disabled Directed MAC Wake up patterns : disabled ECN capability : application PS C:\> get-netipv6protocol DefaultHopLimit : 128 NeighborCacheLimit(Entries) : 1024 RouteCacheLimit(Entries) : 32768 ReassemblyLimit(Bytes) : 263342688 IcmpRedirects : Enabled SourceRoutingBehavior : DontForward DhcpMediaSense : Enabled MediaSenseEventLog : Disabled MldLevel : All MldVersion : Version2 MulticastForwarding : Disabled GroupForwardedFragments : Disabled RandomizeIdentifiers : Enabled AddressMaskReply : Disabled UseTemporaryAddresses : Disabled MaxTemporaryDadAttempts : 3 MaxTemporaryValidLifetime : 7.00:00:00 MaxTemporaryPreferredLifetime : 1.00:00:00 TemporaryRegenerateTime : 00:00:05 MaxTemporaryDesyncTime : 00:10:00
TL;DR
Here’s a summary of some of the parameters which you might consider relevant:
And here’s a list of immediate tweaks we recommend to perform on the vast majority of Server 2016 based systems:
- Disable Teredo and ISATAP tunnel adapters by respective commands (see above).
- Disable “untriggered” DHCPv6 client behavior on interface basis by respective PowerShell cmdlet (above).
There will be a sequel to this post very soon (looking at some more stuff, e.g. to find out if RFC 7217 based IID generation is supported, and describing the RFC 6980 related tests in more detail). Furthermore I will ask Marcus Keane from Microsoft, whom I’ve met a several occasions and who’s a really nice (and smart) guy, for comments => these might be added then, too. Btw, in the interim you should read his post on their own IPv6 deployment.
Last but not least I will discuss some of these bits in a talk at the Troopers 17 “Next Generation Internet” (NGI) event which includes a dedicated IPv6 security track (being the successor of the IPv6 Security Summit held in the last years).
Have a great week everybody
Enno
@Enno_Insinuator
Содержание
- Настройка dhcp ipv6 windows server 2016
- Установка и настройка DHCP-сервера в группе
- Аннотация
- Установка службы DHCP
- Установка службы DHCP на существующем сервере
- Настройка службы DHCP
- Создание новой области
- Устранение неполадок
- Клиенты не могут получить IP-адрес
- DHCP-сервер недоступен
- Ссылки
- Как настроить DHCP-сервер в Windows Server 2016
- Процесс установки
- Процесс настройки
Настройка dhcp ipv6 windows server 2016
После того, как развернут и настроен DNS-сервер и развернуты Доменные службы Active Directory , приходит время установки и настройки DHCP-сервера. Это очень удобно, так как компьютеры в сети будут получать автоматически IP-адреса, которые не будут конфликтовать друг с другом. Не будет опасности, что сетевой адрес неправильно настроен или в сети несколько одинаковых ip-адресов, что ведет к сетеввым конфликтам и неработоспособности оборудования. Нет необходимости тратить время на настройку IP-адресов компьютеров в сети.
1. Нажимаем «Пуск», далее «Диспетчер серверов».
2. В следующем окне — «Добавить роли и компоненты».
3. В окне «Перед началом работы» читаем сведения и нажимаем «Далее». В следующем окне оставляем по умолчанию «Установка ролей или компонентов». Затем выбираем сервер, на котором будет развернута роль DHCP-сервера, затем «Далее».
4. Ставим чекбокс напротив DHCP-сервер. В появившемся окне нажимаем «Добавить компоненты». Нажимаем «Далее».
5. В новом окне «Выбор компонентов» и «DHCP-сервер» — нажимаем «Далее». Проверяем, что произойдет установка роли «DHCP-сервера» и нажимаем «Установить». После этого окно установки можно закрыть. После установки необходимого программного обеспечения появится предупреждение о том, что установка роли DHCP-сервер закончена.
6. После появления предупреждения об окончании установки роли DHCP-сервер, нажимаем «Завершение настройки DHCP».
7. В окне «Описание» читаем, что требуется выполнить для завершения настройки DHCP-сервера. Нажимаем «Далее».
8. Оставляем по умолчанию учетную запись администратора домена для авторизации DHCP-сервера. Нажимаем «Фиксировать». В последнем окне нажимаем «Закрыть».
9. Пришло время настроить DHCP-сервер. Для этого в «Диспетчер серверов» выбираем «Средства», далее «DHCP».
10. В окне настройки DHCP, нажимаем правой клавиши мыши на сервер домена, выбираем «Добавить или удалить зону привязки. «.
11. Проверяем настройку сетевого интерфейса, через который будут обслуживаться DHCP-клиенты, для выхода нажимаем «ОК».
12. Для создания области нажимаем правой клавиши мыши на IPv4 и выбираем «Создать область..».
13. Попадаем в «Мастер создания области», нажимаем «Далее».
14. Задаем имя области, затем нажимаем «Далее».
15. В следующем окне задаем начальный и конечный IP-адрес, которые будут использоваться DHCP-сервером. Если необходимо, исправляем маску подсети, затем «Далее».
16. В следующем окне вводим диапазон IP-адресов, которые необходимо исключить. Определив диапазон, нажимаем «Добавить».
17. Если необходимо, создаём несколько дапазонов IP-адресов, которые необходимо исключить. После их добавления, нажимаем «Далее».
18. Срок действия аренды адресов оставляем по умолчанию или задаём другой, нажимаем «Далее».
19. Если необходимо, настраиваем общие параметры DHCP-сервера. Для этого устанавливаем чекбокс «Да, настроить эти параметры сейчас» и нажимаем «Далее».
20. Если имеется шлюз, то указываем его IP-адрес. Затем нажимаем «Добавить», потом «Далее».
21. Для разрешения DNS-имен указываем родительский домен, который клиентские компьютеры в сети будут использовать для разрешения DNS-имен. Также указываем IP-адрес этого сервера. Затем «Далее».
22. Если используется WINS-серверы, то можно указать «Имя сервера» и его IP-адрес. Можно ничего не добавлять, просто нажать «Далее».
23. В новом окне ставим чекбокс «Да, я хочу активировать эту область сейчас», затем «Далее».
24. Будет создана область IP-адресов для аренды, которую можно использовать.
Посмотреть, что и как делать, можно здесь:
Установка и настройка DHCP-сервера в группе
В этой статье описывается установка и настройка DHCP-сервера в группе.
Исходная версия продукта: Windows Server 2012 R2
Исходный номер КБ: 323416
Аннотация
В этой пошаговой статье описывается настройка нового DHCP-сервера на основе Windows Server 2003 на отдельном сервере, который может обеспечить централизованное управление IP-адресами и другими настройками конфигурации TCP/IP для клиентских компьютеров в сети.
Установка службы DHCP
Перед настройкой службы DHCP необходимо установить ее на сервер. DHCP не устанавливается по умолчанию во время обычной установки Windows Standard Server 2003 или Windows Enterprise Server 2003. DHCP можно установить во время начальной установки Windows Server 2003 или после завершения начальной установки.
Установка службы DHCP на существующем сервере
- Нажмите кнопку «Начните», выберите пункт «Панель управления» и выберите пункт «Добавить или удалить программы».
- В диалоговом окне «Добавление и удаление программ» нажмите кнопку «Добавить или удалить компоненты Windows».
- В мастере компонентов Windows выберите «Сетевые службы» в списке «Компоненты», а затем щелкните «Сведения».
- В диалоговом окне «Сетевые службы» щелкните, чтобы выбрать этот протокол, а затем нажмите кнопку «ОК».
- В мастере компонентов Windows нажмите кнопку «Далее», чтобы запустить установку. Вставьте компакт-диск Windows Server 2003 в компакт-диск компьютера или DVD-дисков, если это будет предложено сделать. Программа установки копирует DHCP-сервер и файлы инструментов на компьютер.
- После завершения установки нажмите кнопку «Готово».
Настройка службы DHCP
После установки службы DHCP и ее начала необходимо создать область. Областью является диапазон действительных IP-адресов, доступных для аренды клиентских компьютеров DHCP в сети. Корпорация Майкрософт рекомендует, чтобы каждый DHCP-сервер в вашей среде имеет по крайней мере одну область, которая не перекрывается с любой другой областью DHCP-сервера в вашей среде. В Windows Server 2003 DHCP-серверы в домене на основе Active Directory должны быть авторизданы для предотвращения сетевого перенаступа DHCP-серверов. Любой DHCP-сервер Windows Server 2003, который определяет себя как неавторизованный, не будет управлять клиентами.
Создание новой области
- Нажмите кнопку » Start», «Программы», «Администрирование» и «DHCP».
- В дереве консоли щелкните правой кнопкой мыши DHCP-сервер, на котором нужно создать новую область DHCP, и выберите «Создать область».
- В мастере новой области нажмите кнопку «Далее», а затем введите имя и описание области. Имя может быть любым, но оно должно быть достаточно описательным, чтобы можно было определить назначение области в сети (например, можно использовать имя, например «Administration Building Client Addresses»). Нажмите кнопку «Далее».
- Введите диапазон адресов, которые могут быть арендованы в рамках этой области. Например, используйте диапазон IP-адресов от начального IP-адреса 192.168.100.1 до конечного адреса 192.168.100.100. Так как эти адреса даются клиентам, они все должны быть действительными адресами для вашей сети и в настоящее время не используются. Если вы хотите использовать другую маску подсети, введите новую маску подсети. Нажмите кнопку «Далее».
- Введите любые IP-адреса, которые необходимо исключить из введенного диапазона. Эти адреса включают любой адрес в диапазоне, описанного в шаге 4, который может быть уже статически назначен различным компьютерам в организации. Обычно контроллерам домена, веб-серверам, DHCP-серверам, DNS-серверам и другим серверам статически назначены IP-адреса. Нажмите кнопку «Далее».
- Введите количество дней, часов и минут до истечения срока аренды IP-адреса из этой области. Он определяет, как долго клиент может удерживать арендованный адрес, не продлевая его. Нажмите кнопку «Далее», а затем нажмите кнопку «Да», чтобы настроить эти параметры, чтобы расширить мастер, включив параметры для наиболее распространенных параметров DHCP. Нажмите кнопку «Далее».
- Введите IP-адрес шлюза по умолчанию, который должен использоваться клиентами, которые получают IP-адрес из этой области. Нажмите кнопку «Добавить», чтобы добавить в список адрес шлюза по умолчанию, а затем нажмите кнопку «Далее».
- При использовании DNS-серверов в сети введите доменное имя организации в поле «Родительский домен». Введите имя DNS-сервера и нажмите кнопку «Разрешить», чтобы убедиться, что DHCP-сервер может связаться с DNS-сервером и определить его адрес. Нажмите кнопку «Добавить», чтобы включить этот сервер в список DNS-серверов, которые назначены DHCP-клиентам. Нажмите кнопку «Далее», а затем выполните те же действия. Если вы используете сервер службы windows Internet Naming Service (WINS), добавив его имя и IP-адрес, нажмите кнопку «Далее».
- Нажмите кнопку «Да». Я хочу активировать эту область сейчас, чтобы активировать область и разрешить клиентам получать от нее аренду, а затем нажмите кнопку «Далее».
- Нажмите кнопку «Готово».
- В дереве консоли щелкните имя сервера и выберите «Авторизировать» в меню действий.
Устранение неполадок
В следующих разделах объясняется, как устранить некоторые проблемы, которые могут возникнуть при попытке установить и настроить DHCP-сервер на основе Windows Server 2003 в группе.
Клиенты не могут получить IP-адрес
Если У клиента DHCP нет настроенного IP-адреса, обычно это означает, что клиенту не удалось связаться с DHCP-сервером. Эта проблема может быть вызвана сетевой проблемой или недоступной DHCP-сервером. Когда DHCP-сервер запущен и другие клиенты могут получить допустимые адреса, убедитесь, что клиент имеет допустимые сетевые подключения и что все связанные клиентские аппаратные устройства (включая кабели и сетевые адаптеры) работают правильно.
DHCP-сервер недоступен
Если DHCP-сервер не предоставляет клиентам арендованные адреса, это часто происходит из-за того, что служба DHCP не запускалась. В этом случае серверу может быть не разрешено работать в сети. Если ранее можно было запустить службу DHCP, используйте просмотр событий, чтобы проверить системный журнал на все записи. В этих журналах объясняется, почему нельзя запустить службу DHCP.
Чтобы перезапустить службу DHCP:
- Нажмите кнопку Пуск и выберите пункт Выполнить.
- Введите cmd и нажмите ввод.
- Введите net start dhcpserver и нажмите ввод.
- Нажмите кнопку «Начните», выберите пункт «Панель управления», «Администрирование» и «Управление компьютером».
- Разйдите службы и приложения, а затем щелкните «Службы».
- Найдите и дважды щелкните DHCP-сервер.
- Убедитесь, что для запуска установлено автоматическое и что для состояния службы установлено состояние «Запущено». Если нет, нажмите кнопку «Начните».
- Нажмите кнопку «ОК», а затем закроем окно «Управление компьютером».
Ссылки
Для получения дополнительных сведений о DHCP в Windows Server 2003 щелкните следующий номер статьи, чтобы просмотреть статью в базе знаний Майкрософт:
Основные принципы DHCP 169289 (протокол динамической конфигурации хоста)
Клиенту DHCP 167014 может не удается получить DHCP-Assigned IP-адрес
133490 Устранение конфликтов дублирующихся IP-адресов в сети DHCP
Как настроить DHCP-сервер в Windows Server 2016
DHCP — это протокол динамической настройки узла, который позволяет автоматизировать настройку сетевых параметров клиента, таких как IP-адрес, шлюз, DNS, маска подсети. DHCP-сервер контролирует выдачу IP—адресов, предотвращает их дублирование и освобождает неиспользуемые адреса.
Ниже рассмотрим как установить и настроить DHCP-сервер на ОС Windows Server 2016 для одной подсети.
Процесс установки
- Запустим Диспетчер серверов и выберем «Add roles and features». Выберем первый пункт «Role — based or feature — based installation»:
- Укажем сервер, на который будем устанавливать роль DHCP:
- Далее необходимо найти и выбрать роль DHCP в списке. Соглашаемся добавить компоненты , требуемые для правильной работы службы DHCP . Так как компоненты добавлены на шаге «Server Roles», то шаг «Features» пропускаем:
- Мастер напомнит вам о то, что нужно заранее спланировать подсети, области и исключения:
- Проверяем устанавливаемые компоненты и нажимаем «Install»:
- После завершения установки можно начать первичную настройку DHCP. Переходим по ссылке «Complete DHCP configuration»:
Процесс первичной настройки проходит в два этапа:
1. Создание «Группы безопасности» для управления этим DHCP—сервером. Всего их две:
- DHCP Administrators — у членов группы имеются полные права на управление DHCP—сервером;
- DHCP Users — у членов группы есть возможность просмотра настроек сервера и списка подключенных устройств.
2. Авторизация DHCP-сервера в Active Directory (если он присоединен к домену). Данная настройка нужна, чтобы избежать появления в сети посторонних DHCP-серверов. Сервер должен пройти авторизацию чтобы служба DHCP запустилась:
- Вписываем учетные данные администратора и жмем кнопку «Commit». Если сервер не присоединен к домену, то выбираем последний пункт:
- Если всё сделано верно, мастер оповещает об успешном выполнении настройки:
Процесс настройки
Запускаем «Диспетчер серверов». Находим пункт DHCP в открывающемся списке «Tools»:
В нашем варианте мы рассматриваем выдачу IPv4 адресов, поэтому нужно создать новую область (Scope) — пул IP-адресов, выдаваемых клиентам. Нажимаем правой кнопкой мыши на IPv4 и выбираем «New Scope…»:
Открывается Мастер создания области, где мы вводим имя пула. Если необходимо, то можно ввести описание:
Определяем границы нашего пула, задав начальный и конечный IP-адрес. Также вводим маску подсети:
В случае необходимости можно добавить в исключения один или несколько IP-адресов из создаваемого пула. В этом диапазоне могут находиться сетевые устройства которым уже назначен статический IP. Тут же есть параметр задержки ответа сервера перед отправкой данных на запрос от хоста:
Далее можно указать время аренды IP-адреса. По умолчанию выставлено 8 дней:
Теперь Мастер предложит указать сетевые параметры (Gateway, DNS, WINS), выдаваемые клиентам в сети:
Укажем адрес сетевого шлюза:
Далее введем имя домена и DNS-сервер. DNS можно найти либо по имени сервера, либо указать IP-адрес:
Следующий этап позволяет добавить WINS-сервер:
Выбираем «Активировать» заданную нами область сейчас:
После настройки пула можно проверить работает ли сервер. Посмотреть подключенных клиентов можно перейдя в раздел «Address Leases». В нашем случае видим, что подключено одно устройство:
Если мы зайдем на клиентскую машину, то можем проверить правильность полученных настроек:
Хоть мы и рассматривали настройку на Windows Server 2016, данная инструкция так же подойдет и для Windows Server 2008—2012, так как процесс не сильно отличается.