Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

5159 Windows Server, AD и Роли

Event ID 5159: WFP blocked a bind to a local port — устранение ошибки

Обновлено: 28.08.2026 · Официальная документация ↗

Симптомы блокировки привязки порта (Event ID 5159)

При старте сетевой службы или пользовательского приложения происходит сбой инициализации сокета. Приложение падает с ошибками WSAEACCES (10013) - Permission denied или WSAEADDRINUSE (10048) - Address already in use. В журнале Security при этом фиксируется Event ID 5159.

ПараметрЗначение
Имя журналаSecurity
ИсточникMicrosoft Windows security auditing
Тип событияAudit Failure
Код событияEvent ID 5159
ОписаниеThe Windows Filtering Platform has blocked a bind to a local port.

Событие указывает, что драйвер платформы фильтрации WFP или правило брандмауэра Windows запретили процессу открыть конкретный порт из-за ограничений прав, политик изоляции или попадания порта в исключенный диапазон.

Пошаговое устранение ошибки блокировки порта

  1. Определение заблокированного процесса и порта: Прочитайте детали события сбоя привязки сокета:
    Get-WinEvent -FilterHashtable @{LogName='Security'; Id=5159} -MaxEvents 5 | Format-List
  2. Проверка исключенных системных диапазонов портов: Убедитесь, что требуемый порт не захвачен драйвером Hyper-V, WinNAT или IIS Admin Service:
    netsh int ipv4 show dynamicport tcp
    netsh int ipv4 show excludedportrange protocol=tcp
  3. Освобождение порта от конкурирующего процесса: Если порт уже занят другим сервисом, найдите владельца и остановите конфликтный процесс:
    $port = 443
    Get-Process -Id (Get-NetTCPConnection -LocalPort $port -ErrorAction SilentlyContinue).OwningProcess
  4. Проверка разрешений фильтрации WFP и брандмауэра: Создайте явное разрешающее правило для приложения, если оно блокируется брандмауэром:
    New-NetFirewallRule -DisplayName "Allow Custom Service Bind" -Direction Inbound -Program "C:\Program Files\App\service.exe" -Action Allow -Protocol TCP -LocalPort 8443
  5. Сброс и перезапуск сетевого стека (при захвате портов NAT/Hyper-V):
    net stop winnat
    net start winnat

Важно: При использовании Hyper-V или WSL2 операционная система динамически резервирует блоки портов при каждой перезагрузке. Если ваше приложение попадает в этот диапазон, настройте фиксированный старт динамического пула через команду netsh int ipv4 set dynamicport tcp start=49152 num=16384.

💡 Практика специалистов: Частая причина массового появления ошибок 5159 на серверах разработчиков — включенный компонент Windows Subsystem for Linux (WSL2), который при старте случайно блокирует тысячи TCP-портов. Перезапуск службы LxssManager решает проблему без перезагрузки сервера.

Частые вопросы (FAQ)

Почему процесс с правами Администратора получает ошибку 5159 при привязке к порту?

Даже процесс с повышенными привилегиями не может выполнить bind к порту, если порт входит в диапазон 'excludedportrange', зарезервированный драйвером ядра (например, WinNAT, Hyper-V, HTTP.sys).

Как исправить ошибку WSAEACCES 10013 при старте Node.js / Java сервиса?

Проверьте зарезервированные порты через 'netsh int ipv4 show excludedportrange protocol=tcp'. Перезапустите службу 'winnat' или измените слушающий порт приложения на свободный.

Может ли сторонний антивирус вызывать Event ID 5159?

Да, многие корпоративные EDR/XDR-системы и сторонние фаерволы регистрируют свои суб-фильтры внутри WFP и блокируют bind для неавторизованных исполняемых файлов.

Как найти ID фильтра WFP (Filter ID), который заблокировал привязку?

В теле события 5159 найдите поле 'Filter Run-Time ID'. Затем выполните 'netsh wfp show filters' и найдите в сгенерированном XML-файле правило с данным идентификатором.

Полезные материалы
Рекомендуем