xmalloc: Make xfree a two part macro/inline
[netsniff-ng.git] / flowtop.8
blob5a4465dc4141f81682d2ca0b960e53c25248c066
1 .\" netsniff-ng - the packet sniffing beast
2 .\" Copyright 2013 Daniel Borkmann.
3 .\" Subject to the GPL, version 2.
5 .TH FLOWTOP 8 "03 March 2013" "Linux" "netsniff-ng toolkit"
6 .SH NAME
7 flowtop \- top-like netfilter TCP/UDP/SCTP/DCCP/ICMP(v6) flow tracking
9 .SH SYNOPSIS
11 \fB flowtop\fR { [\fIoptions\fR] }
13 .SH DESCRIPTION
15 flowtop is a top-like connection tracking tool that can run on an end host or
16 small home router. It is able to present TCP, UDP/UDP-lite, SCTP, DCCP, ICMP(v6)
17 flows that have been collected by the kernel's netfilter connection tracking
18 framework, thus no packet capturing in user space needs to be done.
20 flowtop is able to give you a quick overview of current connections on your
21 local system, e.g. for debugging purposes or to answer questions like:
23     * If you access website X, what other connections are being opened in
24 the background that I'm not aware of?
25     * What connections are active that pass ones router?
26     * I have this proprietary binary Y, where does it connect to?
27     * To which countries am I sending my data?
28     * Are there any suspicious background connections on my machine?
29     * How many connections has binary Z currently active?
31 The following information will be presented in flowtop's output:
33     * Application name and PID when run on local machine
34     * Reverse DNS for source and destination
35     * Geo-location information (country, city)
36     * Used protocols (IPv4, IPv6, TCP, UDP, SCTP, ICMP, ...)
37     * Flow port's service name heuristic
38     * Transport protocol state machine information
40 In order for flowtop to work, netfilter/iptables must be active resp. running
41 on your machine, thus kernel-side connection tracking is active.
43 flowtop's intention is just to get a quick look over your active connections.
44 If you want to have logging, have a look at netfilter's conntrack(8) tools
45 instead.
47 .SH OPTIONS
49 .SS -4, --ipv4
50 Display IPv4 flows. That's default when flowtop is started without
51 any arguments.
53 .SS -6, --ipv6
54 Display IPv6 flows. That's default when flowtop is started without
55 any arguments.
57 .SS -T, --tcp
58 Display TCP flows. That's default when flowtop is started without
59 any arguments.
61 .SS -U, --udp
62 Display UDP and UDP-lite flows.
64 .SS -D, --dccp
65 Display DCCP flows.
67 .SS -I, --icmp
68 Display ICMP version 4 and version 6 flows.
70 .SS -S, --sctp
71 Display SCTP flows.
73 .SS -s, --show-src
74 Also show source information of the flow, not only destination information.
76 .SS -u, --update
77 The built-in database update mechanism will be invoked to get Maxmind's
78 latest database. To configure search locations for databases, the file
79 /etc/netsniff-ng/geoip.conf contains possible addresses. Thus, to save
80 bandwidth or for mirroring Maxmind's databases (to bypass their traffic
81 limit policy), different hosts or IP addresses can be placed into geoip.conf,
82 separated by a newline.
84 .SS -v, --version
85 Show versioning information.
87 .SS -h, --help
88 Show user help.
90 .SH USAGE EXAMPLE
92 .SS flowtop
93 Default ncurses output for flowtop that tracks IPv4, IPv6 flows for TCP.
95 .SS flowtop -46UTDISs
96 This example enables maximum display options for flowtop.
98 .SH CONFIG FILES
100 Under /etc/netsniff-ng/ there are the following files stored that are used
101 by flowtop and can be extended if wished:
103     * tcp.conf - TCP port/services map
104     * udp.conf - UDP port/services map
105     * geoip.conf - GeoIP database mirrors
107 .SH BUGS
108 During fairly high till high connection tracking updates, flowtop's scrolling
109 can become shortly unresponsive. The right fix would be to replace flowtop's
110 connection management backend with a better design resp. locking approach.
111 Still on todo.
113 .SH LEGAL
114 flowtop is licensed under the GNU GPL version 2.0.
116 .SH HISTORY
117 .B flowtop
118 was originally written for the netsniff-ng toolkit by Daniel Borkmann. It
119 is currently maintained by Tobias Klauser <tklauser@distanz.ch> and Daniel
120 Borkmann <dborkma@tik.ee.ethz.ch>.
122 .SH SEE ALSO
123 .BR netsniff-ng (8),
124 .BR trafgen (8),
125 .BR mausezahn (8),
126 .BR ifpps (8),
127 .BR bpfc (8),
128 .BR astraceroute (8),
129 .BR curvetun (8)
131 .SH AUTHOR
132 Manpage was written by Daniel Borkmann.