Перевод VPN-адаптера Windows в состояние «Частный» правилен для корпоративного туннеля и неверен для клиента коммерческого VPN, и разница не косметическая. Категория сети выбирает профиль брандмауэра, поэтому одно изменение сразу пропускает целый набор правил. Я видел сценарий входа, который переводил каждый неопознанный адаптер в «Частный», и это тихо открыло общий доступ к файлам в гостиничной беспроводной сети. Ответ определяют три условия, и все они должны выполняться, прежде чем вы тронете настройку.

Что на самом деле определяет категория

Network Location Awareness строит подпись для каждой подключённой сети из того, что адаптер может сообщить: адрес шлюза и MAC, суффикс DNS, отвечает ли контроллер домена и достигает ли сеть интернета. Windows привязывает профиль к этой подписи, а затем брандмауэр применяет набор правил этого профиля. «Общедоступный» — запасной вариант, когда определение не удалось, поэтому работающий туннель может по-прежнему помечаться как неопознанная сеть.

Адаптер TUN или TAP обычно даёт определению очень мало сведений. Партнёр туннеля часто один адрес, а не шлюз, DNS может передаваться только внутри туннеля, а у адаптера нет собственного маршрута по умолчанию. Полученная метка описывает вход брандмауэра, а не состояние туннеля, и именно поэтому правила частного профиля перестают совпадать в момент подключения VPN.

Условие первое: туннель — доверенный путь

Выбор «Частный» утверждает, что всё доступное через этот интерфейс как минимум так же надёжно, как ваша собственная LAN, поскольку обнаружение и входящие правила будут считать эту подсеть локальной. Для корпоративного туннеля в управляемую подсеть с файловыми серверами и принтерами это утверждение обычно верно. Адаптер — это дверь в сеть, которой управляет ваша организация, а машина на другой стороне была допущена той же политикой, что допустила вашу.

Выход коммерческого VPN этот тест не проходит. Другие подписчики делят выходную подсеть, а маркировка её как «Частная» помещает обнаружение сети, LLMNR и разрешение имён NetBIOS в сегмент, полный посторонних. Разделённый туннель тоже может не пройти: когда адаптер несёт один маршрут к узлу для одного приложения, доверенной подсети попросту нет, и смена категории ничего вам не даёт.

Условие второе: классификация переживает повторные подключения

Новый шлюз или суффикс DNS даёт новую подпись, и Windows принимает по ней новое решение о профиле. Поэтому однократный Set-NetConnectionProfile действует до следующего переподключения, а не вечно. Проверяйте профиль после переподключения, а не после первого подключения, потому что именно тогда настройка возвращается сама.

Есть три способа сделать это постоянным. Самый чистый — политика: откройте secpol.msc, перейдите в Network List Manager Policies и задайте тип расположения для сети, включая политику для неопознанных сетей, чтобы профиль применялся политикой, а не командой. Второй — скрипт для каждого подключения или запланированное задание, которое запускает командлет PowerShell после поднятия туннеля. Третий — старый трюк с маршрутом, который даёт определению шлюз для проверки:

route -p add 0.0.0.0 mask 0.0.0.0 10.8.0.1 metric 50 IF 24
Get-NetConnectionProfile

Трюк с маршрутом — это обход, а не классификация. Он ломается, когда меняется соотношение метрик или клиент VPN переписывает маршруты при переподключении, и тихо меняет выбор пути для всего, что попадает на второй маршрут по умолчанию.

Условие третье: вам нужен набор частных правил

«Частный» обычно содержит общий доступ к файлам и принтерам, обнаружение сети и группы удалённого администрирования. Если задача — добраться через туннель до ресурса SMB или принтера, это и есть настоящая причина менять категорию. Если задача — исходящий доступ к одному веб-приложению, категория не имеет значения: напишите исходящее правило, оставьте «Общедоступный» и остановитесь на этом.

ScenarioCategoryWhy
Corporate tunnel to a file server or printerPrivatePrivate rules carry the sharing you need
Commercial VPN for privacyPublicThe exit subnet is shared with strangers
Split tunnel with a single host routePublicNo trusted subnet and an unstable signature
Site-to-site tunnel to a branch LANPrivateThe far subnet is managed like the local one
Lab adapter you control end to endPrivateDiscovery helps and nothing else is exposed

Читайте таблицу как отправную точку, а затем проверьте, какие частные правила действительно включены в вашем образе. Усиленный образ мог полностью удалить общий доступ к файлам из частного профиля, и тогда смена категории ничего не даст, пока вы не вернёте правило. Эта проверка стоит одной команды и экономит долгий вечер.

Внести изменение, не расширяя всё остальное

Цельтесь в индекс интерфейса, а не в подстановочный знак, и прочитайте список до и после:

Get-NetConnectionProfile
Set-NetConnectionProfile -InterfaceIndex 24 -NetworkCategory Private
Get-NetFirewallProfile

Сохранённые профили живут под ключом NetworkList в реестре, где значение Category разделяет общедоступные, частные и доменные сети. Редактировать его можно и легко ошибиться: нужно изменить запись, соответствующую текущей подписи адаптера, а не более старую запись, оставленную прежним адресом. Устаревшая запись выглядит в редакторе правильно и при переподключении ничего не делает.

Что бы вы ни делали, не выпускайте скрипт, который переводит каждый неопознанный адаптер в «Частный». Это однострочная версия открытия обнаружения в недоверенной беспроводной сети. Если общий доступ нужен только с подсетью туннеля, оставьте профиль «Общедоступный» и добавьте ограниченные входящие правила для диапазона удалённых адресов туннеля; правило брандмауэра уже, чем категория.

Проверяйте общий ресурс, а не метку

После изменения проверьте сам ресурс, а не полагайтесь на метку:

Test-NetConnection files.corp.example -Port 445
Resolve-DnsName files.corp.example

Если общий ресурс по-прежнему недоступен, а адаптер показывает «Частный», категория больше не ваша проблема. Разрешение имён, отсутствующий маршрут или права на общий ресурс дадут тот же симптом, и очередная смена профиля не исправит ничего из этого. Переподключитесь один раз и снова запустите Get-NetConnectionProfile, чтобы убедиться, что настройка удержалась, а затем разбирайте оставшийся сбой как обычную проблему SMB.

Контрольный список: убедитесь, что туннель — управляемый путь, профиль переживает переподключение, нужные частные правила есть в образе, а общий ресурс разрешается и отвечает на порту 445. Если хотя бы одно из первых трёх неверно, оставьте адаптер в «Общедоступный» и решите проблему доступа ограниченным правилом.

Похожие статьи