netsniff-ng
netsniff-ng是一個免費的Linux網絡剖析器和網絡工具包,最初由 Daniel Borkmann 編寫。它的效能增益是通過網絡封包(RX_RING
、TX_RING
)的零複製機制來實現的,[4]因此Linux 內核不需要通過系統呼叫(例如recvmsg
)將封包從內核空間複製到用戶空間。 [5]libpcap從 1.0.0 版開始,也支援 Linux 上用於擷取(RX_RING
)的零拷貝機制 ,因此使用 libpcap 的程式也在 Linux 上使用同一機制。
原作者 | Daniel Borkmann |
---|---|
開發者 | Daniel Borkmann,Tobias Klauser,Herbert Haas,Emmanuel Roullit,Markus Amend和其他人 |
首次發佈 | 2009年12月 |
目前版本 | 0.6.8[1](2021年1月11日) |
原始碼庫 | https://github.com/netsniff-ng/netsniff-ng |
程式語言 | C語言 |
作業系統 | Linux |
語言 | 英文 |
類型 | |
許可協定 | GPLv2[2] |
網站 | http://netsniff-ng.org[3] |
概述
netsniff-ng 最初是作為網絡嗅探器建立的,它支援用於網絡封包的Linux 內核packet-mmap介面。但後來添加了更多工具,例如iproute2套件,以使其成為有用的工具包。通過內核的零拷貝介面,即使在商用硬件上也可以實現高效的封包處理。例如,使用 netsniff-ng 的 trafgen 已達到千兆乙太網路線速。[6][7]netsniff-ng 工具包不依賴於libpcap庫。此外,執行該工具包不需要特殊的作業系統修補程式。netsniff-ng 是自由軟件,根據GNU 通用公共許可證第 2 版的條款發佈。
該工具包目前包括網絡剖析器、封包擷取器和中繼器、線速流量生成器、加密的多用戶IP隧道、伯克利封包過濾器編譯器、網絡統計工具、自治系統跟蹤路由等。[8]
netsniff-ng
,零拷貝剖析器、封包擷取器和回放器,本身支援pcap檔案格式trafgen
,零拷貝線速流量生成器mausezahn
,一個封包生成器和剖析器,用於帶有 Cisco-CLI 的 HW/SW 裝置bpfc
,伯克利包過濾器編譯器ifpps
,一個類似top的內核網絡統計工具flowtop
,一個類似top的netfilter連接跟蹤工具,帶有Geo-IP資訊curvetun
, 一種基於橢圓曲線密碼學的輕量級多用戶IP 隧道astraceroute
,具有地理 IP 資訊的自治系統跟蹤路由實用程式
發行版特定軟件套件可用於所有主要作業系統發行版,例如Debian[9]或Fedora Linux。它還被添加到Xplico的網絡取證工具包、[10]GRML Linux、SecurityOnion、[11]和網絡安全工具包中。[12] netsniff-ng 工具包也用於學術界。[13][14]
netsniff-ng 基本命令範例
所有範例均假設eth0是使用的網絡介面,在使用時需要因實際情況調節。netsniff-ng 套件中的程式接受長選項,例如,--in(-i)、--out(-o)、--dev(-d)。
- 對於到網站的地理 AS TCP SYN探測跟蹤路由:
astraceroute -d eth0 -N -S -H $HOSTNAME
,當中$HOSTNAME
爲一個域名 - 對於混雜模式下的內核網絡統計資訊:
ifpps -d eth0 -p
- 對於高速網絡封包流量生成,並以
trafgen.txf
是封包組態:trafgen -d eth0 -c trafgen.txf
- 編譯伯克利包過濾器
(fubar.bpf)
:bpfc fubar.bpf
- 對於當前 TCP 連接的即時跟蹤(包括協定、應用程式名稱、源和目標的城市和國家):
flowtop
- 為了在pcap檔案中有效地轉儲並分析網絡流量:
netsniff-ng -i eth0 -o dump.pcap -s -b 0
平台
netsniff-ng工具包目前僅在Linux系統上執行。它的開發人員拒絕將其移植到Microsoft Windows。[15]
參見
參考來源
- ^ Release 0.6.8. 2021年1月11日 [2021年1月13日].
- ^ netsniff-ng license. [2021-12-20]. (原始內容存檔於2021-12-24).
- ^ https://api.github.com/repos/borkmann/netsniff-ng; 檢索日期: 2018年7月29日.
- ^ Description of the Linux packet-mmap mechanism. [2011-11-06]. (原始內容存檔於2021-12-21).
- ^ netsniff-ng homepage, abstract, zero-copy. [2011-11-06]. (原始內容存檔於2016-09-08).
- ^ Network Security Toolkit Article about trafgen's performance capabilities. [2011-11-06]. (原始內容存檔於2022-02-14).
- ^ Developer's blog about trafgen's performance. 2011-10-16 [2011-11-06]. (原始內容存檔於2012-04-25).
- ^ netsniff-ng README. [2018-02-16]. (原始內容存檔於2022-01-22).
- ^ netsnif-ng in Debian. [2022-03-27]. (原始內容存檔於2021-12-21).
- ^ Xplico support of netsniff-ng. [2011-11-06]. (原始內容存檔於2021-12-21).
- ^ Security Onion 12.04 RC1 available now!. [2012-12-16].
- ^ Network Security Toolkit adds netsniff-ng. [2011-11-06]. (原始內容存檔於2021-06-24).
- ^ netsniff-ng's trafgen at University of Napoli Federico II. [2011-11-07]. (原始內容存檔於2011-11-10).
- ^ netsniff-ng's trafgen at Columbia University. [2011-11-07]. (原始內容存檔於2021-08-26).
- ^ netsniff-ng FAQ declining a port to Microsoft Windows. [2015-06-21]. (原始內容存檔於2021-06-13).
外部連結
- netsniff-ng 官方網站 (頁面存檔備份,存於互聯網檔案館)
- netsniff-ng 常見問題 (頁面存檔備份,存於互聯網檔案館)
- GitHub 上的 netsniff-ng (頁面存檔備份,存於互聯網檔案館)
- netsniff-ng 郵寄清單存檔
- Linux 的封包 mmap()、BPF 和 netsniff-ng 工具包 (頁面存檔備份,存於互聯網檔案館),在 DevConf 上進行討論(長)
- 封包通訊端、BPF、netsniff-ng ,在 OpenSourceDays 上討論(短)
- Linux系統管理員工具(Administration and Privileged Commands)手冊頁 –