<span id="plx27"><var id="plx27"></var></span>
<dfn id="plx27"><var id="plx27"></var></dfn>
  • <span id="plx27"><code id="plx27"><input id="plx27"></input></code></span>
    <menu id="plx27"></menu><menuitem id="plx27"><thead id="plx27"><input id="plx27"></input></thead></menuitem>
  • <label id="plx27"><code id="plx27"></code></label>
    <label id="plx27"><button id="plx27"></button></label>

    第四章-winpcap編程

    上傳人:fgh****35 文檔編號(hào):248226881 上傳時(shí)間:2024-10-22 格式:PPT 頁(yè)數(shù):17 大小:406.90KB
    收藏 版權(quán)申訴 舉報(bào) 下載
    第四章-winpcap編程_第1頁(yè)
    第1頁(yè) / 共17頁(yè)
    第四章-winpcap編程_第2頁(yè)
    第2頁(yè) / 共17頁(yè)
    第四章-winpcap編程_第3頁(yè)
    第3頁(yè) / 共17頁(yè)

    下載文檔到電腦,查找使用更方便

    15 積分

    下載資源

    還剩頁(yè)未讀,繼續(xù)閱讀

    資源描述:

    《第四章-winpcap編程》由會(huì)員分享,可在線閱讀,更多相關(guān)《第四章-winpcap編程(17頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

    1、,#,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Winpcap,編程,網(wǎng)絡(luò)軟件設(shè)計(jì),趙,洪,zh,緒論內(nèi)容,Winpcap,概述,1,Winpcap,資源,2,Winpcap,編程詳解,3,Winpcap,概述,提供抓包和網(wǎng)絡(luò)監(jiān)控功能的庫(kù)。,開(kāi)放源碼,免費(fèi)。,官方站點(diǎn):,www.winpcap.org/,Winpcap,資源,安裝包,SDK,庫(kù)(,lib,,,dll,),頭文件,文檔,例子代碼,Winpca

    2、p,編程詳解,Winpcap,編程環(huán)境設(shè)定,Winpcap,例子(,IP,包解析),Winpcap,編程環(huán)境設(shè)定,包含,pcap.h,文件,預(yù)處理定義中需要加入,WPCAP,的定義,鏈接,wpcap.lib,庫(kù),連接,ws2_32.lib,庫(kù),設(shè)定方法,要添加一個(gè)預(yù)處理定義,你需要打開(kāi),Project,菜單,選擇,Settings,,,然后選擇,C/C+,選項(xiàng)卡,在,General,類(lèi)下,你必須在,Preprocessor Definitions,下的文本框中添加定義。,要在一個(gè),VC+6.0,工程中,添加一個(gè)新的庫(kù),你必須打開(kāi),Project,菜單,選擇,Settings,,,然后選擇,Li

    3、nk,選項(xiàng)卡,然后把新庫(kù)的名字添加到,Object/Library modules,下的文本框中,要向,VC+6.0,中添加一個(gè)新的庫(kù)所在的路徑,你必須打開(kāi),Tool,菜單,選擇,Options,,,然后選擇,Directories,選項(xiàng)卡,在,Show directories,下拉框中選擇,Library files,,,并且將新的路徑添加到,Directories,中去,要向,VC+6.0,中添加一個(gè)新的包含文件所在的路徑,你必須打開(kāi),Tool,菜單,選擇,Options,,,然后選擇,Directories,選項(xiàng)卡,在,Show directories,下拉框中選擇,Include fi

    4、les,,,并且將新的路徑添加到,Directories,中去,Winpcap,基本步驟,固定步驟:,獲得已連接的網(wǎng)絡(luò)適配器列表,打開(kāi)適配器捕獲數(shù)據(jù)包,回調(diào)函數(shù)方式,非回調(diào)函數(shù)方式,可選步驟:,過(guò)濾數(shù)據(jù)包,輸出到,dump,文件,發(fā)送數(shù)據(jù)包,pcap_findalldevs,函數(shù),int pcap_findalldevs(,pcap_if_t*alldevsp,char*errbuf,),功能:,得到網(wǎng)絡(luò)設(shè)備(網(wǎng)卡)列表。,參數(shù):,alldevsp,(OUT),:鏈表,指向,pcap_if_t,結(jié)構(gòu),鏈表中包含了網(wǎng)絡(luò)設(shè)備的信息。,errbuf,(OUT),:錯(cuò)誤信息返回。,返回值:,成功返回,

    5、0,,失敗返回,-1,,在,errbuf,中有錯(cuò)誤信息提示。,pcap_if_t,結(jié)構(gòu),struct pcap_if,struct pcap_if*next;,char*name;,char*description;,struct pcap_addr*addresses;,bpf_u_int32 flags;,;,typedef struct pcap_if pcap_if_t;,pcap_if,*,next,if not NULL,a pointer to the next element in the list;NULL for the last element of the list,c

    6、har*,name,a pointer to a string giving a name for the device to pass to,pcap_open_live(),char*,description,if not NULL,a pointer to a string giving a human-readable description of the device,pcap_addr,*,addresses,a pointer to the first element of a list of addresses for the interface,u_int,flags,PCA

    7、P_IF_ interface flags.Currently the only possible flag is,PCAP_IF_LOOPBACK,that is set if the interface is a loopback interface.,pcap_open,函數(shù),pcap_t*pcap_open_live(,const char*device,int snaplen,int promisc,int to_ms,char*errbuf),功能:,打開(kāi)網(wǎng)絡(luò)設(shè)備。,參數(shù):,device(IN),:設(shè)備名。,snaplen(IN),:指定保留數(shù)據(jù)包的最大長(zhǎng)度。,promisc(IN

    8、),:制定網(wǎng)卡工作模式,非,0,。,to_ms(IN),:讀超時(shí)時(shí)間。,errbuf,(OUT),:錯(cuò)誤信息返回。,返回值:,成功返回,0,,失敗返回,-1,,在,errbuf,中有錯(cuò)誤信息提示。,pcap_loop,函數(shù),int pcap_loop(,pcap_t*p,int cnt,pcap_handler callback,u_char*user),功能:,抓取數(shù)據(jù)包,并調(diào)用回調(diào)函數(shù)做處理。,參數(shù):,pcap_t,(IN),:設(shè)備指針。,cnt(IN),:定義抓包的數(shù)量,,0,表示無(wú)限。,callback,(IN),:數(shù)據(jù)包處理函數(shù)的指針。,user,(IN),:用戶參數(shù),可以傳給包處理

    9、回調(diào)函數(shù)。,返回值:,成功返回,0,,小于,0,表示出錯(cuò)。,回調(diào)函數(shù)定義,typedef void(*),pcap_handler,(,u_char*user,const struct,pcap_pkthdr,*pkt_header,const u_char*pkt_data,),u_char*user,:用戶參數(shù)。,const struct,pcap_pkthdr,*pkt_header,:,winpcap,數(shù)據(jù)包頭,非協(xié)議包頭。,const u_char*pkt_data,:數(shù)據(jù)包。,流程總結(jié),枚舉網(wǎng)絡(luò)設(shè)備,pcap_findalldevs,打開(kāi)網(wǎng)絡(luò)設(shè)備,pcap_open,循環(huán)抓包,pc

    10、ap_loop,包處理回調(diào)函數(shù),pcap_next_ex,函數(shù),int pcap_next_ex(,pcap_t*p,struct pcap_pkthdr*pkt_header,const u_char*pkt_data,),功能:,抓取數(shù)據(jù)包,并調(diào)用回調(diào)函數(shù)做處理。,參數(shù):,p(IN),:設(shè)備指針。,pkt_header(OUT),:,winpcap,包頭。,pkt_data,(OUT),:包數(shù)據(jù)。,返回值:,1,表示成功抓包,,0,表示超時(shí),小于,0,表示出錯(cuò)。,IP,包解析,typedef struct IPHeader,BYTE Ver_Hlen;,BYTE TOS;,WORD TatalLen;,WORD ID;,WORD Flag_Segment;,BYTE TTL;,BYTE Protocol;,WORD Checksum;,ULONG SrcIP;,ULONG DstIP;,IPHeader;,Thank You!,結(jié)束頁(yè),

    展開(kāi)閱讀全文
    溫馨提示:
    1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
    2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
    3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
    4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
    5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
    6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
    7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

    相關(guān)資源

    更多
    正為您匹配相似的精品文檔

    相關(guān)搜索

    關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

    copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

    備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


    本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!

    欧美久久久一区二区三区,国产精品亚洲一区二区无码,亚洲国产精品综合久久20声音,亚洲国产精品无码久久久蜜芽
    <span id="plx27"><var id="plx27"></var></span>
    <dfn id="plx27"><var id="plx27"></var></dfn>
  • <span id="plx27"><code id="plx27"><input id="plx27"></input></code></span>
    <menu id="plx27"></menu><menuitem id="plx27"><thead id="plx27"><input id="plx27"></input></thead></menuitem>
  • <label id="plx27"><code id="plx27"></code></label>
    <label id="plx27"><button id="plx27"></button></label>