Software:netsniff-ng

From HandWiki

netsniff-ng toolkit
Netsniff-ng small.png
Astraceroute Mushoku Tensei screenshot.png
Original author(s)Daniel Borkmann
Developer(s)Daniel Borkmann, Tobias Klauser, Herbert Haas, Emmanuel Roullit, Markus Amend and many others
Initial releaseDecember, 2009
Written inC
Operating systemLinux
Available inEnglish
Type
LicenseGPLv2[1]

netsniff-ng is a free Linux network analyzer and networking toolkit originally written by Daniel Borkmann. Its gain of performance is reached by zero-copy mechanisms for network packets (RX_RING, TX_RING),[2] so that the Linux kernel does not need to copy packets from kernel space to user space via system calls such as recvmsg().[3] libpcap, starting with release 1.0.0, also supports the zero-copy mechanism on Linux for capturing (RX_RING), so programs using libpcap also use that mechanism on Linux.

Overview

netsniff-ng was initially created as a network sniffer with support of the Linux kernel packet-mmap interface for network packets, but later on, more tools have been added to make it a useful toolkit such as the iproute2 suite, for instance. Through the kernel's zero-copy interface, efficient packet processing can be reached even on commodity hardware. For instance, Gigabit Ethernet wire-speed has been reached with netsniff-ng's trafgen.[4][5] The netsniff-ng toolkit does not depend on the libpcap library. Moreover, no special operating system patches are needed to run the toolkit. netsniff-ng is free software and has been released under the terms of the GNU General Public License version 2.

The toolkit currently consists of a network analyzer, packet capturer and replayer, a wire-rate traffic generator, an encrypted multiuser IP tunnel, a Berkeley Packet Filter compiler, networking statistic tools, an autonomous system trace route and more:[6]

  • netsniff-ng, a zero-copy analyzer, packet capturer and replayer, itself supporting the pcap file format
  • trafgen, a zero-copy wire-rate traffic generator
  • mausezahn, a packet generator and analyzer for HW/SW appliances with a Cisco-CLI
  • bpfc, a Berkeley Packet Filter compiler
  • ifpps, a top-like kernel networking statistics tool
  • flowtop, a top-like netfilter connection tracking tool with Geo-IP information
  • curvetun, a lightweight multiuser IP tunnel based on elliptic curve cryptography
  • astraceroute, an autonomous system trace route utility with Geo-IP information

Distribution specific packages are available for all major operating system distributions such as Debian[7] or Fedora Linux. It has also been added to Xplico's Network Forensic Toolkit,[8] GRML Linux, SecurityOnion,[9] and to the Network Security Toolkit.[10] The netsniff-ng toolkit is also used in academia.[11][12]

Basic commands working in netsniff-ng

In these examples, it is assumed that eth0 is the used network interface. Programs in the netsniff-ng suite accept long options, e.g., --in ( -i ), --out ( -o ), --dev ( -d ).

  • For geographical AS TCP SYN probe trace route to a website:
astraceroute -d eth0 -N -S -H <host e.g., netsniff-ng.org>
ifpps -d eth0 -p
  • For high-speed network packet traffic generation, trafgen.txf is the packet configuration:
trafgen -d eth0 -c trafgen.txf
bpfc fubar.bpf
  • For live-tracking of current TCP connections (including protocol, application name, city and country of source and destination):
flowtop
  • For efficiently dumping network traffic in a pcap file:
netsniff-ng -i eth0 -o dump.pcap -s -b 0

Platforms

The netsniff-ng toolkit currently runs only on Linux systems. Its developers decline a port to Microsoft Windows.[13]

See also

References

  1. "netsniff-ng license". https://github.com/borkmann/netsniff-ng/blob/master/COPYING. 
  2. "Description of the Linux packet-mmap mechanism". https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/tree/Documentation/networking/packet_mmap.txt. Retrieved 6 November 2011. 
  3. "netsniff-ng Homepage, Abstract, Zero-copy". http://netsniff-ng.org. Retrieved 6 November 2011. 
  4. "Network Security Toolkit Article about trafgen's performance capabilities". http://wiki.networksecuritytoolkit.org/nstwiki/index.php/LAN_Ethernet_Maximum_Rates,_Generation,_Capturing_%26_Monitoring. Retrieved 6 November 2011. 
  5. "Developer's Blog about trafgen's Performance". 16 October 2011. http://blog.cryptoism.org/1318763742.html. Retrieved 6 November 2011. 
  6. "netsniff-ng README". https://github.com/netsniff-ng/netsniff-ng/blob/master/README. Retrieved 16 February 2018. 
  7. "netsnif-ng in Debian". http://packages.debian.org/testing/netsniff-ng. 
  8. "Xplico support of netsniff-ng". http://www.xplico.org/archives/944. Retrieved 6 November 2011. 
  9. "Security Onion 12.04 RC1 Available Now!". http://securityonion.blogspot.com/2012/12/security-onion-1204-rc1-available-now.html. Retrieved 16 December 2012. 
  10. "Network Security Toolkit adds netsniff-ng". http://www.networksecuritytoolkit.org/nstpro/news/news.html. Retrieved 6 November 2011. 
  11. "netsniff-ng's trafgen at University of Napoli Federico II". http://www.grid.unina.it/software/ITG/link.php. Retrieved 7 November 2011. 
  12. "netsniff-ng's trafgen at Columbia University". https://www.cs.columbia.edu/~hgs/internet/traffic-generator.html. Retrieved 7 November 2011. 
  13. "netsniff-ng FAQ declining a port to Microsoft Windows". http://netsniff-ng.org/faq.html#d14. Retrieved 21 June 2015. 

External links