Настройка dhcp windows server 2019 powershell

Обновлено: 04.07.2024

Постановка задачи

Я хочу вас научить производить настройку статического IP адреса, маски, шлюза и DNS серверов на вашем сетевом интерфейсе, разными методами, локально и удаленно. Ситуаций может быть очень много. Лично я являюсь приверженцем того, что любой сервер должен иметь выделенный, статический ip-адрес исключительно под него, тут можно долго спорить, что можно делать резервирование на DHCP, через который потом можно быстрее менять настройки, но я придерживаюсь такой политики, так как из отказоустойчивый DHCP может ломаться, если вы можете меня переубедить в моем видении, то прошу в комментарии.

Методы настройки сети в Windows Server 2019

Существует ряд методов и инструментов позволяющих производить настройки вашего сетевого интерфейса, их можно разделить на два подхода:

  1. Локальная настройка сетевых параметров
  2. Удаленная настройка сетевыми параметрами

Среди инструментов можно выделить:

  1. Свойства сетевого интерфейса
  2. Утилита командной строки netsh
  3. Командлеты powerShell
  4. Использование Windows Admin Center
  5. Различные утилиты

Настройка сети через графический интерфейс

Первый метод, можно назвать классическим, так как он самый простой и подойдет для большинства администратором. Тут мы с вами будем использовать оснастку "Центр управления сетями и общим доступом", настроим статический IP-адрес, маску сети, основной шлюз и DNS-сервера через графический интерфейс. У меня есть сервер RDCB01, для которого я выделил IP-адрес 192.168.31.10. На текущий момент айпишник прилетает от DHCP-сервера. Проверим текущие параметры интерфейса через командную строку, в которой нужно написать команду:

ipconfig смотрим текущий ip адрес

Чтобы открыть "Центр управления сетями и общим доступом" со списком сетевых интерфейсов, мы воспользуемся быстрыми командами Windows. Открываем окно выполнить и пишем в нем:

Открываем Центр управления сетями и общим доступом

Находим нужный сетевой интерфейс, в моем примере, это единственный Ethernet0 и заходим в его свойства.

Просмотр свойств сетевого интерфейса

Далее находим пункт "IP версии 4 (TCP/Ipv4)"и открываем его свойства, далее мы видим, что выделение сетевых настроек производится в автоматическом режиме, через службу DHCP.

Настройка сети в Windows Server 2019

Чтобы вбить статические настройки выбираем пункт "Использовать следующий IP-адрес" и по порядку задаем настройки, подготовленные заранее. В моем случае

  • IP-адрес 192.168.31.10
  • Маска подсети 255.255.255.0
  • Основной шлюз 192.168.31.254
  • Предпочитаемый DNS-сервер 192.168.31.1
  • Альтернативный DNS-сервер 192.168.31.2

Настройка статического ip-адреса в Windows Server 2019

Сохраняем все настройки и проверяем через Ipconfig /all, что все видится. Так же можете попробовать пропинговать ваш основной шлюз или DNS-сервер. На этом графическая настройка сети в Windows Server 2019 окончена.

Настройка сети в Windows Server 2019

Настройка сети через Windows Admin Center

С выходом Windows Server 2019 Microsoft наконец-то создает правильный инструмент для системного администратора, я говорю, о Windows Admin Center. Я вам уже подробно рассказывал, как устанавливать Windows Admin Center и его назначение. Если в двух словах, то это крутая веб консоль позволяющая управлять серверами и рабочими станциями с любого устройства, через ваш браузер. Давайте я покажу, как вы легко можете произвести установку статического Ip-адреса, маски, основного шлюза и DNS на удаленном сервере, через WAC. Напоминаю, что делать я это буду для сервера RDCB01. Давайте его пропингуем и выясним текущий адрес. Я вижу ip-адрес 192.168.31.56.

Открываем в браузере Windows Admin Center и производим подключение к нужному серверу.

Просмотр IP-адреса в Windows Admin Center

Далее находим раздел "Сеть", тут у вас будет список всех ваших сетевых интерфейсов. Выбираем нужный, тут чем хорошо вы сразу видите много сводной информации в нижней части.

Сетевые интерфейсы в Windows Admin Center

Для настройки сети нажмите кнопку "Параметры". Как видим стоит автоматическое получение настроек.

Настройка сети в Windows Server 2019 через Windows Admin Center

Активируем пункт "Использовать следующий IP-адрес" и задаем нужные сетевые настройки, после чего сохраняем изменения.

Настройка статического ip-адреса в Windows Server 2019 через Windows Admin Center

Подтверждаем применение настроек.

Подтверждение обновления настроек ipv4 в Windows Admin Center

В правом верхнем углу вам покажут, что началось задание по обновлению.

Удаленная Настройка сети в Windows Server 2019

Проверяем, перед этим единственное нужно очистить кэш-DNS. В итоге я вижу, что сервер пингуется по новому адресу.

Настройка сети в Windows Server 2019

В итоге удаленная настройка сети на сервере Windows Server 2019 выполнена.

Настройка сети Windows Server 2019 через командную строку

Второй метод заключается в использовании утилиты командной строки netsh. На практике, это используется в скриптах, или при настройке Windows Server в режиме Core. Я опять переведу свои настройки на получение адреса от DHCP сервера. DHCP присвоил мне адрес 192.168.31.56.

Просмотр сетевых настроек через командную строку

Для того, чтобы настроить статический IP-адрес через утилиту Netsh, вам нужно знать правильное имя сетевого адаптера, он легко смотрится при выводе команды Ipconfig /all. В моем примере, это Ethernet0.

netsh interface ip set address "Ethernet0" static 192.168.31.10 255.255.255.0 192.168.31.254
  • 192.168.31.10 - это мой статический Ip-адрес
  • 255.255.255.0 - это моя маска подсети
  • 192.168.31.254 - это мой основной шлюз

Настройка сети в Windows Server 2019 через netsh

Видим, что команда успешно отработала, можно сразу проверить применение настроек сети через ipconfig. Теперь выполним настройку основного и альтернативного DNS.

netsh interface ipv4 set dnsservers Ethernet0 static 192.168.31.1 primary

Настройка основного DNS через netsh

Прописываем альтернативный DNS адрес

netsh interface ipv4 add dnsservers Ethernet0 192.168.31.2 index=2

Настройка альтернативного DNS сервера через netsh

В итоге как видим у нас появился второй адрес DNS сервера на нашем сетевом интерфейсе. Настройка выполнена.

Если вам нужно вернуть сетевые настройки на получение адреса от DHCP сервера, то введите команду:

netsh interface ipv4 set dnsservers Ethernet0 dhcp && netsh interface ip set address Ethernet0 dhcp

netsh автоматическое получение настроек на сетевом интерфейсе

Настройка сети через PowerShell

Чтобы настроить статический адрес на сетевом интерфейсе с помощью командлетов, вам необходимо открыть от имени администратора оболочку PowerShell.

Определение ip адреса через PowerShell

Прежде чем мы начнем настройку сети через PowerShell в нашей Windows Server 2019, нам как и в случае с netsh, нужно выяснить имя сетевого интерфейса. Для этого вводим команду:

В результате я вижу имя интерфейса Ethernet0.

Get-NetAdapter Windows Server 2019

Пишем команду, где обратите внимание префикс сети 255.255.255.0 задается в виде -PrefixLength 24. На выходе вы сразу увидите примененные настройки.

Get-NetAdapter -Name Ethernet0 | New-NetIPAddress -IPAddress 192.168.31.10 -PrefixLength 24 -DefaultGateway 192.168.31.254

Настройка сети в Windows Server 2019 через PowerShell

Зададим теперь оба DNS-сервера через команду

Get-NetAdapter -Name Ethernet0 | Set -DnsClientServerAddress -ServerAddresses 192.168.31.1, 192.168.31.2

Посмотрим текущие сетевые настройки через команду:

Настройка DNS на сетевом интерфейсе в Windows Server 2019

Как видите все сетевые настройки в моем Windows Server 2019 успешно применены.

Удаленная настройка сети

Выше я уже показал вам метод удаленной настройки сети через Windows Admin Center, но существует и еще несколько методов, которые мне были полезны в моей практике. Первое, это использование все того же PowerShell. И так у меня есть компьютер W10-cl01 с Windos 10 и предположим хочу с него настроить сеть на сервере RDCB01.

Хочу отметить, что для этого метода у вас должно быть настроено использование WinRM (Службы удаленного управления Windows)

Открываем PowerShell, командой hostname я показываю, что сижу на компьютере W10-cl01. Далее для удаленного подключения вводим команду:

Я успешно подключился, теперь повторно введя команду hostname, я вижу, что сижу на компьютере RDCB01, и можно вводить команды описанные выше.

Удаленное подключение через PowerShell

Второй метод удаленной настройки сети на Windows Server 2019, это использование утилиты PsExec.exe, я,о ее настройке и установке рассказывал в статье "Включить RDP Windows удаленно и локально".

Начнется запуск службы на удаленном сервере.

Удаленная настройка сети в Windows Server 2019

Введя все ту же команду hostname я вижу, что подключен к удаленному серверу RDCB01, при желании вы можете использовать для настройки сети netsh или PowerShell, что нравится больше.

Удаленная настройка сети в Windows Server 2019-2

Популярные Похожие записи:

3 Responses to Настройка сети в Windows Server 2019, за минуту

Все зависит как построена у вас топология. Классический вариант, что у сетевой карты 1 сетевой адаптер и интернет идет по нему. Если серверу нужен выделенный IP-адрес и нет оборудования проксирования, то задействуется второй сетевой адаптер. Если у вас три может есть необходимость иметь какую-то защищенную сеть или другой VLAN, если нет то можно сделать тиминг.

Иван, день добрый! У меня есть сеть из 4 компьютеров один из них сервер на котором 3 сетевые карты. Мне нужно чтобы компьютеры были в домене и получали доступ в интернет. И я имел удаленный доступ к серверу.

Для установки и настройки роли DHCP-сервера имеем подготовленный сервер с операционной системой Windows Server 2019.

Установка роли DHCP-сервер

Шаг 1. На первом этапе установим роль DHCP-сервера, для этого в окне “Диспетчер серверов” выбираем "Добавить роли и компоненты".

Установка роли DHCP

Рисунок 1 - Установка роли DHCP

Шаг 2. Обращаем внимание перед установкой роли на предупреждение, затем нажимаем "Далее".

Шаг 3. Устанавливаем чекбокс "Установка ролей или компонентов", затем нажимаем "Далее".

Шаг 4. Выбираем сервер, на который будут установлены роли и компоненты - нажимаем "Далее".

Выбор сервера для установки роли

Рисунок 2 - Выбор сервера для установки роли

Шаг 5. Выбираем роль сервера, в нашем случае DHCP-сервер. Нажимаем "Далее".

Шаг 6. Выбрав роль DHCP” появится “Мастер добавления ролей и компонентов” для выбранных ролей сервера. Нажимаем "Добавить компоненты".

Добавление необходимых компонентов

Рисунок 3 - Добавление необходимых компонентов

Шаг 7. Требуемая роль и компоненты были выбраны ранее, Нажимаем "Далее".

Выбор дополнительных компонентов

Рисунок 4 - Выбор дополнительных компонентов

Шаг 8. Обращаем внимание на предупреждение DHCP-сервера, затем "Далее".

Шаг 9. Ставим "чекбокс" напротив "Автоматический перезапуск конечного сервера, если требуется", нажимаем "Установить". В результате произойдет установка выбранных ролей сервера.

Шаг 10. Далее после установки компонента наживаем "Завершение настройки DHCP".

Завершение настройки DHCP

Рисунок 5 - Завершение настройки DHCP

Шаг 11. Обращаем внимание на требования после завершения настройки DHCP-сервера, жмем "Далее".

Шаг 12. На данном этапе нажимаем "Закрыть".Установка роли завершена.

Настройка DHCP-сервера

На этом этапе приступим непосредственно к настройке роли DHCP.

Шаг 1. В диспетчере серверов нажимаем "Средства" - "DHCP".

Запуск консоли DHCP

Рисунок 6 - Запуск консоли DHCP

Шаг 2. Правой клавишей мыши нажимаем на сервер, в появившемся окне выбираем "Добавить или удалить привязки. ".

Добавление привязки

Рисунок 7 - Добавление привязки

Шаг 3. Выбираем сетевой интерфейс, который будет использовать DHCP-сервер. Далее "ОК".

Выбор сетевого адаптера

Рисунок 8 - Выбор сетевого адаптера

Шаг 4. Далее правой клавишей нажимаем на IPv4 и выбираем "Создать область. ".

Создание области

Рисунок 9 - Создание области

Шаг 5. Откроется окно для создания области IP-адресов. Нажимаем "Далее".

Шаг 6. Вводим имя области и если требуется описание, затем "Далее".

Шаг 7. Теперь введем диапазон адресов, который которые будет отдавать DHCP-сервер, а также маску подсети. Нажимаем "Далее".

Выбор диапазона адресов для DHCP-сервера

Рисунок 10 - Выбор диапазона адресов для DHCP-сервера

Шаг 8. Затем вводим один адрес или диапазон IP-адресов, необходимые исключить из области. Нажимаем "Добавить", после нажимаем "Далее".

Выбор диапазона, необходимый исключить

Рисунок 11 - Выбор диапазона, необходимый исключить

Шаг 9. Выбираем срок действия аренды адресов области. Снова "Далее".

Срок действия аренды

Рисунок 12 - Срок действия аренды

Шаг 10. Для настройки других параметров DHCP выбираем "Да, настроить эти параметры сейчас", мы же выполняем базовую настройку, следовательно выбираем “Нет, настроить эти параметры позже” затем "Далее".

Шаг 11. В окне появится "Вы успешно завершили работу с мастером создания области", нажимаем "Готово".

Шаг 12. Правой кнопкой нажимаем на “Область” и выбираем "Активировать".

Активация области DHCP-сервера

Рисунок 13 - Активация области DHCP-сервера

Шаг 13. Открываем "Пул адресов" и видим наш диапазон адресов для аренды.На этом настройка DHCP сервера окончена.

DHCP-сервер является важным компонентом ИТ-инфраструктуры в большинстве локальных сетей организаций. Давайте разберемся какие функции мониторинга DHCP может предоставить нам PowerShell. Для этого рассмотрим работу нескольких профильных командлетов.

Команды для управления DHCP-серверами на базе Windows являются частью модуля DhcpServer, к которому можно получить доступ установив RSAT для DHCP на Ваш ПК. Упомянутые здесь командлеты особенно полезны для анализа возникающих проблем.

Определение всех серверов и запрос их настроек

Однако для дальнейшего использования в других командах вы можете сохранить имена возвращенных серверов в переменной:

Некоторые основные настройки DHCP-сервера, например, является ли он членом домена и авторизован, можно получить с помощью следующего запроса:

Командлет Get-Dhcpserverdatabase сообщит вам, были ли данные восстановлены из резервной копии . Эту и другую информацию о базе данных также можно получить из следующего запроса:

С помощью командлета Get-DhcpServerAuditLog вы можете узнать, было ли активировано ведение журнала для службы DHCP и где хранится файл журнала. Однако вы не можете отобразить содержимое журнала с помощью этой команды.

Командлеты для IPv4 и IPv6

Большинство функций модуля доступно в двух версиях. Все функции имеют в своих именах «4» или «6», что идентифицирует их принадлежность к IPv4 или IPv6 соответственно. Поэтому следующие примеры для IPv4 могут быть применены и к IPv6:

Чтобы получить статистику по службе DHCP IPv4 в целом, воспользуйтесь следующим командлетом:

Анализ диапазонов

Большинство запросов, независимо от того, касаются они доступных арендованных или зарезервированных IP-адресов относятся к конкретным областям. Вы можете просмотреть их с помощью командлета Get-DhcpServerv4Scope . Если вы хотите вывести все диапазоны всех DHCP-серверов, чтобы увидеть, есть ли между ними перекрытие, можно поступить следующим образом:


Чтобы получить обзор наиболее важных данных для IPv4-областей DHCP-сервера, воспользуйтесь командлетом Get-DhcpServerv4ScopeStatistics

Если нам необходимо узнать какой процент диапазона уже используется и сколько адресов уже занято и доступно:

Свободные, арендованные и зарезервированные IP адреса

Данные по свободным Ip адресам можно получить с помощью командлета Get-DhcpServerv4FreeIPAddress . Если вы запустите его используя параметр ScopeID , вы получите только следующий свободный адрес. Чтобы получить большее количество доступных Ip адресов, необходимо ввести значение используя параметр NumAddress :

В этом примере перечислено 15 свободных адресов, начиная с 172.16.1.100

Возможно вам необходимо узнать, какие адреса и каким устройствам уже назначены:

Помимо свободных и уже назначенных IP адресов, обычно есть также зарезервированные для устройств с фиксированным IP. Их можно запросить следующим образом:

Если клиент не может получить адрес, проверьте, возможно он в списке запрещенных:

Модуль DhcpServer содержит в общей сложности 121 команду, которые не только запрашивает параметры и их состояние, но также могут выполнять настройки службы.

В этой статье мы рассмотрим особенности настройки параметров сетевых адаптеров в Windows из PowerShell. Посмотрим, как узнать и назначить статический IP адрес, DNS сервера, или настроить сетевой интерфейс на получение конфигурации IP от DHCP сервера. Вы можете использовать эти командлеты для настройки сети в Сore/Nano версиях Windows Server, в Hyper-V Server , изменения настроек IP на удаленных компьютерах или по сети серверах или в PS скриптах.

Ранее для настройки параметров сети в Windows из CLI использовалась команда netsh interface ipv4. В PowerShell 3.0 и выше для управления сетевыми настройками Windows можно использовать встроенный PowerShell модуль NetTCPIP .

Чтобы получить список командлетов в этом модуле, выполните:

get-command -module NetTCPIP

В этот модуль также входит командлет Test-NetConnection , который можно использовать для проверки доступности TCP портов на удаленных компьютерах.

Управление сетевыми адаптерами из PowerShell

Выведем список доступных сетевых интерфейсов компьютера:

Командлет возвращает имя интерфейса, состояние (Up/Down), MAC адрес, скорость на порту.

В этом примере у меня на компьютере несколько сетевых адаптеров (кроме физического подключения Ethernet0 есть несколько сетевых интерфейсов от Hyper-V и VMWare Player).

Вы можете обращаться к сетевым интерфейсам по их именам или индексам (столбец ifIndex). В нашем примере, чтобы выбрать физический LAN адаптер Intel 82574L нужно набрать команду:

Get-NetAdapter -Name "Ethernet0"

Get-NetAdapter -InterfaceIndex 8

Можно изменить имя адаптера:

Rename-NetAdapter -Name Ethernet0 -NewName LAN

Чтобы выключить сетевой интерфейс, используйте команды:

Get-NetAdapter -InterfaceIndex 13| Disable-NetAdapter

При включении интерфейса нельзя указать его индекс, т.к. он не присвоен. Можно указать имя адаптера или его описание.

Enable-NetAdapter -InterfaceDescription “Hyper-V Virtual Ethernet Adapter"

Если для адаптера указан VLAN , можно вывести его так:

Get-NetAdapter | ft Name, Status, Linkspeed, VlanID

Информация об используемом драйвере сетевого адаптера:

Get-NetAdapter | ft Name, DriverName, DriverVersion, DriverInformation, DriverFileName

Информация о физических сетевых адаптерах (PCI слот, шина и т.д.).

Просмотр настроек TCP/IP сетевого интерфейса из PowerShell

Получить текущие настройки сетевого интерфейса (IP адрес, DNS, шлюз):

Get-NetIPConfiguration -InterfaceAlias Ethernet0

Чтобы вывести более подробную информацию о конфигурации сетевого интерфейса, используйте команду:

Get-NetIPConfiguration -InterfaceAlias Ethernet0 -Detailed

Получить значение только IP адрес интерфейса:

(Get-NetAdapter -Name ethernet0 | Get-NetIPAddress).IPv4Address

Настроить статический IP адрес из PowerShell

Попробуем задать статический IP адрес для сетевого интерфейса. Чтобы изменить IP адрес, маску подсети и шлюз для сетевого интерфейса:

New-NetIPAddress –IPAddress 192.168.1.80 -DefaultGateway 192.168.1.1 -PrefixLength 24 -InterfaceIndex 8

Можно задать IP адрес, представив его в виде более массива (более наглядно):

$ipParams = @InterfaceIndex = 8
IPAddress = "192.168.1.22"
PrefixLength = 24
AddressFamily = "IPv4"
>
New-NetIPAddress @ipParams

Командлет New-NetIPAddress можно использовать для добавления второго IP адреса на сетевой интерфейс .

Если статический IP адрес уже настроен и нужно изменить его, используется командлет Set-NetIPAddress:

Set-NetIPAddress -InterfaceIndex 8 -IPAddress 192.168.1.90

Чтобы на интерфейсе отключить получение IP адреса от DHCP, выполните:

Set-NetIPInterface -InterfaceAlias Ethernet0 -Dhcp Disabled

Для просмотра таблицы маршрутизации используется командлет Get-NetRoute. Чтобы добавить новый маршрут, используется New-NetRoute:

New-NetRoute -DestinationPrefix "0.0.0.0/0" -NextHop "192.168.0.1" -InterfaceIndex 8

Отключим IPv6 протокол для сетевого интерфейса:

Get-NetAdapterBinding -InterfaceAlias Ethernet0 | Set-NetAdapterBinding -Enabled:$false -ComponentID ms_tcpip6

Set-DnsClientServerAddress: настроить адреса DNS серверов

Чтобы задать адреса первичного и вторичного DNS серверов в Windows, используется командлет Set-DNSClientServerAddress. Например:

Set-DNSClientServerAddress –InterfaceIndex 8 –ServerAddresses 192.168.1.11,10.1.1.11

Можно также задать DNS сервера через массив:

$dnsParams = @InterfaceIndex = 8
ServerAddresses = ("8.8.8.8","8.8.4.4")
>
Set-DnsClientServerAddress @dnsParams

После изменения настроек DNS, можно очистить DNS кэш:

PowerShell: Настройка получения IP адреса от DHCP сервера

Чтобы сетевой интерфейс компьютера получал динамический IP адрес от DHCP сервера, выполните команду:

Set-NetIPInterface -InterfaceAlias Ethernet0 -Dhcp Enabled

Очистите настройки DNS серверов:

Set-DnsClientServerAddress –InterfaceIndex 8 -ResetServerAddresses

И перезапустите интерфейс для получения IP адреса:

Restart-NetAdapter -InterfaceAlias Ethernet0

Если ранее у вас был настроен шлюз, удалите его:

Set-NetIPInterface -InterfaceAlias Ethernet0| Remove-NetRoute -Confirm:$false

Удаленное изменение IP/DNS настроек в Windows

Вы можете использовать PowerShell чтобы удаленно изменить настройки IP адресов или DNS серверов на нескольких удаленных компьютерах. Допустим, ваша задача – изменить настройки DNS для всех серверов в указанном контейнере AD. Для получения списка компьютеров в скрипте ниже примере используется командлет Get-ADComputer , а удаленное подключение к компьютерам выполняется через WinRM (командлет Invoke-Command):

Читайте также: