descriptionnetsniff-ng toolkit, the packet sniffing beast, staging tree
homepage URL
repository URLgit://
last changeTue, 23 May 2017 07:09:27 +0000 (23 09:09 +0200)
last refreshWed, 24 May 2017 22:11:24 +0000 (25 00:11 +0200)
content tags

                    netsniff-ng - the packet sniffing beast

                                         .      .
netsniff-ng is a free, performant       /(      )\
Linux network analyzer and            .' {______} '.
networking toolkit. If you will,       \ ^,    ,^ /
the Swiss army knife for network        |'O\  /O'|   _.<0101011>--
packets.                                > `'  '` <  /
                                        ) ,.==., (  |
Web:          .-(|/--~~--\|)-'
                                    (      ___
The gain of performance is           \__.=|___E
reached by built-in zero-copy
mechanisms, so that on packet reception and transmission the kernel does not
need to copy packets from kernel space to user space, and vice versa.

The netsniff-ng toolkit's primary usage goal is to facilitate a network
developer's / hacker's daily Linux plumbing. It can be used for network
development, debugging, analysis, auditing or network reconnaissance. It
consists of the following fixed set of utilities:

  * netsniff-ng: a zero-copy packet analyzer, pcap capturing/replaying tool
  * trafgen: a multithreaded low-level zero-copy network packet generator
  * mausezahn [*]: high-level packet generator for appliances with Cisco-CLI
  * ifpps: a top-like kernel networking and system statistics tool
  * curvetun [*]: a lightweight curve25519-based multiuser IP tunnel
  * astraceroute: an autonomous system trace route and DPI testing utility
  * flowtop: a top-like netfilter connection tracking tool
  * bpfc: a [seccomp-]BPF (Berkeley packet filter) compiler, JIT disassembler

Note that tools marked with [*] should be considered as experimental for now,
and not used in production environments as they still need more work to be
fully stable and in line with others. You have been warned!

Each release can be verified with Git and GPG, here are the steps to do so:

 1) Import the maintainers public keys:
   git show maint-tklauser-pgp-pub | gpg --import
   git show maint-dborkman-pgp-pub | gpg --import
 2) Verify the Git tag:
   git tag -v <tag-name>

Carefully read the INSTALL document for the next steps in building netsniff-ng.
Note that the toolkit is still quite young and under heavy development, not
yet feature complete and in a quality level where we're satisfied with (i.e.
for mausezahn). However, we're on a good way towards tackling all these goals.

The netsniff-ng toolkit is an open source project covered by the GNU General
Public License, version 2.0. For any questions or feedback about netsniff-ng
you are welcome to leave us a message at <>.

netsniff-ng is non-profit and provided in the hope, that it is found useful.
The current project status can be considered as "working". In general, all tools
have been tested by us to a great extend including their command-line options.
In fact, many of our tools are used in a lot of production systems. However, we
give no guarantee that our tools are free of bugs! If you spot some issues,
contact us as described in REPORTING-BUGS. Also, have a look at our online FAQ
for answering your questions. This project has received support from companies
and institutions listed in the according section in the AUTHORS file. Thanks for
contributing, we're thrilled to provide you with netsniff-ng! Happy packet
40 hours ago Tobias KlauserAUTHORS: add Baruch Siachmaster
40 hours ago Baruch Siachproc.h: add missing headers
40 hours ago Baruch Siachflowtop: take PKG_CONFIG into account for libnetfilter_...
9 days ago Vadim Kochantrafgen: parser: Use proto_field_set_xxx where it is...
12 days ago Tobias Klausertrafgen: disable NLS in the parser
12 days ago Tobias Klauserbpfc: disable NLS in the parser
12 days ago Tobias Klauserbuilt_in: don't redefine memcpy/memset
2017-05-10 Tobias Klauserall: use <net/*> headers instead of <linux/*> where...
2017-05-03 Tobias Klausergeoip: adjust geoip{4,6}_{city,region}_name prototypes...
2017-05-03 Tobias Klauserproc: include headers to get definitions for ino_t...
2017-05-03 Tobias Klausermake: use sed instead of perl to extract lex/yacc prefix
2017-04-12 Tobias Klausernetsniff-ng: remove unnecessary zeroing of packet count...
2017-04-11 Tobias Klausernetsniff-ng v0.6.3v0.6.3
2017-03-06 Tobias Klausernetsniff-ng: nlmsg: Drop dissection of GENL_ID_GENERATE...
2017-03-02 Tobias Klauserdev: Fix buffer overflow in device_addr2str()
2017-02-09 Vadim Kochantrafgen: parser: Rename bytes -> mac
6 weeks ago v0.6.3 0.6.3 release
6 months ago v0.6.2 0.6.2 release
14 months ago v0.6.1 0.6.1 release
18 months ago v0.6.0 0.6.0 release
2 years ago v0.5.9 0.5.9 release
2 years ago v0.5.9-rc5 0.5.9-rc5 release
2 years ago v0.5.9-rc4 0.5.9-rc4 release
2 years ago v0.5.9-rc3 0.5.9-rc3 release
2 years ago v0.5.9-rc2 0.5.9-rc2 release
2 years ago v0.5.9-rc1 0.5.9-rc1 release
3 years ago v0.5.8 0.5.8 release
3 years ago v0.5.8-rc5 0.5.8-rc5 release
3 years ago v0.5.8-rc4 0.5.8-rc4 release
3 years ago v0.5.8-rc3 0.5.8-rc3 release
3 years ago v0.5.8-rc2 0.5.8-rc2 release
3 years ago v0.5.8-rc1 0.5.8-rc1 release
40 hours ago master
7 months ago coverity_scan