Сеть

Устранение проблем с нехваткой портов в Windows 10

Устранение проблем с нехваткой портов в Windows 10

Любое сетевое соединение между компьютерами (протоколы TCP или UDP) осуществляется через порты. Представьте их как точки входа или шлюзы, которые используются службой или приложением. По мере того, как выполняется больше клиентских подключений, количество портов уменьшается. В этом посте мы расскажем, как устранять неполадки Истощение порта вопросы.

Есть два типа портов - Динамические порты а также Определенные порты. Динамические порты позволяют нескольким клиентам подключаться к определенным портам. Сайты - хороший пример. Обычно для них определен порт 80, но, используя активный порт, они могут обслуживать несколько клиентов. Поскольку существует ограничение на динамический порт, соединения начнут отказываться, когда все порты будут заняты. Это называется истощением портов.

Исчерпание портов в Windows 10

Основная цель этого руководства по устранению неполадок - определить, какой процесс или приложение истощает порт. После того, как вы его определили, следующим шагом будет исправить приложение.

Симптомы для определения истощения портов:

1] Невозможно войти в систему с учетными данными домена, однако вход с локальной учетной записью работает. Не исключено, что уже использованная учетная запись может работать, но новая выйдет из строя. Бывает из-за кеширования.

2] Обновление групповой политики начнет сбоить. Каждый раз, когда вы пытаетесь внести изменения, вы можете получить сообщение об ошибке «сбой из-за отсутствия сетевого подключения к контроллеру домена». Это может быть временным, но является признаком.

3] Общие файловые ресурсы или сетевые диски становятся недоступными.

4] Удаленный рабочий стол на сервере, на котором размещено приложение, не работает.

Другие признаки включают идентификатор события 4227, 4231 в средстве просмотра событий для TCP с сообщением о том, что не удалось выделить динамический порт.  Команда NetStat показывает огромное количество записей для состояния TIME_WAIT для конкретного приложения и т. Д.

Используйте NetStat для Windows 10 и Windows Server 2016

Откройте командную строку с повышенными привилегиями.

Выполните команду:

netstat -anobq

Затем проверьте идентификатор процесса, который имеет максимальное количество записей как BOUND.

Если вы используете PowerShell, вы можете использовать приведенную ниже команду, чтобы определить процесс с максимальной привязкой.

Get-NetTCPConnection | Группа-Объект -Состояние собственности, Процесс-владелец | Выберите -Property Count, Name, @ Name = "ProcessName"; Expression = (Get-Process -PID ($ _.Имя.Разделить (',') [- 1].Отделка("))).Имя, Группа | Счетчик сортировки -Descendin

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

Если потребность возникает часто, можно использовать Команда netstat в цикле. Вывод может быть доступен в текстовом файле, который можно использовать для отслеживания тенденции. Вот как выглядит сценарий:

@ECHO ON set v =% 1: цикл установлен / a v + = 1 ECHO% date%% time% >> netstat.txt netstat -ano >> netstat.txt PING 1.1.1.1 -n 1 -w 60000> NUL goto loop

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

Чуть более естественный способ найти такие приложения - использовать диспетчер задач. Хотя PowerShell и командные строки имеют свои достоинства, если вы хотите быстро увидеть процесс, это лучший метод.

Microsoft предлагает, чтобы в случае сбоя каких-либо соединений проверьте, не превышает ли количество дескрипторов 3000. Если это так, то виновником является приложение. Однако службы ОС являются исключением из этого правила. Для других остановите этот процесс один раз, а затем попробуйте войти в систему, используя учетные данные домена, и посмотрите, удастся ли это.

Обозреватель процессов

Вы можете использовать Process Explorer, если диспетчер задач не помогает. Это полезно для отслеживания проблем с версиями DLL или для обработки утечек и получения информации о приложениях для румян. Отсюда следует скачать и установить Process Explorer. Обязательно запускайте его с повышенными привилегиями.

  1. Щелкните правой кнопкой мыши заголовок столбца и выберите «Выбрать столбцы».”
  2. Перейдите на вкладку «Производительность» и добавьте Счетчик ручки.
  3. В меню нажмите на  Просмотр> Показать нижнюю панель.
  4. Снова нажмите на меню, выберите Просмотр> Просмотр нижней панели> Ручки.
  5. Отсортируйте ручки по убыванию.
  6. Он покажет процесс (ы) с наибольшим количеством дескрипторов
  7. Щелкните, чтобы выделить один из процессов с наибольшим количеством дескрипторов.
  8. Нижняя панель покажет тип всех ручек. Порты или сокеты обычно имеют метки «File \ Device \ AFD».

Закройте процесс большим количеством ручек. Если приложение снова появляется, это может быть причиной, и вам придется исправить приложение или попросить разработчика OEM исправить это. Если вы не можете исправить это, потому что этого требует приложение, вам следует подумать об увеличении количества портов, которые компьютер может использовать. Приведенная ниже команда (пример) может изменить диапазон и повысить его.

netsh int ipv4 set dynamicport tcp start = 10000 число = 1000

Минимальный начальный порт, который можно установить - 1025. Максимальный конечный порт не может превышать 65535.

Тем не менее, решение все еще временное. Как ИТ-администратор, вам нужно будет найти лучшее решение для устранения неполадок, связанных с исчерпанием портов. Иногда для увеличения количества портов можно использовать несколько серверов, но это совсем другая лига.

Лучшие дистрибутивы Linux для игр в 2021 году
Операционная система Linux прошла долгий путь от своего первоначального простого серверного вида. Эта ОС значительно улучшилась за последние годы и те...
Как записать и транслировать игровую сессию в Linux
В прошлом игры считались только хобби, но со временем игровая индустрия увидела огромный рост с точки зрения технологий и количества игроков. Игровая ...
Лучшие игры с отслеживанием рук
Oculus Quest недавно представил отличную идею отслеживания рук без контроллеров. С постоянно растущим числом игр и действий, которые осуществляются фо...