trafgen: ipv4: Do not use user-provided 'ihl' field to calculate csum
[netsniff-ng-new.git] / README
blobc20d65e29bac1cc9400d18d678fb8cfa63329318
1 //////////////////////////////////////////////////////////////////////////////
3                     netsniff-ng - the packet sniffing beast
5 \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
6                                          .      .
7 netsniff-ng is a free, performant       /(      )\
8 Linux network analyzer and            .' {______} '.
9 networking toolkit. If you will,       \ ^,    ,^ /
10 the Swiss army knife for network        |'O\  /O'|   _.<0101011>--
11 packets.                                > `'  '` <  /
12                                         ) ,.==., (  |
13 Web: http://netsniff-ng.org          .-(|/--~~--\|)-'
14                                     (      ___
15 The gain of performance is           \__.=|___E
16 reached by built-in zero-copy
17 mechanisms, so that on packet reception and transmission the kernel does not
18 need to copy packets from kernel space to user space, and vice versa.
20 The netsniff-ng toolkit's primary usage goal is to facilitate a network
21 developer's / hacker's daily Linux plumbing. It can be used for network
22 development, debugging, analysis, auditing or network reconnaissance. It
23 consists of the following fixed set of utilities:
25   * netsniff-ng: a zero-copy packet analyzer, pcap capturing/replaying tool
26   * trafgen: a multithreaded low-level zero-copy network packet generator
27   * mausezahn [*]: high-level packet generator for appliances with Cisco-CLI
28   * ifpps: a top-like kernel networking and system statistics tool
29   * curvetun [*]: a lightweight curve25519-based multiuser IP tunnel
30   * astraceroute: an autonomous system trace route and DPI testing utility
31   * flowtop: a top-like netfilter connection tracking tool
32   * bpfc: a [seccomp-]BPF (Berkeley packet filter) compiler, JIT disassembler
34 Note that tools marked with [*] should be considered as experimental for now,
35 and not used in production environments as they still need more work to be
36 fully stable and in line with others. You have been warned!
38 Each release can be verified with Git and GPG, here are the steps to do so:
40  1) Import the maintainers public keys:
41    git show maint-tklauser-pgp-pub | gpg --import
42    git show maint-dborkman-pgp-pub | gpg --import
43  2) Verify the Git tag:
44    git tag -v <tag-name>
46 Carefully read the INSTALL document for the next steps in building netsniff-ng.
47 Note that the toolkit is still quite young and under heavy development, not
48 yet feature complete and in a quality level where we're satisfied with (i.e.
49 for mausezahn). However, we're on a good way towards tackling all these goals.
51 The netsniff-ng toolkit is an open source project covered by the GNU General
52 Public License, version 2.0. For any questions or feedback about netsniff-ng
53 you are welcome to leave us a message at <netsniff-ng@googlegroups.com>.
55 netsniff-ng is non-profit and provided in the hope, that it is found useful.
56 The current project status can be considered as "working". In general, all tools
57 have been tested by us to a great extend including their command-line options.
58 In fact, many of our tools are used in a lot of production systems. However, we
59 give no guarantee that our tools are free of bugs! If you spot some issues,
60 contact us as described in REPORTING-BUGS. Also, have a look at our online FAQ
61 for answering your questions. This project has received support from companies
62 and institutions listed in the according section in the AUTHORS file. Thanks for
63 contributing, we're thrilled to provide you with netsniff-ng! Happy packet
64 hacking!