
Я ищу способ обнаружения ICMP-запросов (например, ping) в системе Windows 10. К сожалению, это не работает с netstat, поскольку ICMP не зависит от порта, поэтому все другие легкие инструменты, такие как TCPview, также не будут работать.
Есть ли собственная команда для мониторинга ICMP в системе Windows 10? В качестве альтернативы я бы выбрал сторонний инструмент, если нет другого решения, желательно что-то более простое / легковесное, чем Wireshark. Любые подсказки / решения приветствуются!
решение1
К сожалению, это не работает с netstat, так как ICMP не зависит от порта.
Нет, это потому, что обработчик ICMP не использует обычныйразъем, но встроен в стек IP. Но если у вас есть программа, которая использует "сырые сокеты" для генерации, например, пакетов UDP или TCP (например, я думаю, nmap подходит), вы бы их также не увидели в netstat.
Кроме того, это все равно не сработает, поскольку ICMP — это протокол на основе датаграмм, где один «неподключенный» сокет может получать пакеты из всех возможных источников, даже если это UDP (которыйделаетотображаются в netstat), вы обычно увидите только один *:*
сокет «Внешний адрес:», даже если сервер отвечал 50 разным клиентам.
Существует ли собственная команда для мониторинга ICMP в системе Windows 10?
Windows 10 pktmon
вышла в 2018 году.
pktmon filter add -p ICMP
pktmon start --etw -m real-time
pktmon filter add -p ICMP
pktmon start -c
...
pktmon stop
pktmon etl2txt .\PktMon.etl
Трассировки выполняются на разных уровнях ОС, поэтому один и тот же пакет будет отображаться как проходящий через несколько компонентов Windows (в отличие от Npcap, который обнаруживает их только в одном месте).
Файлы захвата ETL Pktmon также могут бытьпреобразовано в .pcapngдля использования в Wireshark.
В качестве альтернативы я бы выбрал сторонний инструмент, если нет другого решения, желательно что-то более простое/легкое, чем Wireshark.
Wireshark поставляется с двумя инструментами командной строки: tshark
один захватывает пакеты в терминал (очень похоже на tcpdump, только с возможностями анализа Wireshark) и dumpcap
другой выводит необработанный файл pcapng (как tcpdump с -w
опцией).
(Другие инструменты также могут напрямую использовать тот же драйвер Npcap, который устанавливается вместе с Wireshark, например, вполне возможно, что для него есть порт tcpdump; хотя вам нужно будет обратить внимание на лицензирование Npcap, в котором есть особое исключение для Wireshark. Для некоторых из этих инструментов также может потребоваться установка Npcap в режиме «совместимости с WinPcap».)
решение2
Бесплатный инструмент, который может обнаружить ICMP-зонды: Wireshark.
После выбора сетевого адаптера и начала захвата вы можете установить фильтр отображения на ICMP.
Вот пример обнаружения ping localhost
: