Как изменить тип сети через реестр Windows (ключ Category) на Server 2025

Определение: тип сети в Windows Server 2025 — это категория сетевого профиля (Public/Private/DomainAuthenticated), которая влияет на политики брандмауэра, сетевое обнаружение и доверие к подсетям. Параметр задаётся DWORD-значением Category в реестре профиля сети по пути HKLMSOFTWAREMicrosoftWindows NTCurrentVersionNetworkListProfiles{GUID}. 🛡️

Параметр/Сущность Значение/Описание
Путь реестра HKLMSOFTWAREMicrosoftWindows NTCurrentVersionNetworkListProfiles{GUID}
Ключ Category DWORD: 0 — Public, 1 — Private, 2 — DomainAuthenticated
Как найти нужный профиль По полям ProfileName/Description внутри Profiles или через PowerShell Get-NetConnectionProfile
Применение изменений Перезапуск служб NlaSvc и netprofm, либо отключение/включение сетевого адаптера 🔁
Проверка результата PowerShell: Get-NetConnectionProfile | Select Name, InterfaceAlias, NetworkCategory
Важная особенность Профиль DomainAuthenticated (2) устанавливается системой только при подтверждённой доменной аутентификации
Риски Смена типа сети меняет активный профиль брандмауэра и может прервать удалённый доступ ⚠️
Групповые политики Могут переопределять локальные настройки через Network List Manager Policies

Когда это нужно и что меняется 🧰

  • При автоматической классификации как Public на сервере, где нужно разрешить обнаружение/SMB в локальной сети.
  • Для приведения поведения брандмауэра к корпоративным требованиям (например, Private в DMZ не нужен, а в офисной сети — нужен).
  • Для устранения проблем, когда NLA неверно определил категорию или «застрял» после смены сети/вендора NIC.

Изменение Category напрямую влияет на активный профиль Microsoft Defender Firewall (Public/Private/Domain) и на набор применяемых правил, сетевое обнаружение, возможность получения ответов на пинги и доступ к службам.

Где находится параметр в реестре

Каждая подключённая сеть имеет свой профиль в ветке:

HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionNetworkListProfiles{GUID}

Внутри профиля ищите:

  • ProfileName (REG_SZ) — дружелюбное имя сети, как в PowerShell.
  • Description (REG_SZ) — описание/провайдер.
  • Category (REG_DWORD) — 0/1/2, задаёт тип сети.

Сопоставить текущий сетевой интерфейс с нужным {GUID} удобнее через PowerShell-команду Get-NetConnectionProfile и поиск по ProfileName в реестре.

Пошаговая инструкция (Server 2025)

  1. Проверьте текущий тип сети:

    PowerShell
    Get-NetConnectionProfile | Format-Table Name,InterfaceAlias,InterfaceIndex,NetworkCategory
    
  2. Сделайте резервную копию параметров (консоль/Server Core):

    cmd
    reg export "HKLMSOFTWAREMicrosoftWindows NTCurrentVersionNetworkListProfiles" C:backup_network_profiles.reg /y
    
  3. Найдите профиль в реестре. Откройте regedit.exe (или используйте PowerShell/REG.EXE) и просмотрите подпапки {GUID}, сопоставив ProfileName с именем из шага 1.

  4. Измените значение Category:

    • 0 — Public (гостевая/недоверенная сеть)
    • 1 — Private (доверенная локальная сеть)
    • 2 — DomainAuthenticated (доменная сеть; поставится системой только при успешной проверке домена)
    PowerShell
    # Пример: установить Private
    $guid = (Get-Item 'HKLM:SOFTWAREMicrosoftWindows NTCurrentVersionNetworkListProfiles*' |
      Where-Object { $_.GetValue('ProfileName') -eq 'Network' }).PSChildName
    Set-ItemProperty -Path "HKLM:SOFTWAREMicrosoftWindows NTCurrentVersionNetworkListProfiles$guid" -Name Category -Value 1 -Type DWord
    
  5. Примените изменения, перезапустив службы NLA/Network List (или временно отключите/включите сеть):

    PowerShell
    Restart-Service -Name NlaSvc -Force
    Restart-Service -Name netprofm -Force
    # Альтернатива:
    # Disable-NetAdapter -Name "Ethernet" -Confirm:$false; Start-Sleep 2; Enable-NetAdapter -Name "Ethernet" -Confirm:$false
    
  6. Проверьте результат:

    PowerShell
    Get-NetConnectionProfile | Select-Object Name, InterfaceAlias, NetworkCategory
    

Сценарии и команды для Server Core

PowerShell
# Показать все профили и их GUID
Get-Item 'HKLM:SOFTWAREMicrosoftWindows NTCurrentVersionNetworkListProfiles*' |
  ForEach-Object {
    [PSCustomObject]@{
      Guid = $_.PSChildName
      ProfileName = $_.GetValue('ProfileName')
      Category = $_.GetValue('Category')
    }
  } | Format-Table

# Установить Private по InterfaceIndex без открытия regedit
$cp = Get-NetConnectionProfile | Where-Object InterfaceIndex -eq 12
$guid = (Get-Item 'HKLM:SOFTWAREMicrosoftWindows NTCurrentVersionNetworkListProfiles*' |
  Where-Object { $_.GetValue('ProfileName') -eq $cp.Name }).PSChildName
Set-ItemProperty "HKLM:SOFTWAREMicrosoftWindows NTCurrentVersionNetworkListProfiles$guid" -Name Category -Value 1 -Type DWord
Restart-Service NlaSvc, netprofm -Force
cmd
:: То же через REG.EXE
for /f "tokens=*" %a in ('reg query "HKLMSOFTWAREMicrosoftWindows NTCurrentVersionNetworkListProfiles"') do @reg query "%a" /v ProfileName
:: После нахождения нужного GUID:
reg add "HKLMSOFTWAREMicrosoftWindows NTCurrentVersionNetworkListProfiles{GUID}" /v Category /t REG_DWORD /d 1 /f
net stop nlasvc & net stop netprofm & net start nlasvc & net start netprofm

Частые проблемы и их решение ⚙️

  • После установки 2 (DomainAuthenticated) профиль возвращается к 0/1. Причина: нет связи с контроллером домена; NLA переопределяет значение. Решение: убедитесь в корректной DNS/AD-аутентификации, затем дать NLA выставить профиль автоматически.
  • Групповая политика сбрасывает Category. Проверьте Computer Configuration → Windows Settings → Security Settings → Network List Manager Policies. Либо снимите принудительные правила, либо настройте их корректно.
  • Потеря удалённого доступа после смены профиля. Держите консольный доступ/iDRAC/iLO и заранее разрешите правила RDP/WinRM под все профили или выполните изменение в непиковое время. Всегда имейте резервный канал управления 💾.
  • Несколько адаптеров: меняйте Category для каждого соответствующего профиля; активный маршрут по умолчанию определяет, какой профиль «влияет» на исходящие подключения.
  • NLA «зависает»: перезапустите NlaSvc и netprofm; при необходимости перезапустите mpssvc (брандмауэр) и временно отключите/включите адаптер.

Политики и фиксация нужного типа сети

Чтобы зафиксировать поведение на серверах, используйте Group Policy:

  • Computer Configuration → Windows Settings → Security Settings → Network List Manager Policies.
  • Настройте «Unidentified Networks» и «Identified Networks»: Set as Private, запретите пользователям менять расположение сети.
  • Определите, какие службы брандмауэра разрешены под каждым профилем (Microsoft Defender Firewall with Advanced Security).

Это предотвратит нежелательные откаты и приведёт конфигурацию к стандартам компании.

FAQ по смежным темам

В: Можно ли менять тип сети только через реестр, без PowerShell?
О: Да, с помощью regedit или reg.exe. Однако PowerShell облегчает поиск нужного GUID и проверку результата.

В: Как быстро проверить, какой профиль брандмауэра активен?
О: В PowerShell: (Get-NetConnectionProfile).NetworkCategory и Get-NetFirewallProfile | Select Name, Enabled. Также можно посмотреть в Windows Security → Firewall & network protection (на Server с Desktop Experience).

В: Что делать, если после перезагрузки профиль снова Public?
О: Проверьте связь с доменом, настройки GPO Network List Manager Policies, корректность DNS, порядок сетевых интерфейсов и наличие стороннего ПО, влияющего на NLA.

В: Есть ли безопасный способ «накатить» изменения массово?
О: Да, через PowerShell Remoting/WinRM и Desired State Configuration/Intune/Group Policy Preferences. Перед массовым изменением проверьте, что RDP/WinRM открыты для всех целевых профилей.

В: Отличается ли поведение в Server 2025 от 2019/2022?
О: Логика NLA и ключ Category остались прежними. Добавлены усиленные политики безопасности по умолчанию и возможные корпоративные базовые наборы, из‑за чего чаще встречается принудительный Public. Принципы и ключи реестра совместимы.

Оцените:
( Пока оценок нет )
Фотофайл - лучшие картинки и фото
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
0
Теперь напиши комментарий!x