
我正在尋找一種在 Windows 10 系統上偵測 ICMP 請求(例如 ping)的方法。不幸的是,它不能與 netstat 一起使用,因為 ICMP 不依賴端口,因此所有其他輕量級工具(如 TCPview)也無法工作。
是否有用於在 Windows 10 系統上監視 ICMP 的本機命令?或者,如果沒有其他解決方案,我會選擇第三方工具,最好是比 Wireshark 更簡單/更輕的工具。任何提示/解決方案表示讚賞!
答案1
不幸的是它不能與 netstat 一起使用,因為 ICMP 不依賴端口
不;這是因為 ICMP 處理程序不使用常規的插座,但內建於 IP 堆疊中。但是,如果您有一個程式使用「原始套接字」來產生例如 UDP 或 TCP 封包(例如我認為 nmap 合格),您也不會在 netstat 中看到它們。
此外,它無論如何也不會工作,因為 ICMP 是一種基於資料報的協議,其中單個「未連接」套接字可以從所有可能的來源接收資料包 - 即使它是 UDP(其中做顯示在 netstat 中),*:*
即使伺服器正在回應 50 個不同的客戶端,您通常也只會看到一個「外部位址:」套接字。
是否有用於在 Windows 10 系統上監視 ICMP 的本機命令?
Windows 10pktmon
自 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 不同,Npcap 只在一個位置取得它們)。
Pktmon的ETL擷取檔案也可以轉換為 .pcapng用於 Wireshark。
或者,如果沒有其他解決方案,我會選擇第三方工具,最好是比 Wireshark 更簡單/更輕的工具
Wireshark 附帶兩個命令列工具:tshark
將資料包捕獲到終端(非常類似於 tcpdump,只是具有 Wireshark 的解析功能)和dumpcap
輸出原始 pcapng 檔案(類似於帶有-w
選項的 tcpdump)。
(其他工具也可能直接使用與 Wireshark 一起安裝的相同 Npcap 驅動程序,例如,很可能有一個 tcpdump 端口;儘管您需要注意 Npcap 的許可,它對 Wireshark 有一個特殊的例外。其中一些工具可能還需要以“WinPcap 相容”模式安裝Npcap。