Команда CheckNetIsolation управляет списком исключений сетевой изоляции для UWP-приложений в Windows. Она нужна, когда приложению требуется доступ к localhost или локальной сети, а политика изоляции это запрещает — типичная ситуация при отладке веб-приложений и прокси-клиентов.
- Синтаксис команды CheckNetIsolation
- Ключи и параметры
- Примеры использования
- Просмотр активных исключений
- Добавление приложения по SID пакета
- Добавление по имени пакета
- Удаление исключения
- Полная очистка списка исключений
- Получение SID пакета через PowerShell
- Диагностическая сессия
- Частые ошибки и решения
- Когда применять, а когда нет
- FAQ
- Что такое loopback-исключение и зачем оно нужно?
- Нужно ли перезагружать компьютер после изменений?
- Как найти SID пакета нужного приложения?
- Работает ли CheckNetIsolation на Windows 7 и 8?
- Можно ли использовать CheckNetIsolation для обычных .exe-программ?
- Что делать, если после команды -c системные приложения перестали работать?
Синтаксис команды CheckNetIsolation
CheckNetIsolation.exe <команда> [параметры]
Основные подкоманды:
LoopbackExempt -s— показать список приложений с активным loopback-исключением.LoopbackExempt -a -n="<SID>"— добавить приложение по SID пакета.LoopbackExempt -d -n="<SID>"— удалить исключение.LoopbackExempt -c— очистить весь список исключений.
Ключи и параметры
| Ключ | Описание | Пример |
|---|---|---|
LoopbackExempt | Управление исключениями замыкания на себя | CheckNetIsolation LoopbackExempt -s |
-s | Показать текущий список исключений | CheckNetIsolation LoopbackExempt -s |
-a | Добавить приложение в список исключений | CheckNetIsolation LoopbackExempt -a -n="..." |
-d | Удалить приложение из списка исключений | CheckNetIsolation LoopbackExempt -d -n="..." |
-c | Очистить весь список исключений | CheckNetIsolation LoopbackExempt -c |
-n="<SID>" | Указать SID пакета приложения | -n="S-1-15-2-..." |
-p="<SID>" | Указать SID профиля (для Enterprise-окружений) | -p="S-1-15-3-..." |
Debug | Запустить диагностическую сессию изоляции (интерактивно) | CheckNetIsolation Debug -n="..." |
Примеры использования
Просмотр активных исключений
Прежде чем что-то менять, убедитесь, что приложение ещё не в списке исключений.
CheckNetIsolation.exe LoopbackExempt -s
Команда выведет SID и имена всех пакетов, которым разрешён loopback-доступ.
Добавление приложения по SID пакета
Нужно разрешить конкретному UWP-приложению подключаться к localhost. SID можно узнать через PowerShell (см. раздел «Когда применять»).
CheckNetIsolation.exe LoopbackExempt -a -n="S-1-15-2-1234567890-0987654321-111111111-222222222-333333333-444444444-555555555"
После выполнения приложение получает доступ к loopback-интерфейсу без перезагрузки системы.
Добавление по имени пакета
Если SID неизвестен, можно передать полное имя пакета — CheckNetIsolation найдёт SID самостоятельно.
CheckNetIsolation.exe LoopbackExempt -a -n="Microsoft.WindowsStore_8wekyb3d8bbwe"
Удобно при работе со стандартными приложениями Microsoft Store.
Удаление исключения
Когда отладка завершена или приложение удалено, исключение лучше убрать — это восстанавливает изоляцию сети.
CheckNetIsolation.exe LoopbackExempt -d -n="Microsoft.WindowsStore_8wekyb3d8bbwe"
Запись удаляется немедленно, перезагрузка не требуется.
Полная очистка списка исключений
Сброс всей конфигурации loopback-исключений — помогает при массовой переустановке UWP-приложений.
CheckNetIsolation.exe LoopbackExempt -c
Все ранее выданные разрешения будут отозваны.
Получение SID пакета через PowerShell
Перед добавлением исключения нужно узнать SID. Быстрый способ:
Get-AppxPackage -Name "*Chrome*" | Select-Object PackageFamilyName
Полученное значение PackageFamilyName используется как аргумент -n= в CheckNetIsolation.
Диагностическая сессия
Режим Debug позволяет в реальном времени видеть, какие сетевые запросы приложения блокируются изоляцией.
CheckNetIsolation.exe Debug -n="Microsoft.MicrosoftEdge_8wekyb3d8bbwe"
Команда запускает интерактивный мониторинг; для завершения нажмите Enter.
Частые ошибки и решения
| Ошибка / симптом | Причина | Решение |
|---|---|---|
| «Отказано в доступе» при добавлении исключения | CMD запущен без прав администратора | Запустить командную строку от имени администратора (ПКМ → «Запуск от имени администратора») |
| «Не удаётся найти указанный файл» при указании имени пакета | Имя пакета введено неверно или приложение не установлено | Проверить точное имя через Get-AppxPackage | Select PackageFamilyName в PowerShell |
| Исключение добавлено, но приложение всё равно не подключается к localhost | Используется неправильный SID или имя пакета (несколько версий приложения) | Вывести список через -s и убедиться, что нужная запись появилась |
| Команда не распознаётся в PATH | CheckNetIsolation.exe находится в %WinDir%\System32, но PATH нарушен | Вызывать по полному пути: %WinDir%\System32\CheckNetIsolation.exe |
После -c перестали работать системные приложения | Команда -c удалила все исключения, включая системные | Восстановить нужные записи через -a или сделать откат через точку восстановления |
Когда применять, а когда нет
CheckNetIsolation нужна только для UWP-приложений (пакеты AppX), работающих в изолированной среде Windows. Классические Win32-приложения (.exe) сетевой изоляции не подпадают — эта команда на них не влияет. Применяйте при отладке UWP-приложений, использовании локального прокси-сервера или при тестировании веб-API на localhost. Требует прав администратора. Аналог в PowerShell: Get-AppxPackage для получения SID, затем те же параметры CheckNetIsolation в сессии с повышенными правами.
FAQ
Что такое loopback-исключение и зачем оно нужно?
Loopback-исключение снимает блокировку сетевой изоляции Windows для конкретного UWP-приложения и позволяет ему обращаться к localhost (127.0.0.1) или другим адресам локальной машины. Это нужно для отладки, локальных API и работы с прокси-сервером.
Нужно ли перезагружать компьютер после изменений?
Нет. Изменения, внесённые через CheckNetIsolation, вступают в силу немедленно без перезагрузки системы.
Как найти SID пакета нужного приложения?
Выполните в PowerShell: Get-AppxPackage -Name "*ЧастьИмени*" | Select PackageFamilyName. Полученное значение передаётся в параметр -n= команды CheckNetIsolation.
Работает ли CheckNetIsolation на Windows 7 и 8?
Нет. Команда предназначена для Windows 8 и новее, так как UWP-изоляция появилась именно в Windows 8. На Windows 7 файл CheckNetIsolation.exe отсутствует.
Можно ли использовать CheckNetIsolation для обычных .exe-программ?
Нет. Сетевая изоляция применяется только к UWP-пакетам (AppX). Классические Win32-приложения не имеют контейнера изоляции и управляются стандартными правилами брандмауэра Windows.
Что делать, если после команды -c системные приложения перестали работать?
Восстановите исключения вручную через -a для нужных пакетов. Если список был большим, воспользуйтесь точкой восстановления системы — она возвращает конфигурацию изоляции к прежнему состоянию.


