Netsniff-ng

netsniff-ng是一个免费的Linux网络分析器和网络工具包，最初由 Daniel Borkmann 编写。它的性能增益是通过网络数据包（RX_RING、TX_RING）的零复制机制来实现的，因此Linux 内核不需要通过系统调用（例如recvmsg）将数据包从内核空间复制到用户空间。 libpcap从 1.0.0 版开始，也支持 Linux 上用于捕获（RX_RING）的零拷贝机制 ，因此使用 libpcap 的程序也在 Linux 上使用同一机制。

概述 
netsniff-ng 最初是作为网络嗅探器创建的，它支持用于网络数据包的Linux 内核packet-接口。但后来添加了更多工具，例如iproute2套件，以使其成为有用的工具包。通过内核的零拷贝接口，即使在商用硬件上也可以实现高效的数据包处理。例如，使用 netsniff-ng 的 trafgen 已达到千兆以太网线速。netsniff-ng 工具包不依赖于libpcap库。此外，运行该工具包不需要特殊的操作系统补丁。netsniff-ng 是自由软件，根据GNU 通用公共许可证第 2 版的条款发布。

该工具包目前包括网络分析器、数据包捕获器和中继器、线速流量生成器、加密的多用户IP隧道、伯克利数据包过滤器编译器、网络统计工具、自治系统跟踪路由等。

 netsniff-ng，零拷贝分析器、数据包捕获器和回放器，本身支持pcap文件格式
 trafgen，零拷贝线速流量生成器
 ，一个数据包生成器和分析器，用于带有 Cisco-CLI 的 HW/SW 设备
 bpfc，伯克利包过滤器编译器
 ifpps，一个类似top的内核网络统计工具
 flowtop，一个类似top的netfilter连接跟踪工具，带有Geo-IP信息
 curvetun, 一种基于椭圆曲线密码学的轻量级多用户IP 隧道
 astraceroute，具有地理 IP 信息的自治系统跟踪路由实用程序

发行版特定软件包可用于所有主要操作系统发行版，例如Debian或Fedora Linux。它还被添加到Xplico的网络取证工具包、GRML Linux、SecurityOnion、和中。 netsniff-ng 工具包也用于学术界。

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。

參見 

 
 OpenVPN
 
 Tcpdump
 跟踪路由
 
 Wireshark

参考來源

外部链接 

 netsniff-ng 官方网站 
 netsniff-ng 常见问题 
 GitHub 上的 netsniff-ng 
 netsniff-ng 邮件列表存档
 Linux 的数据包 mmap()、BPF 和 netsniff-ng 工具包 ，在 DevConf 上进行讨论（长）
 数据包套接字、BPF、netsniff-ng ，在 OpenSourceDays 上讨论（短）
 

網絡分析器
用C編程的自由軟體

Unix网络相关软件
網絡分析器
用C編程的自由軟體
自由網路軟體
Linux軟件
Linux軟件