日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

TCPDUMP/LIBPCAP 3-PCAP 中文手册(1)

發(fā)布時(shí)間:2023/12/9 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 TCPDUMP/LIBPCAP 3-PCAP 中文手册(1) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

SYNOPSIS

#include <pcap/pcap.h>

DESCRIPTION

PCAP提供為抓包系統(tǒng)提供高級(jí)接口。網(wǎng)絡(luò)上的所有數(shù)據(jù)包,即使是發(fā)往其他主機(jī)的數(shù)據(jù)包,都可以通過(guò)這種機(jī)制訪問(wèn)。它還支持將捕獲的數(shù)據(jù)包保存到“savefile”,和從“savefile”中讀取數(shù)據(jù)包。

Opening a capture handle for reading

調(diào)用 pcap_create()?時(shí)給定要捕獲的網(wǎng)絡(luò)或者其他接口名稱,以打開(kāi)一個(gè)用于實(shí)時(shí)捕獲的句柄,并需要設(shè)置合適參數(shù);

調(diào)用 pcap_activate() 啟動(dòng)句柄;

調(diào)用 pcap_findalldevs()?來(lái)獲得可被打開(kāi)用于實(shí)時(shí)捕獲的設(shè)備列表;

調(diào)用 pcap_freealldevs()來(lái)釋放pcap_findalldevs() 返回的設(shè)備列表;

調(diào)用 pcap_lookupdev()?會(huì)返回列表中第一個(gè)非回環(huán)網(wǎng)絡(luò)接口(not 'loopback');

調(diào)用 pcap_open_offline() 時(shí)給定“savefile”的路徑名,以打開(kāi)一個(gè)用于讀取網(wǎng)絡(luò)包的“savefile”的句柄;

調(diào)用 pcap_fopen_offline() 時(shí)給定一個(gè)來(lái)源于一個(gè)已打開(kāi)的用于讀取的文件的 FILE * 參數(shù)(fopen),來(lái)為 "savefile" 建立句柄;

調(diào)用 pcap_open_dead()獲取(用在需要 pcap_t 類型作參數(shù)的函數(shù)中的) "fake" pcap_t,比如打開(kāi)一個(gè) "savefile" 用于寫(xiě)的函數(shù) 和 編譯過(guò)濾器表達(dá)式函數(shù);

(原文:In order to get a ``fake'' pcap_t for use in routines that require a pcap_t as an argument, such as routines to open a ``savefile'' for writing and to compile a filter expression, call pcap_open_dead().)

pcap_create(), pcap_open_offline(), pcap_fopen_offline(), and pcap_open_dead() 返回一個(gè)指向 pcap_t 類型的指針, 該指針是句柄,用于從 "capture stream"?或者 "savefile" 中讀取數(shù)據(jù)包,用于查找與 "capture stream"?或者 “savefile” 相關(guān)的信息;

使用 pcap_close()關(guān)閉句柄;

Options that can be set on a capture handle


snapshot length

如果捕獲時(shí)抓取整個(gè) packet 內(nèi)容,需要更多 CPU 時(shí)間拷貝 packet 到應(yīng)用程序,更多的磁盤(pán)和網(wǎng)絡(luò)帶寬把 packet 寫(xiě)入文件,更多的磁盤(pán)空間來(lái)保存 packet。如果你不需要整個(gè) packet 內(nèi)容 — 例如,如果你只對(duì) packets 中 TCP 首部感興趣 — 你可以設(shè)置 "snapshot length" 為一個(gè)合適的數(shù)值。如果 "snapshot length" 被設(shè)置為snaplen,并且 snaplen 小于被捕獲的 packet 大小,那么只有 packet 的前 snaplen 長(zhǎng)度的字節(jié)會(huì)被捕獲并作為 packet data 內(nèi)容。

在大部分并非所有網(wǎng)絡(luò)上,從 packet 捕獲所有可用數(shù)據(jù), 65535 長(zhǎng)度的 "snapshot length" 足夠了。

調(diào)用 pcap_set_snaplen()來(lái)設(shè)置 "snapshot length"。


總結(jié)

以上是生活随笔為你收集整理的TCPDUMP/LIBPCAP 3-PCAP 中文手册(1)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。