Посмотреть список занятых портов windows

При запуске новых сервисов в Windows, вы можете обнаружить что нужный порт уже занят (слушается) другой программой (процессом). Разберемся, как определить какая программ прослушивает определенный TCP или UDP порт в Windows.

Например, вы не можете запустить сайт IIS на стандартном 80 порту в Windows, т.к. этот порт сейчас занят (при запуске нескольких сайтов в IIS вы можете запускать их на одном или на разных портах). Как найти службу или процесс, который занял этот порт и завершить его?

Чтобы вывести полный список TCP и UDP портов, которые прослушиваются вашим компьютером, выполните команду:

netstat -aon| find "LIST"

Или вы можете сразу указать искомый номер порта:

netstat -aon | findstr ":80" | findstr "LISTENING"

Используемые параметры команды netstat:

  • a – показывать сетевые подключения и открытые порты
  • o – выводить идентфикатор професса (PID) для каждого подключения
  • n – показывать адреса и номера портов в числовом форматер

По выводу данной команды вы можете определить, что 80 порт TCP прослушивается (статус
LISTENING
) процессом с PID 16124.

netstat найти программу, которая заняла порт

Вы можете определить исполняемый exe файл процесса с этим PID с помощью Task Manager или с помощью команды:

tasklist /FI "PID eq 16124"

Можно заменить все указанные выше команды одной:

for /f "tokens=5" %a in ('netstat -aon ^| findstr :80') do tasklist /FI "PID eq %a"

С помощью однострочной PowerShell команды можно сразу получить имя процесса, который прослушивает:

  • TCP порт:
    Get-Process -Id (Get-NetTCPConnection -LocalPort 80).OwningProcess
  • UDP порт:
    Get-Process -Id (Get-NetUDPEndpoint -LocalPort 53).OwningProcess

powershell найти процесс, который слушает TCP порт

Можно сразу завершить этот процесс, отправив результаты через pipe в командлет Stop-Process:

Get-Process -Id (Get-NetTCPConnection -LocalPort 80).OwningProcess| Stop-Process

Проверьте, что порт 80 теперь свободен:

Test-NetConnection localhost -port 80

проверить что порт свободен

Чтобы быстрой найти путь к исполняемому файлу процесса в Windows, используйте команды:

cd /

dir tiny.exe /s /p

Или можно для поиска файла использовать встроенную команду where :

where /R C:\ tiny

В нашем случае мы нашли, что исполняемый файл
tiny.exe
(легкий HTTP сервер), который слушает 80 порт, находится в каталоге c:\Temp\tinyweb\tinyweb-1-94

команда позволяет найти путь к exe файу в windows

Все способы:

  • Вариант 1: Брандмауэр
  • Вариант 2: Консольные утилиты
    • Способ 1: «Командная строка»
    • Способ 2: «Windows PowerShell»
  • Вариант 3: Онлайн-сервисы
  • Вариант 4: Сторонние приложения
    • Способ 1: TCPView
    • Способ 2: PortQry
  • Вариант 5: Веб-интерфейс маршрутизатора
  • Вопросы и ответы: 0

Важно! Большая часть описанных в этой статье способов просмотра открытых портов являются универсальными для всех операционных систем семейства Windows, оставшиеся подойдут только для определенных версий. Об этом будет указанно непосредственно в тексте. Несмотря на это, все скриншоты, приведенные в статье, сделаны в Windows 10, но отличия в них заключаются исключительно в графическом оформлении интерфейса.

Вариант 1: Брандмауэр

Все открытые в системе порты фиксируются в брандмауэре, соответственно, их можно посмотреть там. Для этого выполните следующее:

  1. Откройте главное окно брандмауэра. Сделать это можно разными способами, универсальный подразумевает использование ввода специальной команды в утилите «Выполнить». Для этого сначала вызовите ее сочетанием клавиш Win + R, а затем впишите в поле «Открыть» команду control firewall.cpl и нажмите Enter.
    как посмотреть открытые порты в windows_01

    Читайте также: Настройка брандмауэра в Windows 11 / 10 / 7

  2. В открывшемся окне щелкните по пункту «Дополнительные параметры», расположенному на боковой панели слева.
  3. как посмотреть открытые порты в windows_02

  4. В новом меню на навигационной панели слева нажмите по пункту «Правила для входящих подключений».
  5. как посмотреть открытые порты в windows_03

  6. Найдите в списке интересующее вас разрешающее подключение (пункт, отмеченный зеленной галочкой) и откройте его «Свойства». Для этого щелкните дважды кнопкой мыши по названию.
  7. как посмотреть открытые порты в windows_04

  8. В появившемся окне проследуйте на вкладку «Протоколы и порты» и найдите поле «Локальный порт» — именно там и указаны искомые данные.
  9. как посмотреть открытые порты в windows_05

  10. Таким же образом проверьте оставшиеся подключения, чтобы узнать все открытые порты.

Обратите внимание! Этот способ не предоставляет сразу весь список открытых портов, их потребуется проверять каждый раз отдельно, что не очень удобно. Но таким образом вы сможете узнать дополнительную информацию выбранного подключения в окне его «Свойств».

Вариант 2: Консольные утилиты

Посмотреть сразу все открытые порты в операционной системе можно путем ввода специальной команды в консольных утилитах. Притом они будут различаться в «Командной строке» и «Windows PowerShell».

Способ 1: «Командная строка»

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

Подробнее: Использование команды netstat для просмотра открытых портов

как посмотреть открытые порты в windows_06

Способ 2: «Windows PowerShell»

Аналогичные сведения можно посмотреть в «Windows PowerShell», для этого потребуется воспользоваться командой Get-NetTCPConnection.

  1. Сначала нужно запустить саму консоль от имени администратора. Во всех операционных системах это можно сделать через поиск. Вызовите его сочетанием клавиш Win + S и в появившееся поле введите запрос «Windows Powershell», а затем в результатах кликните правой кнопкой мыши по искомому приложению и воспользуйтесь пунктом «Запуск от имени администратора». При необходимости после этого подтвердите запуск, нажав по кнопке «Да» в появившемся диалоговом окне контроля учетных записей.
  2. как посмотреть открытые порты в windows_07

  3. Теперь можете ввести в окно консоли команду Get-NetTCPConnection и нажать Enter. По итогу на экране появится перечень всех портов TCP в системе, включая закрытые.
  4. как посмотреть открытые порты в windows_08

  5. Чтобы отобразить список только открытых, необходимо воспользоваться параметром -State со значением Listen. Итоговая команда будет выглядеть следующим образом:

    Get-NetTcpConnection -State Listen

  6. как посмотреть открытые порты в windows_09

  7. Если вы хотите просмотреть информацию о конечной точке UDP, тогда команда будет другой: Get-NetUDPEndpoint. Запущенная без опций, она вернет список только локальных портов.
  8. как посмотреть открытые порты в windows_10

  9. Если необходимо просмотреть сетевые интерфейсы, тогда к команде потребуется добавить дополнительный параметр. В итоге она будет выглядеть следующим образом:

    Get-NetUDPEndpoint | Where-Object {($_.LocalAddress -eq "0.0.0.0") -or ($_.LocalAddress -eq "::")}

    Вы увидите только открытые удаленные порты UDP, локальные в перечне будут отсутствовать.

  10. как посмотреть открытые порты в windows_11

Вариант 3: Онлайн-сервисы

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

Подробнее: Онлайн-сервисы для проверки портов компьютера

как посмотреть открытые порты в windows_12

Вариант 4: Сторонние приложения

Компания Microsoft для просмотра информации о состоянии портов выпустила два отдельных приложения. Они различаются набором дополнительных функций, но одинаково хорошо подходят для выполнения поставленной задачи.

Способ 1: TCPView

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

Скачать TCPView с официального сайта

Теперь выполните описанные далее действия, чтобы получить данные об открытых портах компьютера:

  1. Находясь на странице загрузки приложения, кликните по строке «Download TCPView». Точное ее расположение показано на изображении ниже.
  2. как посмотреть открытые порты в windows_013

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

    Подробнее: Методы извлечения из архива папки с файлами

  4. как посмотреть открытые порты в windows_14

  5. Затем перейдите в извлеченную директорию и запустите исполняемый файл приложения «Tcpview.exe». Устанавливать его не потребуется, так как программа является портативной.
  6. как посмотреть открытые порты в windows_15

  7. В открывшемся окне будут отображаться все запущенные процессы, их название находится в столбце «Process», а используемые ими порты указаны в столбце «Local Port». Соответственно, все они являются в настоящее время открытыми.
  8. как посмотреть открытые порты в windows_16

  9. Дополнительно можете пролистать страницу программы вправо до столбца «State» — именно там отображается состояние каждого порта. Он может прослушиваться, находиться в ожидании или вовсе не использоваться. Но, несмотря на это, каждый находящийся в списке порт является открытым.
  10. как посмотреть открытые порты в windows_17

Способ 2: PortQry

PortQry — это тоже приложение от компании Microsoft для просмотра открытых портов, только она не имеет графического интерфейса, поэтому пользоваться ей возможно только через «Командную строку».

Скачать PortQry с официального сайта

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

  1. Перейдя на страницу загрузки приложения, нажмите по кнопке «Download», чтобы начать скачивание инсталляционного файла.
  2. как посмотреть открытые порты в windows_018

  3. После того как загрузка завершится, перейдите в директорию со скачанным файлом и запустите его двойным кликом по названию. Затем в появившемся окне примите условия лицензионного соглашения и продолжайте следовать инструкциям инсталлятора.
    как посмотреть открытые порты в windows_19

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

  4. Закройте окно инсталлятора и запустите «Командую строку» от имени администратора, например через поиск по системе. Вызовите соответствующий интерфейс комбинацией клавиш Win + S, введите запрос и в результатах щелкните по пункту «Запуск от имени администратора».
    как посмотреть открытые порты в windows_20

    Читайте также: Как запустить «Командную строку» от имени администратора в Windows 11 / 10

  5. Проследуйте в директорию, в которую было установлено приложение. По умолчанию это C:\PortQryV2. Чтобы туда перейти, следует ввести и выполнить следующую команду:

    cd C:\PortQryV2

  6. как посмотреть открытые порты в windows_21

  7. Запустите приложение с параметром -local, чтобы вывести на экран список всех открытых портов в операционной системе.

    portqry.exe -local

    как посмотреть открытые порты в windows_22

    Теперь, спускаясь по консоли вниз, вы будете видеть тип подключения, номер порта, его адрес (внешний и внутренний) и статус.

  8. как посмотреть открытые порты в windows_23

Вариант 5: Веб-интерфейс маршрутизатора

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

Подробнее: Как войти в веб-интерфейс роутера

как посмотреть открытые порты в windows_24

Важно! В админ-панели маршрутизатора можно посмотреть только те порты, которые были заданы по умолчанию или созданы вручную пользователем. Так что посмотреть абсолютно все порты этим способом не получится. Также следует учитывать, что все дальнейшие действия будут выполняться на примере админ-панели роутера TP-Link, но в других моделях устройств все будет похожим.

  1. Перейдите в меню роутера, после чего проследуйте в раздел «Forwarding», воспользовавшись навигационной панелью в левой части интерфейса.
  2. как посмотреть открытые порты в windows_25

  3. В развернувшемся списке подразделов кликните по пункту «Port Triggering», чтобы перейти к списку открытых портов.
  4. как посмотреть открытые порты в windows_26

  5. В целевом меню размещен список всех портов маршрутизатора. В нем номер находится в столбце «Trigger Port», а в «Status» вы можете посмотреть его статус. Значение «Enabled» означает, что порт открыт, а «Disabled» — закрыт. Также вы можете менять этот статус вручную, нажав по соответствующей кнопке.
  6. как посмотреть открытые порты в windows_27

Наша группа в TelegramПолезные советы и помощь

Как посмотреть список открытых портов в Windows

Статья обновлена: 10 сентября 2021
ID: 101

Чтобы посмотреть список открытых портов:

  1. Откройте командную строку. Инструкция в статье.
  2. Выполните команду:

netstat -a

  1. Нажмите Enter на клавиатуре.

Переход к просмотру списка открытых портов

Вы получите список открытых портов в Windows.

Спасибо за ваш отзыв, вы помогаете нам становиться лучше!

Спасибо за ваш отзыв, вы помогаете нам становиться лучше!

Windows Netstat Command to Check Open Ports in Windows

In this tutorial, we will learn how to run the netstat command to check open ports in Windows Operating System. We will also look at command options and how to use the findstr command (similar to grep) to filter the netstat output.

To check open ports, open a command prompt (or PowerShell) as administrator and run the netstat command as follows:

netstat -aon

The command displays lots of information. What you should pay attention to are Local Addresses that are in the LISTENING state.

check if port is open windows

As you can see in the previous screenshot, In my Windows 10 computer, port 22 (SSH) is open.

Administrators can run the following command to show opened ports only without all other details:

netstat -aon | findstr /i listening

One important point is that the Windows Firewall may block a port even if it is in the listening state. In the Windows Defender Firewall with Advanced Security, there has to be a corresponding inbound firewall rule to match the listening port (Anything with a green checkmark is an open rule).

listening ports windows firewall

The Foreign Address column of the output shows the IP address and port of the computer/server at the remote end of the connection.

To check that the port is open from a remote computer, an administrator can run the telnet command from a remote computer against the IP address of the Windows computer.

For example, to check if port 22 is open, I will run the telnet command from a remote computer as follows:

telnet IP_ADDRESS 22

Replace IP_ADDRESS with the actual IP Address of the Windows computer.

check if port is open from a remote computer

Filtering netstat using findstr

Administrators can use the findstr CMD command (which is similar to grep) to filter netstat command data based on string patterns.

For example, run the following command to check TCP connections in TIME_WAIT State.

netstat -a | findstr /i TIME_WAIT

The /I option is for the case insensitive matching.

cmd netstat command to check open ports in windows

Command Options

Windows netstat command, without any command-line arguments, displays active TCP connections.

It also includes some useful command options to show network connections and ports in various forms, such as show connections and opened ports based on the protocol, find the process id of a connection/port, view network statics, and find the application that utilizes connections and ports.

-a displays all network connections and ports on which Windows is listening (include both IPv4 or IPv6 addresses).
-b The output shows you which applications are using each active connection and ports (need administrative privileges).
-e Displays network statistics, such as the Errors, the number of bytes, and packets sent and received.
-n Displays addresses and ports in numerical format.
-f When used, the output will contain Fully Qualified Domain Names (FQDNs) of IP addresses, if available.
-o Displays an additional column that contains the Process ID (PID).
-p Display data for a specific protocol (e.g., -p TCP). The Protocol can be one of the following: TCP, UDP, TCPv6, or UDPv6. If combined with the -s option, Protocol can be TCP, UDP, ICMP, IP, TCPv6, UDPv6, ICMPv6, or IPv6.
-r Check Windows routing table.
-s Displays detailed network statistics for each protocol (IPv4, IPv6, ICMPv4, ICMPv6, TCP, and UDP).
interval Sets Time interval (in seconds) to automatically update the output. See examples to learn more.

Examples: Using the netstat command

List all Active TCP connections:

netstat

Check open ports:

netstat -aon | findstr /i listening

Only want to see information about TCP protocol:

netstat -a -p tcp

Show network statistics:

netstat -s

Real-time network monitoring — In the following example, we set a 5 second time interval to check active network connections in real-time. The number 5 causes the command to repeat every five seconds (Press CTRL+C to quit).

netstat -n 5

If you need more information about the Windows netstat command, type netstat \? in the command prompt.

Содержание статьи:

  • Типовые задачи и их решение
    • Вариант 1: смотрим список прослушиваемых портов + приложение (общий случай)
    • Вариант 2: а если наоборот — по названию приложения узнать порт
    • Вариант 3: исп-ем спец. приложения (более информативнее и быстрее)
  • Вопросы и ответы: 0

Доброго времени!

При запуске некоторого ПО/сервисов можно столкнуться с тем, что определенный порт в системе уже занят… какой-нибудь другой программой (скажем, настраиваете вы апач — и возникает конфликт порта 80. Например, на нем может «висеть/слушать» Skype…). Незадача…?

Собственно, в заметке приведу неск. способов, как можно относительно быстро узнать «кем» и «чем» заняты определенные порты — а это позволит быстро изменить их настройки и разрешить вопрос! (разумеется, приводить советы посмотреть описание установленного софта, в котором разработчики указывают порты — я не буду: ибо это долго, и не всегда продуктивно… 🙂).

*

Примечание:

  1. заметка носит информативный характер, и не явл. инструкцией в последней инстанции. Дело в том, что нередко встречаются не офиц. резервируемые порты… и, разумеется, точности здесь никакой быть не может;
  2. если у вас не получается подключиться к сетевым играм, есть проблемы с раздачей/загрузкой торрентов и пр. — ознакомьтесь с заметкой про проброс портов на роутере (это немного не по теме, но когда речь заходит об этом — очень часто приходится ссылаться на сию заметку).

*

Типовые задачи и их решение

Вариант 1: смотрим список прослушиваемых портов + приложение (общий случай)

По умолчанию в Windows есть консольная утилита netstat. Она позволяет посмотреть активные соединения протокола TCP/IP (в т.ч. там есть и порты).

*

Чтобы вывести полный список портов (TCP, UDP) нужно:

1) Запустить 📌командную строку от имени администратора.

2) Ввести команду Netstat –ao и нажать Enter.

(можно ее слегка изменить и использовать такую: netstat -aon| find «LISTENING»)

Примечание:

  • «-a» – см. все соединения и порты.
  • «-o» – см. числовые идентификаторы процесса, отвечающего за конкретное соединение (Process ID, сокращенно: PID).
  • «-n» – см. номера портов в числовом формате»;

img-Gde-tut-port-i-identifikator-sm.-skrin-ya-vyidelil.jpg

Где тут порт и идентификатор, см. скрин, я выделил // пример работы с командной строкой, команда netstat

📌 Для справки!

В списке, который предоставит нам команда Netstat, есть строки с аббревиатурами: «ESTABLISHED» и «LISTENING». В чем разница:

  • «ESTABLISHED» — означает, что в данный момент установлено соединение;
  • «LISTENING» — означает, что сокет ожидает соединения (в режиме прослушивания).

Причем, и тот и другой порты открыты, но один ожидает соединения, а другой уже установил соединение!

Например, протокол HTTP (это порт 80-й) находится в режиме прослушивания («LISTENING») до тех пор, пока кто-нибудь не зайдет на сервер. В тот момент, когда кто-нибудь будет загружать страницу — режим поменяется на «ESTABLISHED».

3) Например, понадобилось нам узнать какой процесс занял порт с идентификатором (PID) «5288» — вводим в командной строке tasklist | find «5288» и нажимаем Enter;

img-Vvodim-PID-i-smotrim-nazvanie-protsessa.jpg

Вводим PID и смотрим название процесса

4) Почти сразу же узнаем, что это фирменная утилита от производителя ноутбука ASUS (шла вместе с операционной системой Windows // инсталлируется автоматически при установке драйверов).

img-Asus.jpg

Asus

5) Кстати, если вам неудобно пользоваться командной строкой — то узнать название процесса и его расположение по PID можно в 📌диспетчере задач (Ctrl+Alt+Del): достаточно перейти во вкладку «Подробности».👇

img-Dispetcher-zadach-podrobnosti-sortirovka-po-ID-protsessu.jpg

Диспетчер задач — подробности — сортировка по ИД процессу

*

Вариант 2: а если наоборот — по названию приложения узнать порт

Относительно просто!

Находим нужный процесс в 📌диспетчере задач (вкладка «Подробности» для Windows 11). Узнаем его ИД (в моем случае 6216, взял для примера uTorrent).

img-uTorrent-ID-6216.jpg

uTorrent — ИД 6216

Далее в комодной строке набираем следующее:

netstat -aon| find «6216»

где вместо «6216» нужно указать свой ИД.

img-19411-port-ispolzuemyiy-uTorrent.jpg

19411 порт, используемый uTorrent

В результате определяем, что uTorrent слушает порт 19411

Кстати, в настройках uTorrent (если запустить саму программу) — можно тоже узнать и изменить этот порт на какой-нибудь другой.

img-Nastroyki-uTorrent-vyibor-porta.jpg

Настройки uTorrent — выбор порта

*

Вариант 3: исп-ем спец. приложения (более информативнее и быстрее)

📌 TCPView

Ссылка на сайт Microsoft: https://learn.microsoft.com/ru-ru/sysinternals/downloads/tcpview

TCPView — небольшая спец. утилита (не требующая установки), позволяющая очень быстро узнать список всех сетевых соединений, с информацией о портах, IP-адресах и пр.

Причем, список можно отсортировать по нужному вам столбцу + отфильтровать по какой-нибудь аббревиатуре. В общем, вещи удобная! См. скрин ниже. 👇

img-TCPView-spisok-prilozheniy-smotrim-vse-neobhodimyie-svoystva.jpg

TCPView — список приложений, смотрим все необходимые свойства

📌 CurrPorts

Ссылка на офиц. сайт: https://www.nirsoft.net/utils/cports.html#DownloadLinks

CurrPorts — еще одна сетевая утилита для просмотра сетевых подкл. В установке программа не нуждается, по информативности не уступает первой. Кстати, у утилиты есть рус. перевод (но скачать его нужно отдельно, есть на офиц. сайте).

img-CurrPorts-primer-ispolzovaniya.jpg

CurrPorts — пример использования

*

Дополнения по теме — приветствуются!

Успехов!

👋

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Windows xp home edition ulcpc
  • Vmware не видит общую папку windows
  • Установка касперского на windows server 2008
  • Windows 10 ltsc 2019 key
  • Удаление не удаляющихся файлов для windows 10