您好,登錄后才能下訂單哦!
WinPcap是一個基于Win32平臺的,用于捕獲網絡數據包并進行分析的開源庫.
大多數網絡應用程序通過被廣泛使用的操作系統元件來訪問網絡,比如sockets。 這是一種簡單的實現方式,因為操作系統已經妥善處理了底層具體實現細節(比如協議處理,封裝數據包等等),并且提供了一個與讀寫文件類似的,令人熟悉的接口。
然而,有些時候,這種“簡單的方式”并不能滿足任務的需求,因為有些應用程序需要直接訪問網絡中的數據包。也就是說,那些應用程序需要訪問原始數據包,即沒有被操作系統利用網絡協議處理過的數據包。
WinPcap產生的目的,就是為Win32應用程序提供這種訪問方式; WinPcap提供了以下功能
捕獲原始數據包,無論它是發往某臺機器的,還是在其他設備(共享媒介)上進行交換的
在數據包發送給某應用程序前,根據用戶指定的規則過濾數據包
將原始數據包通過網絡發送出去
收集并統計網絡流量信息
以上這些功能需要借助安裝在Win32內核中的網絡設備驅動程序才能實現,再加上幾個動態鏈接庫DLL。
所有這些功能都能通過一個強大的編程接口來表現出來,易于開發,并能在不同的操作系統上使用。這本手冊的主要目標是在一些程序范例的幫助下,敘述這些編程接口的使用。
通常,編寫基于WinPcap應用程序的第一件事情,就是獲得已連接的網絡適配器列表。libpcap和WinPcap都提供了 pcap_findalldevs_ex() 函數來實現這個功能: 這個函數返回一個 pcap_if 結構的鏈表, 每個這樣的結構都包含了一個適配器的詳細信息。值得注意的是,數據域 name 和 description 表示一個適配器名稱和一個可以讓人們理解的描述。
首先配置Microsoft Visual Studio 10.0
項目-->**屬性(alt+F7)
配置屬性-->清單工具-->輸入和輸出-->嵌入清單-->否
項目-->**屬性(alt+F7)
配置屬性-->C/C++-->常規-->附加包含目錄-->
項目-->**屬性(alt+F7)
配置屬性-->鏈接器-->常規-->附加庫目錄-->
項目-->**屬性(alt+F7)
配置屬性-->鏈接器-->輸入-->附加依賴項-->補充“;Packet.lib;wpcap.lib”
項目-->**屬性(alt+F7)
配置屬性-->C/C++-->預處理器-->預處理器定義-->補充“;HAVE_REMOTE
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。