Доброго времени!
При запуске некоторого ПО/сервисов можно столкнуться с тем, что определенный порт в системе уже занят... какой-нибудь другой программой (скажем, настраиваете вы апач — и возникает конфликт порта 80. Например, на нем может "висеть/слушать" Skype...). Незадача...?
Собственно, в заметке приведу неск. способов, как можно относительно быстро узнать "кем" и "чем" заняты определенные порты - а это позволит быстро изменить их настройки и разрешить вопрос! (разумеется, приводить советы посмотреть описание установленного софта, в котором разработчики указывают порты — я не буду: ибо это долго, и не всегда продуктивно... 🙂).
*
Примечание:
- заметка носит информативный характер, и не явл. инструкцией в последней инстанции. Дело в том, что нередко встречаются не офиц. резервируемые порты... и, разумеется, точности здесь никакой быть не может;
- если у вас не получается подключиться к сетевым играм, есть проблемы с раздачей/загрузкой торрентов и пр. — ознакомьтесь с заметкой про проброс портов на роутере (это немного не по теме, но когда речь заходит об этом - очень часто приходится ссылаться на сию заметку).
*
Содержание статьи📎
Типовые задачи и их решение
Вариант 1: смотрим список прослушиваемых портов + приложение (общий случай)
По умолчанию в Windows есть консольная утилита netstat. Она позволяет посмотреть активные соединения протокола TCP/IP (в т.ч. там есть и порты).
*
Чтобы вывести полный список портов (TCP, UDP) нужно:
1) Запустить 📌командную строку от имени администратора.
2) Ввести команду Netstat –ao и нажать Enter.
(можно ее слегка изменить и использовать такую: netstat -aon| find "LISTENING")
Примечание:
- "-a" – см. все соединения и порты.
- "-o" – см. числовые идентификаторы процесса, отвечающего за конкретное соединение (Process ID, сокращенно: PID).
- "-n" – см. номера портов в числовом формате";
📌 Для справки!
В списке, который предоставит нам команда Netstat, есть строки с аббревиатурами: "ESTABLISHED" и "LISTENING". В чем разница:
- "ESTABLISHED" - означает, что в данный момент установлено соединение;
- "LISTENING" - означает, что сокет ожидает соединения (в режиме прослушивания).
Причем, и тот и другой порты открыты, но один ожидает соединения, а другой уже установил соединение!
Например, протокол HTTP (это порт 80-й) находится в режиме прослушивания ("LISTENING") до тех пор, пока кто-нибудь не зайдет на сервер. В тот момент, когда кто-нибудь будет загружать страницу - режим поменяется на "ESTABLISHED".
3) Например, понадобилось нам узнать какой процесс занял порт с идентификатором (PID) "5288" — вводим в командной строке tasklist | find "5288" и нажимаем Enter;
4) Почти сразу же узнаем, что это фирменная утилита от производителя ноутбука ASUS (шла вместе с операционной системой Windows // инсталлируется автоматически при установке драйверов).
5) Кстати, если вам неудобно пользоваться командной строкой - то узнать название процесса и его расположение по PID можно в 📌диспетчере задач (Ctrl+Alt+Del): достаточно перейти во вкладку "Подробности".👇
*
Вариант 2: а если наоборот - по названию приложения узнать порт
Относительно просто!
Находим нужный процесс в 📌диспетчере задач (вкладка "Подробности" для Windows 11). Узнаем его ИД (в моем случае 6216, взял для примера uTorrent).
Далее в комодной строке набираем следующее:
netstat -aon| find "6216"
где вместо "6216" нужно указать свой ИД.
В результате определяем, что uTorrent слушает порт 19411...
Кстати, в настройках uTorrent (если запустить саму программу) - можно тоже узнать и изменить этот порт на какой-нибудь другой.
*
Вариант 3: исп-ем спец. приложения (более информативнее и быстрее)
📌 TCPView
Ссылка на сайт Microsoft: https://learn.microsoft.com/ru-ru/sysinternals/downloads/tcpview
TCPView — небольшая спец. утилита (не требующая установки), позволяющая очень быстро узнать список всех сетевых соединений, с информацией о портах, IP-адресах и пр.
Причем, список можно отсортировать по нужному вам столбцу + отфильтровать по какой-нибудь аббревиатуре. В общем, вещи удобная! См. скрин ниже. 👇
📌 CurrPorts
Ссылка на офиц. сайт: https://www.nirsoft.net/utils/cports.html#DownloadLinks
CurrPorts — еще одна сетевая утилита для просмотра сетевых подкл. В установке программа не нуждается, по информативности не уступает первой. Кстати, у утилиты есть рус. перевод (но скачать его нужно отдельно, есть на офиц. сайте).
*
Дополнения по теме - приветствуются!
Успехов!
👋
Другие записи: