win10開啟與關閉介面卡

2021-05-22 22:29:43 字數 3775 閱讀 3478

庫wpcap.dll為

開啟與關閉介面卡

,提供了下列函式:

pcap_t* pcap_open(const char *source,int snaplen,int flags,

int read_timeout,struct pcap_rmtauth *auth,char *errbuf);

pcap_t* pcap_open_dead(int linktype,int snaplen);

pcap_t* pcap_open_live(const char *device,int snaplen,

int promisc,int to_ms,char *ebuf)

pcap_t* pcap_open_offline(const char *fname, char *errbuf);

void pcap_close(pcap_t *p);

函式pcap_open()

開啟乙個通用的源

,該函式的原型如下:

pcap_t* pcap_open(const char *source,int snaplen,int flags,

int read_timeout,struct pcap_rmtauth *auth,char *errbuf);

只需要乙個單獨的呼叫,函式pcap_open()

代替了所有pcap_open_***()函式,隱藏了不同pcap_open_***()函式之間的區別,因此呼叫者不用管理不同形式的開啟函式。「真正」的開啟函式通過源字串的字首形式來決定源的型別。該函式可能依賴pcap_createsrcstr()

函式,根據新語法來建立儲存捕獲裝置的字串,並使用pcap_parsesrcstr()

函式作對應的解析處理。

ø函式pcap_findalldevs_ex()返回的介面卡能夠直接被pcap_open()函式使用 ø

萬一使用者想給pcap_open()函式傳遞自己的源字串,記得呼叫pcap_createsrcstr()建立正確的源標識。

引數snaplen是必須保留的資料報長度。對於過濾器所接收的每個資料報,只有開始snaplen位元組的內容被儲存到緩衝區中,並被傳遞給使用者層的應用程式。比如,snaplen等於100,意味著每個資料報只有開始的100位元組被儲存。

引數flags是用來儲存幾個捕獲資料報所需的標識。允許使用的標識在remote-ext.h

.檔案中定義。

#define pcap_openflag_promiscuous1

#define pcap_openflag_datatx_udp2

#define pcap_openflag_nocapture_rpcap4

#define pcap_openflag_nocapture_local8

#define pcap_openflag_max_responsiveness

16

引數read_timeout是以毫秒為單位的讀取超時時間。讀取超時用來處理,捕獲乙個資料報後,讀操作並不必需要立即返回的情況。但這可能等待一些時間以允許捕獲更多的資料報,這樣使用者層的一次讀操作就可從作業系統的核心中讀取更多的資料報。並不是所有的平台支援讀取超時;如果平台不支援,忽略讀取超時值。

引數auth是乙個指向乙個pcap_rmtauth結構體的指標,該結構體儲存遠端機器上使用者所需的認證資訊。萬一這不是乙個遠端捕獲,該指標可以被設定為null。

引數errbuf指向使用者所分配的乙個緩衝區,將用來儲存該函式的錯誤資訊。

函式返回乙個指向」 pcap_t」的指標,將作為後續呼叫的引數(如pcap_sendpacket()等等),其描述了乙個已開啟的winpcap會話。如果出現問題,函式返回null,並通過」 errbuf」變數儲存錯誤資訊。

注意: ø

源的長度不能比pcap_buf_size大。 ø

下列格式是不允許的「source」字串:

rpcap:// [to open the first local adapter]

rpcap://hostname/ [to open the first remote adapter]

函式建立乙個pcap_t結構體,而不開始乙個捕獲操作。

函式原型如下:

pcap_t* pcap_open_dead(int linktype,int snaplen);

引數linktype為網路鏈路型別,引數snaplen為每個資料報必須保留的長度。函式返回乙個指向」 pcap_t」的指標,將作為後續呼叫的引數。呼叫wpcap的其它函式時使用pcap_open_dead

函式,典型的使用是不開啟介面卡來編譯過濾**,在pcap_compile_nopcap函式中呼叫pcap_open_dead函式。

函式pcap_open_live()

被用來獲取乙個資料報捕獲的描述符,來查詢網路上的資料報。函式原型如下:

pcap_t* pcap_open_live(const char *device,int snaplen,

int promisc,int to_ms,char *ebuf)

引數device

是描述所開啟網路裝置的字串;在

2.2或更高核心版本的

linux

系統下,

」any」

與null

的裝置引數能被用來從所有的介面捕獲資料報。 引數

snaplen

描述資料報所需捕獲的最大位元組長度。如果該值小於所捕獲的資料報大小,只有開始

snaplen

位元組的內容**獲並作為資料報資料提供。乙個

65535

的值應該是足夠的,在大多數網路情況下,捕獲資料報可用的所有資料。

引數promisc

是描述該介面是否被設定為混雜模式。現在,這不能工作在

」any」

裝置上;如果使用乙個

」any」

或null

引數,將忽略

promisc

識別符號。將

to_ms

設定為0

,在支援超時操作的平台上,意味著沒有超時。也就是如果沒有資料報到達,讀操作將永遠不會返回。

如果設定成

-1,則情況恰好相反,無論有沒有資料報到達,讀操作都會立即返回。 引數

errbuf

指向使用者所分配的乙個緩衝區,將用來儲存該函式的警告與錯誤資訊。

函式返回乙個指向

」 pcap_t」

的指標,將作為後續呼叫的引數。

函式開啟乙個採用

tcpdump/libpcap

格式儲存的檔案讀取資料報。

函式原型如下:

pcap_t* pcap_open_offline(const char *fname, char *errbuf);

引數fname

指定了要開啟的檔案。該檔案與

tcpdump(1)

與tcpslice(1)

所使用的格式相同。

"-"是

stdin

的同義詞。引數

errbuf

用來返回函式失敗的錯誤資訊。

函式返回乙個指向」 pcap_t」的指標,將作為後續呼叫的引數。 函式

pcap_close()

用來 關閉與

p關聯的檔案並釋放相關的資源,函式原型如下:

void pcap_close(pcap_t *p);

引數p為pcap_open()

或pcap_open_***()

函式所獲取的

」pcap_t」

指標。

Win10動畫效果怎麼開啟與關閉

win10視窗動畫特效對於普通使用者來說,體驗還是不錯的,切換程式有漸變效果,不過對於需要經常對稿或者電腦比較卡的使用者而言,關閉動畫特效,有利於提公升體驗,因此大家在設定的時候,主要看需求選擇開啟或者關閉win10動畫效果。特別是有些使用者使用的電腦較老,硬體配置較為落後,尤其是顯示卡。他們想要流...

WIN10如何關閉和開啟服務

找到 開始選單 並單擊。在彈出的視窗的右側滑動滾軸找到 此電腦 在 此電腦 上右鍵 更多 管理 在彈出的管理頁面,找到 服務和應用程式 點選 服務和應用程式 會展開此選單,此時會看到 服務 選單,雙擊 服務 在視窗的右側就會看到 服務 介面了。單擊選中某個服務,然後右鍵,就會看到一系列的可選操作,包...

Win10開啟FTP與配置

1.控制面板 程式 啟用或關閉windows功能 控制面板可在 桌面右鍵 個性化 主題 桌面圖示設定 勾選控制面板 確定 2.小娜搜尋iis開啟iis 3.右擊 新增ftp站點 4.輸入站點名稱和作為ftp的目錄 5.ip位址填ftp本機ip,選擇無ssl 6.根據需要選擇身份驗證,授權與許可權 7...