16

Можно ли узнать, какая программа обращается к конкретному IP-адресу?

Я обнаружил, что мой компьютер переполнен, и хочу проверить адреса по одному.

Может быть, можно настроить какой-то аудит для этого?

4 ответа4

30

Решение TCPView

TCPView от SystemInternals будет отображать «подробные списки всех конечных точек TCP и UDP в вашей системе, включая локальные и удаленные адреса и состояние соединений TCP».

TCPView - это программа для Windows, которая покажет вам подробные списки всех конечных точек TCP и UDP в вашей системе, включая локальные и удаленные адреса и состояние соединений TCP. В Windows Server 2008, Vista и XP TCPView также сообщает имя процесса, которому принадлежит конечная точка. TCPView предоставляет более информативное и удобно представленное подмножество программы Netstat, поставляемой с Windows. Загрузка TCPView включает в себя Tcpvcon, версию командной строки с той же функциональностью.

  • Убедитесь, что "Разрешить адреса" сняты, чтобы получить IP-адреса вместо доменных имен.

Вы можете отсортировать результаты по "Удаленному адресу", чтобы найти интересующий вас IP-адрес.

Пример:

  • На этом скриншоте показано подключение Firefox к stackoverflow.com.


Решение CurrPorts

CurrPorts от Nirsoft предоставляет очень похожую функциональность.

CurrPorts - это программное обеспечение для мониторинга сети, которое отображает список всех открытых на данный момент портов TCP/IP и UDP на вашем локальном компьютере. Для каждого порта в списке также отображается информация о процессе, открывшем порт, включая имя процесса, полный путь процесса, информацию о версии процесса (название продукта, описание файла и т.д.), Время, в течение которого процесс был создан, и пользователь, который создал его.

Пример:

  • На этом скриншоте показано подключение Firefox к stackoverflow.com.


Что если я захочу записать результаты?

TcpLogView также от Nirsoft обеспечивает протоколирование соединений TCP.

TcpLogView - это простая утилита, которая отслеживает открытые TCP-соединения в вашей системе и добавляет новую строку журнала каждый раз, когда TCP-соединение открывается или закрывается. Для каждой строки журнала отображается следующая информация: Четное время, Тип события (Открыть, Закрыть, Прослушать), Локальный адрес, Удаленный адрес, Имя удаленного хоста, Локальный порт, Удаленный порт, Идентификатор процесса, Имя процесса и информация о стране. удаленного IP-адреса (требуется отдельно загрузить IP-адрес в файл страны).


отказ

Я никоим образом не связан с SystemInternals (часть Microsoft) или Nirsoft, я просто конечный пользователь их (бесплатных) утилит.

8

В Windows 7/8 */10 вы можете использовать Resource Monitor -> Network Tab.

Самый простой способ открыть монитор ресурсов - это:

  • Открыть диспетчер задач (правая панель задач -> запустить диспетчер задач)
  • Нажмите вкладку «Производительность»
  • Нажмите кнопку Монитор ресурсов

Монитор ресурсов -> Сеть

* = не подтверждено

2

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

Запустите командную оболочку администратора:

  • Нажмите кнопку запуска
  • Тип "cmd"
  • Нажмите Ctrl + Shift + Enter

Введите команду: netstat -tabn

Переключатели означают следующее:

  • -t Отображает текущее состояние разгрузки соединения.
    • то есть. УСТАНОВЛЕН, СЛУШАТЬ, TIME_WAIT
  • -a Отображает все соединения и порты прослушивания.
  • -b Отображает исполняемый файл, участвующий в создании каждого соединения или порта прослушивания. В некоторых случаях известные исполняемые файлы содержат несколько независимых компонентов, и в этих случаях отображается последовательность компонентов, участвующих в создании соединения или порта прослушивания. В этом случае исполняемый файл находится в [] внизу, вверху - компонент, который он вызвал, и так далее, пока не будет достигнут TCP/IP. Обратите внимание, что этот параметр может занять много времени и завершится ошибкой, если у вас нет достаточных разрешений.
  • -n Отображает адреса и номера портов в числовой форме.

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

1

Как сказал Антик, вы можете использовать netstat из командной строки администратора. Тем не менее, я бы предложил, чтобы вы использовали o вместо b , чтобы вывод был в одной строке для записи, и вы можете дополнительно отфильтровать его с помощью find. У вас не будет имени процесса, но идентификатор процесса:

Например

netstat -aon | find ":80"

отображает все соединения через порт 80 (локально или удаленно)

Затем вы можете проверить этот процесс в диспетчере задач или выполнить другой фильтр в командной строке, используя на этот раз список задач:

tasklist | find "1100"

или же

tasklist /FI "PID eq 1100"

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .