Как найти приложение которое занимает порт
Перейти к содержимому

Как найти приложение которое занимает порт

  • автор:

Как найти приложение которое занимает порт

Требования.
Статья применима для Windows 2000/XP/Vista/7.

Информация.
При установке некоторых программ иногда возникает проблема с доступностью порта. Т.е. вы устанавливаете программу, а она вам говорит: «Извините, но предпочитаемый порт номер занят!». И самое интересное программа не говорит чем или кем занят порт.

Как определить каким процессом (программой) занят порт.
1. В меню «Пуск» выберите пункт «Выполнить«;
2. В поле «Открыть» наберите команду cmd и нажмите кнопку «ОК»;

Откроется окно командной строки, примерно такого вида:

3. Наберите команду netstat -ano и нажмите кнопку «Ввод» (Enter) на клавиатуре;

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

4. Теперь в колонке «Локальный адрес», находим нужный нам порт и записываем его идентификатор в колонке «PID»;

Например порт номер 80, его идентификатор 440.

5. Снова открываем меню «Пучк» и выбираем пункт «Выполнить«;
6. В поле «Открыть» вводим команду taskmgr и нажимаем кнопку «ОК»;
7. В окне «Диспетчер задач Windows» переходим на вкладку «Процессы«;
8. В главном меню открываем пункт «Вид» и выбираем пункт «Выбрать столбцы. «;
9. В окне «Выбор столбцов» находим пункт «Идентиф. процесса (PID)» и ставим рядом с ним галочку;
10. Нажимаем кнопку «ОК»;
11. Теперь в окне «Диспетчер задач Windows«, нажимаем на заголовок столбца «PID», для сортировки процессов по возрастанию;
12. Находим номер нашего процесса 440 и в столбце «Имя образа«, смотрим какой процесс занимает наш порт;

В нашем случаи это Apache.exe

КПД статьи
41.31%
Статья помогла?
3597 2111
КОММЕНТАРИИ

Поиск приложений, которыми заняты порты

Чтобы узнать, какие приложения занимают порты (например, порт 5558, который необходим для работы веб-сервера Apache, (см. Порты, используемые при работе Business Studio), для каждого из таких портов запустите из командной строки следующую команду:

netstat -a -o | find «:НомерПорта»

НомерПорта — номер порта, для которого ищем приложение, занявшее его.

В ответ Вы получите список, в последнем столбце которого будут указаны PID приложений (ID процессов), по котором можно найти само приложение в диспетчере задач.

Как определить, какая программа использует или блокирует определенные порты протокола управления передачей в Windows Server 2003

В этой пошаговой статье описывается, как определить, какая программа использует или блокирует определенные порты TCP.

Сведения о версии microsoft Windows XP этой статьи см. в разделе 281336.

Применяется к: Windows Server 2003
Исходный номер базы знаний: 323352

Сводка

Служебная программаNetstat.exe имеет новый переключатель, -o коммутатор, который может отображать идентификатор процесса (ID), связанный с каждым подключением. Эти сведения можно использовать для определения того, какой процесс (программа) прослушивает определенный порт. Например, netstat -ano команда может получить следующие выходные данные:

Proto Local Address Foreign Address State PID TCP 0.0.0.0:80 0.0.0.0:0 Listening 888 

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

Сопоставление идентификатора процесса с программой

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

  1. Нажмите клавиши CTRL + SHIFT + ESC , чтобы открыть диспетчер задач.
  2. Перейдите на вкладку Процессы .
  3. Если у вас нет столбца PID, выберите Вид>Выбрать столбцы, а затем выберите поле PID (Идентификатор процесса) проверка.
  4. Выберите заголовок столбца с меткой PID, чтобы отсортировать процесс по PID. Вы сможете легко найти идентификатор процесса и сопоставить его с программой, которая указана в диспетчере задач.

Получение дополнительных сведений о служебной программе Netstat.exe

Чтобы получить дополнительные сведения о служебной программеNetstat.exe , выполните следующие действия.

  1. Щелкните последовательно Пуск>Выполнить.
  2. В поле Открыть введите cmd и нажмите кнопку ОК.
  3. В командной строке введите netstat /? .

Обратная связь

Были ли сведения на этой странице полезными?

tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1222/nginx

Сначала необходимо найти PID процесса, открывшего порт.

# fuser 80/tcp

Пример вывода данных:

80/tcp: 12161 21776 25250 25393

После чего необходимо выяснить имя процесса, связанного с pid

# ls -l /proc/12161/exe

Пример вывода данных:

lrwxrwxrwx. 1 root root 0 Aug 9 14:12 /proc/12161/exe -> /usr/sbin/nginx

Определение компонента, с помощью lsof

# lsof -i :80 | grep LISTEN

Пример вывода данных:

apache2 1807 root 3u IPv4 6372 0t0 TCP *:www (LISTEN)
apache2 1816 www-data 3u IPv4 6372 0t0 TCP *:www (LISTEN)
apache2 1817 www-data 3u IPv4 6372 0t0 TCP *:www (LISTEN)

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *