descriptionnetsniff-ng toolkit, the packet sniffing beast, staging tree
homepage URL
repository URLgit://
last changeMon, 22 Jan 2018 17:15:10 +0000 (22 18:15 +0100)
last refreshMon, 19 Feb 2018 01:54:35 +0000 (19 02:54 +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
2018-01-22 Tobias Klauserring: use xzmalloc_alignedmaster
2018-01-22 Tobias Klauserbpf: don't use builtin memset/memcpy in bpf_parse_rules
2018-01-12 Markus Amendnetsniff-ng: add DCCP support
2018-01-05 Tobias Klausernetsniff-ng v0.6.4v0.6.4
2017-12-19 Vadim Kochanflowtop: Fix use-after-free on filter reload
2017-12-18 Tobias Klauserflowtop: change tab title for process tab
2017-12-18 Vadim Kochanflowtop: Use RCU flow deletion from process entry
2017-12-14 Paolo Abenitrafgen: fix dinc()/ddec() modifiers
2017-10-20 Tobias Klauserastraceroute: use switch instead of lookup table for... coverity_scan
2017-10-20 Tobias Klausertrafgen: fix NULL pointer dereference in -i option...
2017-10-20 Tobias Klausertrafgen: fix resource leaks
2017-10-20 Tobias Klauserbuild: check for fopencookie() in configure
2017-09-15 Paolo Abenitrafgen: fix packet socket initialization with multiple...
2017-09-13 Tobias Klauserifpps: fix unintendet assignment
2017-09-13 Tobias Klauserlink: use uint32_t instead of u32
2017-09-13 Tobias Klauserifpps: use uint32_t instead of u32
6 weeks ago v0.6.4 0.6.4 release
10 months ago v0.6.3 0.6.3 release
15 months ago v0.6.2 0.6.2 release
22 months ago v0.6.1 0.6.1 release
2 years 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
3 years ago v0.5.9-rc4 0.5.9-rc4 release
3 years ago v0.5.9-rc3 0.5.9-rc3 release
3 years ago v0.5.9-rc2 0.5.9-rc2 release
3 years ago v0.5.9-rc1 0.5.9-rc1 release
3 years ago v0.5.8 0.5.8 release
4 years ago v0.5.8-rc5 0.5.8-rc5 release
4 years ago v0.5.8-rc4 0.5.8-rc4 release
4 years ago v0.5.8-rc3 0.5.8-rc3 release
4 years ago v0.5.8-rc2 0.5.8-rc2 release
3 weeks ago master
3 months ago coverity_scan