Merge branch 'vendor/OPENSSL'
[dragonfly.git] / usr.bin / netstat / netstat.1
1 .\" Copyright (c) 1983, 1990, 1992, 1993
2 .\"     The Regents of the University of California.  All rights reserved.
3 .\"
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
6 .\" are met:
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\"    notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\"    notice, this list of conditions and the following disclaimer in the
11 .\"    documentation and/or other materials provided with the distribution.
12 .\" 3. Neither the name of the University nor the names of its contributors
13 .\"    may be used to endorse or promote products derived from this software
14 .\"    without specific prior written permission.
15 .\"
16 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
17 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
20 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26 .\" SUCH DAMAGE.
27 .\"
28 .\"     @(#)netstat.1   8.8 (Berkeley) 4/18/94
29 .\" $FreeBSD: src/usr.bin/netstat/netstat.1,v 1.22.2.13 2003/05/03 22:10:02 keramida Exp $
30 .\"
31 .Dd November 23, 2014
32 .Dt NETSTAT 1
33 .Os
34 .Sh NAME
35 .Nm netstat
36 .Nd show network status
37 .Sh DESCRIPTION
38 The
39 .Nm
40 command symbolically displays the contents of various network-related
41 data structures.
42 There are a number of output formats,
43 depending on the options for the information presented.
44 .Bl -tag -width indent
45 .It Xo
46 .Bk -words
47 .Nm
48 .Op Fl AaLlnPSW
49 .Op Fl c Ar cpu
50 .Op Fl f Ar protocol_family | Fl p Ar protocol
51 .Op Fl M Ar core
52 .Op Fl N Ar system
53 .Ek
54 .Xc
55 Display a list of active sockets
56 (protocol control blocks)
57 for each network protocol,
58 for a particular
59 .Ar protocol_family ,
60 or for a single
61 .Ar protocol .
62 If
63 .Fl A
64 is also present,
65 show the address of a protocol control block (PCB)
66 associated with a socket; used for debugging.
67 If
68 .Fl a
69 is also present,
70 show the state of all sockets;
71 normally sockets used by server processes are not shown.
72 If
73 .Fl L
74 is also present,
75 show the size of the various listen queues.
76 The first count shows the number of unaccepted connections,
77 the second count shows the amount of unaccepted incomplete connections,
78 and the third count is the maximum number of queued connections.
79 If
80 .Fl S
81 is also present,
82 show network addresses as numbers (as with
83 .Fl n )
84 but show ports symbolically.
85 .It Xo
86 .Bk -words
87 .Nm
88 .Fl i | I Ar interface
89 .Op Fl aBbdhnt
90 .Op Fl f Ar address_family
91 .Op Fl M Ar core
92 .Op Fl N Ar system
93 .Ek
94 .Xc
95 Show the state of all network interfaces or a single
96 .Ar interface
97 which have been auto-configured
98 (interfaces statically configured into a system, but not
99 located at boot time are not shown).
100 An asterisk
101 .Pq Dq Li *
102 after an interface name indicates that the interface is
103 .Dq down .
104 If
105 .Fl a
106 is also present, multicast addresses currently in use are shown
107 for each Ethernet interface and for each IP interface address.
108 Multicast addresses are shown on separate lines following the interface
109 address with which they are associated.
110 If
111 .Fl b
112 is also present, show the number of bytes in and out.
113 If
114 .Fl d
115 is also present, show the number of dropped packets.
116 If
117 .Fl h
118 is also present, print all counters in human readable form.
119 If
120 .Fl t
121 is also present, show the contents of watchdog timers.
122 If
123 .Fl B
124 is also present, the maximum buffer sizes are displayed instead
125 of current buffer usage.
126 .It Xo
127 .Bk -words
128 .Nm
129 .Fl w Ar wait
130 .Op Fl I Ar interface
131 .Op Fl dh
132 .Op Fl M Ar core
133 .Op Fl N Ar system
134 .Ek
135 .Xc
136 At intervals of
137 .Ar wait
138 seconds,
139 display the information regarding packet
140 traffic on all configured network interfaces
141 or a single
142 .Ar interface .
143 If
144 .Fl d
145 is also present, show the number of dropped packets.
146 If
147 .Fl h
148 is also present, print counters in human readable form.
149 .It Xo
150 .Bk -words
151 .Nm
152 .Fl s Op Fl s
153 .Op Fl z
154 .Op Fl f Ar protocol_family | Fl p Ar protocol
155 .Op Fl M Ar core
156 .Op Fl N Ar system
157 .Ek
158 .Xc
159 Display system-wide statistics for each network protocol,
160 for a particular
161 .Ar protocol_family ,
162 or for a single
163 .Ar protocol .
164 If
165 .Fl s
166 is repeated, counters with a value of zero are suppressed.
167 If
168 .Fl z
169 is also present, reset statistic counters after displaying them.
170 .It Xo
171 .Bk -words
172 .Nm
173 .Fl i | I Ar interface Fl s
174 .Op Fl f Ar protocol_family | Fl p Ar protocol
175 .Op Fl M Ar core
176 .Op Fl N Ar system
177 .Ek
178 .Xc
179 Display per-interface statistics for each network protocol,
180 for a particular
181 .Ar protocol_family ,
182 or for a single
183 .Ar protocol .
184 .It Xo
185 .Bk -words
186 .Nm
187 .Fl m
188 .Op Fl M Ar core
189 .Op Fl N Ar system
190 .Ek
191 .Xc
192 Show statistics recorded by the memory management routines
193 .Pq Xr mbuf 9 .
194 The network manages a private pool of memory buffers.
195 .It Xo
196 .Bk -words
197 .Nm
198 .Fl r
199 .Op Fl AalnW
200 .Op Fl f Ar address_family
201 .Op Fl M Ar core
202 .Op Fl N Ar system
203 .Ek
204 .Xc
205 Display the contents of all routing tables,
206 or a routing table for a particular
207 .Ar address_family .
208 If
209 .Fl A
210 is also present,
211 show the contents of the internal Patricia tree
212 structures; used for debugging.
213 If
214 .Fl a
215 is also present,
216 show protocol-cloned routes
217 (routes generated by an
218 .Dv RTF_PRCLONING
219 parent route);
220 normally these routes are not shown.
221 When
222 .Fl W
223 or
224 .Fl l
225 is also present,
226 show the path MTU,
227 MSL,
228 initial window size
229 and MPLS label operations
230 for each route.
231 .It Xo
232 .Bk -words
233 .Nm
234 .Fl rs
235 .Op Fl s
236 .Op Fl M Ar core
237 .Op Fl N Ar system
238 .Ek
239 .Xc
240 Display routing statistics.
241 If
242 .Fl s
243 is repeated, counters with a value of zero are suppressed.
244 .It Xo
245 .Bk -words
246 .Nm
247 .Fl g
248 .Op Fl lW
249 .Op Fl f Ar address_family
250 .Op Fl M Ar core
251 .Op Fl N Ar system
252 .Ek
253 .Xc
254 Show information related to multicast (group address) routing.
255 By default, show the IP Multicast virtual-interface and routing tables.
256 .It Xo
257 .Bk -words
258 .Nm
259 .Fl gs
260 .Op Fl s
261 .Op Fl f Ar address_family
262 .Op Fl M Ar core
263 .Op Fl N Ar system
264 .Ek
265 .Xc
266 Show multicast routing statistics.
267 If
268 .Fl s
269 is repeated, counters with a value of zero are suppressed.
270 .El
271 .Pp
272 Some options have the general meaning:
273 .Bl -tag -width flag
274 .It Fl c Ar cpu
275 On SMP systems the route table is replicated.  This option allows
276 the route table for a specific cpu to be accessed and exists
277 primarily for debugging purposes.
278 .It Fl f Ar address_family , Fl f Ar protocol_family , Fl p Ar protocol
279 Limit display to those records
280 of the specified
281 .Ar address_family ,
282 .Ar protocol_family
283 or a single
284 .Ar protocol .
285 The following address families, protocol families and protocols are recognized:
286 .Pp
287 .Bl -tag -width ".Cm netgraph , ng Pq Dv AF_NETGRAPH" -compact
288 .It Em Family
289 .Em Protocols
290 .It Cm inet Pq Dv AF_INET PF_INET
291 .Cm carp , divert , icmp , igmp , ip , ipsec , pim , tcp , udp
292 .It Cm inet6 Pq Dv AF_INET6 PF_INET6
293 .Cm carp , icmp6 , ip6 , ipsec6 , rip6 , tcp , udp
294 .It Cm pfkey Pq Dv AF_KEY PF_KEY
295 .Cm pfkey
296 .It Cm netgraph , ng Pq Dv AF_NETGRAPH PF_NETGRAPH
297 .Cm ctrl , data
298 .\".It Cm iso Pq Dv AF_ISO PF_ISO
299 .\".Cm clnp , cltp , esis , tp
300 .It Cm unix Pq Dv AF_UNIX PF_UNIX
301 .It Cm link Pq Dv AF_LINK PF_LINK
302 .It Cm mpls Pq Dv AF_MPLS PF_MPLS
303 .El
304 .Pp
305 The program will complain if
306 .Ar protocol
307 is unknown or if there is no statistics routine for it.
308 .It Fl l
309 The
310 .Fl l
311 option is equivalent to
312 .Fl W .
313 .It Fl M
314 Extract values associated with the name list from the specified core
315 instead of the default
316 .Pa /dev/kmem .
317 .It Fl N
318 Extract the name list from the specified system instead of the default,
319 which is the kernel image the system has booted from.
320 .It Fl n
321 Show network addresses and ports as numbers.
322 Normally
323 .Nm
324 attempts to resolve addresses and ports,
325 and display them symbolically.
326 .It Fl P
327 Display additional protocol-specific information.  For TCP the current
328 transmit window, unacked sequence space, and RTT is displayed.
329 .It Fl W
330 Wide display.
331 In certain displays, add columns and avoid truncating
332 addresses even if this causes some fields to overflow.
333 .El
334 .Pp
335 The default display, for active sockets, shows the local
336 and remote addresses, send and receive queue sizes (in bytes), protocol,
337 and the internal state of the protocol.
338 Address formats are of the form
339 .Dq host.port
340 or
341 .Dq network.port
342 if a socket's address specifies a network but no specific host address.
343 When known, the host and network addresses are displayed symbolically
344 according to the databases
345 .Xr hosts 5
346 and
347 .Xr networks 5 ,
348 respectively.
349 If a symbolic name for an address is unknown, or if
350 the
351 .Fl n
352 option is specified, the address is printed numerically, according
353 to the address family.
354 For more information regarding
355 the Internet IPv4
356 .Dq dot format ,
357 refer to
358 .Xr inet 3 .
359 Unspecified,
360 or
361 .Dq wildcard ,
362 addresses and ports appear as
363 .Dq Li * .
364 .Pp
365 The interface display provides a table of cumulative
366 statistics regarding packets transferred, errors, and collisions.
367 The network addresses of the interface
368 and the maximum transmission unit
369 .Pq Dq mtu
370 are also displayed.
371 .Pp
372 The routing table display indicates the available routes and their status.
373 Each route consists of a destination host or network, and a gateway to use
374 in forwarding packets.
375 The flags field shows a collection of information about the route stored
376 as binary choices.
377 The individual flags are discussed in more detail in the
378 .Xr route 8
379 and
380 .Xr route 4
381 manual pages.
382 The mapping between letters and flags is:
383 .Bl -column ".Li W" ".Dv RTF_WASCLONED"
384 .It Li 1 Ta Dv RTF_PROTO1 Ta "Protocol specific routing flag #1"
385 .It Li 2 Ta Dv RTF_PROTO2 Ta "Protocol specific routing flag #2"
386 .It Li 3 Ta Dv RTF_PROTO3 Ta "Protocol specific routing flag #3"
387 .It Li B Ta Dv RTF_BLACKHOLE Ta "Just discard pkts (during updates)"
388 .It Li b Ta Dv RTF_BROADCAST Ta "The route represents a broadcast address"
389 .It Li C Ta Dv RTF_CLONING Ta "Generate new routes on use"
390 .It Li c Ta Dv RTF_PRCLONING Ta "Protocol-specified generate new routes on use"
391 .It Li D Ta Dv RTF_DYNAMIC Ta "Created dynamically (by redirect)"
392 .It Li G Ta Dv RTF_GATEWAY Ta "Destination requires forwarding by intermediary"
393 .It Li H Ta Dv RTF_HOST Ta "Host entry (net otherwise)"
394 .It Li L Ta Dv RTF_LLINFO Ta "Valid protocol to link address translation"
395 .It Li M Ta Dv RTF_MODIFIED Ta "Modified dynamically (by redirect)"
396 .It Li m Ta Dv RTF_MPLSOPS Ta "MPLS label operations"
397 .It Li R Ta Dv RTF_REJECT Ta "Host or net unreachable"
398 .It Li S Ta Dv RTF_STATIC Ta "Manually added"
399 .It Li U Ta Dv RTF_UP Ta "Route usable"
400 .It Li W Ta Dv RTF_WASCLONED Ta "Route was generated as a result of cloning"
401 .It Li X Ta Dv RTF_XRESOLVE Ta "External daemon translates proto to link address"
402 .El
403 .Pp
404 Direct routes are created for each
405 interface attached to the local host;
406 the gateway field for such entries shows the address of the outgoing interface.
407 The refcnt field gives the
408 current number of active uses of the route.
409 Connection oriented
410 protocols normally hold on to a single route for the duration of
411 a connection while connectionless protocols obtain a route while sending
412 to the same destination.
413 The use field provides a count of the number of packets
414 sent using that route.
415 The interface entry indicates the network interface utilized for the route.
416 .Pp
417 When
418 .Nm
419 is invoked with the
420 .Fl w
421 option and a
422 .Ar wait
423 interval argument, it displays a running count of statistics related to
424 network interfaces.
425 An obsolescent version of this option used a numeric parameter
426 with no option, and is currently supported for backward compatibility.
427 By default, this display summarizes information for all interfaces.
428 Information for a specific interface may be displayed with the
429 .Fl I
430 option.
431 .Sh SEE ALSO
432 .Xr fstat 1 ,
433 .Xr nfsstat 1 ,
434 .Xr ps 1 ,
435 .Xr sockstat 1 ,
436 .Xr carp 4 ,
437 .Xr inet 4 ,
438 .Xr inet6 4 ,
439 .Xr route 4 ,
440 .Xr unix 4 ,
441 .Xr hosts 5 ,
442 .Xr networks 5 ,
443 .Xr protocols 5 ,
444 .Xr services 5 ,
445 .Xr iostat 8 ,
446 .Xr route 8 ,
447 .Xr trpt 8 ,
448 .Xr vmstat 8 ,
449 .Xr mbuf 9
450 .Sh HISTORY
451 The
452 .Nm
453 command appeared in
454 .Bx 4.2 .
455 .Pp
456 IPv6 support was added by WIDE/KAME project.
457 .Sh BUGS
458 The notion of errors is ill-defined.