Можно ли узнать, какой процесс открыл соединение в Windows?

1549
Jader Dias

С помощью netstat -aя вижу все соединения с моей машины на MySQL Server. Есть ли способ увидеть, какой процесс или исполняемый файл отвечает за каждое соединение?

Единственное решение, которое я нашел, - это прослушивание пакетов и анализ данных внутри них. Но что, если данные не могут предоставить информацию о процессе?

1

2 ответа на вопрос

7
John T

Используйте -bпереключатель также:

 -b Отображает исполняемый файл, участвующий в создании каждого соединения или порт прослушивания. В некоторых случаях общеизвестные исполняемые файлы хоста несколько независимых компонентов, и в этих случаях последовательность компонентов, участвующих в создании соединения или порт прослушивания отображается. В этом случае исполняемый файл имя в [] внизу, вверху компонент, который он вызвал, и так далее, пока не будет достигнут TCP / IP. Обратите внимание, что эта опция может занять много времени и потерпит неудачу, если у вас недостаточно разрешения.

пример:

$ netstat -ab  Активные подключения  Прото Локальный адрес Внешний адрес Состояние PID TCP john: epmap john: 0 СЛУШАТЬ 1404 C: \ WINDOWS \ system32 \ WS2_32.dll C: \ WINDOWS \ system32 \ Rpcrt4.dll C: \ WINDOWS \ system32 \ Rpcss.dll C: \ WINDOWS \ system32 \ svchost.exe C: \ WINDOWS \ system32 \ ADVAPI32.dll [Svchost.exe]  TCP john: 3150 18-24-50-20.rdsnet.ro:50087 SYN_SENT 392 [Deluged.exe]  TCP john: 3155 ool-18d24.static.optonline.net:20170 SYN_SENT 392 [Deluged.exe]  TCP john: 3157 69-62-57-59-adsl-tan.dynamic.so-net.net.tw:10365 SYN_SENT 392 [Deluged.exe]
Ah, I like your answer better. Upvote! dsolimano 14 лет назад 0
3
dsolimano

Sysinternals Process Explorer сообщает вам, какие соединения открываются приложением, хотя я не знаю, есть ли способ сделать обратный поиск по соединениям. Если у вас не слишком много процессов для проверки, это должно сработать.