我有一些千兆乙太網路視覺相機,它們使用乙太網路進行通訊。該協定是簡單的 UDP,但出於效能原因(高資料包吞吐量導致 CPU 負載),製造商使用過濾器驅動程式來防止在使用 WinPCap/Wireshark 捕獲時顯示這些資料包。
相機附帶的軟體需要過濾器驅動程式才能工作(沒有普通的 UDP 套接字回退),我想分析它的流量。我希望避免使用額外的硬體進行捕獲,並且更喜歡純軟體解決方案。
問題:有什麼方法可以優先考慮 WinPCap,以便它在過濾器驅動程式之前處理資料包嗎?
系統資訊:
- 作業系統:Windows 10(64位元)
- 軟體:Wireshark 2.4.4[-0-g90a7ve11a4]
- 擷取驅動程式:WinPCap v4.1.3(packet.dll 版本 4.1.0.2980)
- RealTek:USB-GbE 轉接器(驅動程式版本 10.7.218.2016)
適配器配置螢幕截圖(德語,抱歉):
這是我的網路介面設定的螢幕截圖(標記的驅動程式“Teledyne DALSA Sapera GigE Vision Filter Driver”是相關驅動程式)。
答案1
如果相機連接到集線器,您可以將筆記型電腦插入集線器並以混雜模式擷取。
如果攝影機連接到交換機,您可以設定鏡像連接埠(將攝影機插入的連接埠鏡像到您插入執行wireshark擷取的機器的連接埠)。
如果相機直接插入運行 Wireshark 的計算機,請確保 TCP Chiminey 已關閉。
以下是一些似乎與嘗試解決此確切問題相關的連結。
https://www.wireshark.org/docs/dfref/g/gvsp.html
https://wiki.wireshark.org/CaptureSetup/Offloading#TCP_Chimney
如果您提供有關相機的更多資訊(即相機型號是什麼?)和您的網路拓撲(例如,相機是否連接到您正在執行 Wireshark 的電腦、集線器或一個開關?)。
編輯:您實際上要求的是手動變更 Winsock 目錄條目(分層服務提供者)的順序。透過運行,netsh winsock set /?
您可以看到直接配置 Winsock 的選項。從我看來,沒有辦法改變 LSP 的順序。
https://msdn.microsoft.com/en-us/library/windows/desktop/gg581810(v=vs.85).aspx
https://blog.malwarebytes.com/cybercrime/2014/10/changes-in-the-lsp-stack/