descriptionnetsniff-ng toolkit, the packet sniffing beast, staging tree
homepage URL
repository URLgit://
last changeWed, 25 Nov 2015 08:13:03 +0000 (25 09:13 +0100)
last refreshWed, 25 Nov 2015 11:56:07 +0000 (25 12:56 +0100)
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
4 hours ago Vadim Kochantrafgen: Make sure yyin is set before close itmaster
23 hours ago Tobias Klausertrafgen: Preprocess packets directly after compiling
26 hours ago Tobias Klausertrafgen: Fix error message if no packet configuration...
26 hours ago Vadim Kochancpp: Use /tmp folder for output files
26 hours ago Vadim Kochantrafgen: Invoke C preprocessor from cpp.c module
26 hours ago Vadim Kochanbpfc: Invoke C preprocessor from cpp.c module
26 hours ago Vadim Kochancpp: Add cpp.c module to invoke C preprocessor
26 hours ago Vadim Kochanflowtop: Add runtime commands to filter flows by proto
9 days ago Tobias KlauserAUTHORS: Add two new contributors
9 days ago Vadim Kochanbpfc: Do not panic if bpf file is not valid
9 days ago Vadim Kochannetsniff-ng: nlmsg: Check message length before dissect...
9 days ago Tobias Klausernetsniff-ng: nlmsg: Rename attr_fmt to rta_fmt
9 days ago Vadim Kochannetsniff-ng: nlmsg: Print generic netlink ctrl family...
9 days ago Vadim Kochannetsniff-ng: nlmsg: Print not dissected attribute type...
9 days ago Vadim Kochanflowtop: Add header line with tool name & version
9 days ago Tobias Klauserlookup: Return const char * from all lookup functions
2 weeks ago v0.6.0 0.6.0 release
6 months ago v0.5.9 0.5.9 release
7 months ago v0.5.9-rc5 0.5.9-rc5 release
14 months ago v0.5.9-rc4 0.5.9-rc4 release
15 months ago v0.5.9-rc3 0.5.9-rc3 release
17 months ago v0.5.9-rc2 0.5.9-rc2 release
17 months ago v0.5.9-rc1 0.5.9-rc1 release
18 months ago v0.5.8 0.5.8 release
23 months ago v0.5.8-rc5 0.5.8-rc5 release
2 years ago v0.5.8-rc4 0.5.8-rc4 release
2 years ago v0.5.8-rc3 0.5.8-rc3 release
2 years ago v0.5.8-rc2 0.5.8-rc2 release
2 years ago v0.5.8-rc1 0.5.8-rc1 release
2 years ago maint-tklauser-pgp-pub Public key of Tobias Klauser.
2 years ago maint-dborkman-pgp-pub Public key of Daniel Borkmann.
4 hours ago master