Использование сетевых портов в Виндовс

Автор: | 15 февраля 2016

Иногда возникает необходимость узнать, какие сетевые соединения установлены на  ПК с ОС Виндовс или какие порты “слушаются” теми или иными процессами. “Слушает порт” – означает, что программа ожидает сообщений на том или ином порту, например, стандартный веб-сервер слушает 80-й (HTTP) и/или 443 (HTTPS) порт.

Для просмотра подобной статистики можно использовать стандартную программу netstat.

netstat

Из всех опций используем ключи a и o:

netstat -ao
или
netstat -a -o

В начале выводятся порты в состоянии LISTENING (прослушивание) и ESTABLISHED (соединение установлено), затем порты в состоянии CLOSE_WAIT (ожидание закрытия соединения). Если у вас работает какая-нибудь программа, которая постоянно открывает/закрывает соединения, статистика может выводиться, пока вы не нажмете CTRL+C.

Например, у меня работает какая-то программа:

  TCP    192.168.1.10:49153    17.248.146.207:https   CLOSE_WAIT      5856
  TCP    192.168.1.10:49179    17.248.146.114:https   CLOSE_WAIT      5856
  TCP    192.168.1.10:49180    17.248.146.205:https   CLOSE_WAIT      5856
  TCP    192.168.1.10:49182    17.248.146.171:https   CLOSE_WAIT      5856
  TCP    192.168.1.10:49186    17.248.146.86:https    CLOSE_WAIT      5856
  TCP    192.168.1.10:49189    17.248.146.171:https   CLOSE_WAIT      5856
  TCP    192.168.1.10:49198    17.248.145.108:https   CLOSE_WAIT      5856

Из данного вывода можно понять, что процесс с номером (PID – process ID) 5856 постоянно общается с определенными адресами. Узнать, что это за процесс можно командами tasklist и find:

tasklist | find "5856"

Первая выводит все процессы с номерами, вторая ищет заданный ПИД, пример вывода:

c:\>tasklist | find "5856"
iCloudServices.exe            5856 Console                    1    137 772 K

Таким образом, мы установили, что этим процессом является сервис iCloud.

Узнать имя процесса по его PID можно и через Диспетчер задач: правый клик по панели задач или кнопке “Windows” –> “Диспетчер задач” (или CTRL+SHIFT+ESC), в Диспетчере кликните правой клавишей на заголовке любого столбца, в выпавшем меню отметьте “ИД процесса” и найдите интересующий вас ИД:

TaskManager

Для упрощения поиска, нажмите на заголовок столбца “ИД процесса”.

Если вы не любите командную строку, есть более дружелюбный способ – утилита TCPView от SysInternals. Данные в этой утилите, подобно “Диспетчеру задач” выводятся в виде таблицы, можно кликнуть правой клавишей по строке с процессом, закрыть соединение или завершить процесс.

Добавить комментарий