一:The NPF driver isn’t running
這個錯誤是因爲沒有開啓NPF服務造成的。
NPF即網絡數據包過濾器(Netgroup Packet Filter,NPF)是Winpcap的核心部分,它是Winpcap完成困難工作的組件。它處理網絡上傳輸的數據包,並且對用戶級提供可捕獲(capture)、發送(injection)和分析性能(analysis capabilities)。
它不僅提供了基本的特性(例如抓包),還有更高級的特性(例如可編程的過濾器系統)。前者可以被用來約束一個抓包會話只針對網絡通信中的一個子集,後者提供了一個強大而簡單的統計網絡通信量的機制。
解決辦法如下:
(1)確保自己安裝了WinPcap(這個在安裝Wireshark時會提示你安裝的)也可以從官網下載:
(2)在命令提示符下輸入:net start npf 會提示打開驅動服務成功。如下圖所示:
如果想關閉服務就輸入:net stop npf 即可。
二:抓取本地迴環數據
windows下,在命令行中輸入以下語句:
route add 192.168.1.56 mask 255.255.255.255 192.168.1.253 metric 1
其中,192.168.1.56 是本機 ip,192.168.1.253 是路由網關。其他都不變。
注意:建立連接時需要使用本機192.168.1.56的IP,不能使用127.0.0.1,如:
socket.Connect("192.168.1.56", 4530);
路由刪除:
route delete 192.168.1.56
https://wiki.wireshark.org/CaptureSetup/Loopback
windows7 以管理員身份運行 cmd.exe(C:\Windows\System32),再執行 下面命令:
route add 192.168.1.56 mask 255.255.255.255 192.168.1.253 metric 1