b377c2a954afe85b4d3b1a5678d45ac1f2572736
[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 July 12, 2008
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 aBbdnt
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 t
118 is also present, show the contents of watchdog timers.
119 If
120 .Fl B
121 is also present, the maximum buffer sizes are displayed instead
122 of current buffer usage.
123 .It Xo
124 .Bk -words
125 .Nm
126 .Fl w Ar wait
127 .Op Fl I Ar interface
128 .Op Fl d
129 .Op Fl M Ar core
130 .Op Fl N Ar system
131 .Ek
132 .Xc
133 At intervals of
134 .Ar wait
135 seconds,
136 display the information regarding packet
137 traffic on all configured network interfaces
138 or a single
139 .Ar interface .
140 If
141 .Fl d
142 is also present, show the number of dropped packets.
143 .It Xo
144 .Bk -words
145 .Nm
146 .Fl s Op Fl s
147 .Op Fl z
148 .Op Fl f Ar protocol_family | Fl p Ar protocol
149 .Op Fl M Ar core
150 .Op Fl N Ar system
151 .Ek
152 .Xc
153 Display system-wide statistics for each network protocol,
154 for a particular
155 .Ar protocol_family ,
156 or for a single
157 .Ar protocol .
158 If
159 .Fl s
160 is repeated, counters with a value of zero are suppressed.
161 If
162 .Fl z
163 is also present, reset statistic counters after displaying them.
164 .It Xo
165 .Bk -words
166 .Nm
167 .Fl i | I Ar interface Fl s
168 .Op Fl f Ar protocol_family | Fl p Ar protocol
169 .Op Fl M Ar core
170 .Op Fl N Ar system
171 .Ek
172 .Xc
173 Display per-interface statistics for each network protocol,
174 for a particular
175 .Ar protocol_family ,
176 or for a single
177 .Ar protocol .
178 .It Xo
179 .Bk -words
180 .Nm
181 .Fl m
182 .Op Fl M Ar core
183 .Op Fl N Ar system
184 .Ek
185 .Xc
186 Show statistics recorded by the memory management routines
187 .Pq Xr mbuf 9 .
188 The network manages a private pool of memory buffers.
189 .It Xo
190 .Bk -words
191 .Nm
192 .Fl r
193 .Op Fl AalnW
194 .Op Fl f Ar address_family
195 .Op Fl M Ar core
196 .Op Fl N Ar system
197 .Ek
198 .Xc
199 Display the contents of all routing tables,
200 or a routing table for a particular
201 .Ar address_family .
202 If
203 .Fl A
204 is also present,
205 show the contents of the internal Patricia tree
206 structures; used for debugging.
207 If
208 .Fl a
209 is also present,
210 show protocol-cloned routes
211 (routes generated by an
212 .Dv RTF_PRCLONING
213 parent route);
214 normally these routes are not shown.
215 When
216 .Fl W
217 or
218 .Fl l
219 is also present,
220 show the path MTU,
221 MSL,
222 initial window size
223 and MPLS label operations
224 for each route.
225 .It Xo
226 .Bk -words
227 .Nm
228 .Fl rs
229 .Op Fl s
230 .Op Fl M Ar core
231 .Op Fl N Ar system
232 .Ek
233 .Xc
234 Display routing statistics.
235 If
236 .Fl s
237 is repeated, counters with a value of zero are suppressed.
238 .It Xo
239 .Bk -words
240 .Nm
241 .Fl g
242 .Op Fl lW
243 .Op Fl f Ar address_family
244 .Op Fl M Ar core
245 .Op Fl N Ar system
246 .Ek
247 .Xc
248 Show information related to multicast (group address) routing.
249 By default, show the IP Multicast virtual-interface and routing tables.
250 .It Xo
251 .Bk -words
252 .Nm
253 .Fl gs
254 .Op Fl s
255 .Op Fl f Ar address_family
256 .Op Fl M Ar core
257 .Op Fl N Ar system
258 .Ek
259 .Xc
260 Show multicast routing statistics.
261 If
262 .Fl s
263 is repeated, counters with a value of zero are suppressed.
264 .El
265 .Pp
266 Some options have the general meaning:
267 .Bl -tag -width flag
268 .It Fl c Ar cpu
269 On SMP systems the route table is replicated.  This option allows
270 the route table for a specific cpu to be accessed and exists
271 primarily for debugging purposes.
272 .It Fl f Ar address_family , Fl f Ar protocol_family , Fl p Ar protocol
273 Limit display to those records
274 of the specified
275 .Ar address_family ,
276 .Ar protocol_family
277 or a single
278 .Ar protocol .
279 The following address families, protocol families and protocols are recognized:
280 .Pp
281 .Bl -tag -width ".Cm netgraph , ng Pq Dv AF_NETGRAPH" -compact
282 .It Em Family
283 .Em Protocols
284 .It Cm inet Pq Dv AF_INET PF_INET
285 .Cm carp , divert , icmp , igmp , ip , ipsec , pim , tcp , udp
286 .It Cm inet6 Pq Dv AF_INET6 PF_INET6
287 .Cm carp , icmp6 , ip6 , ipsec6 , rip6 , tcp , udp
288 .It Cm pfkey Pq Dv AF_KEY PF_KEY
289 .Cm pfkey
290 .It Cm netgraph , ng Pq Dv AF_NETGRAPH PF_NETGRAPH
291 .Cm ctrl , data
292 .It Cm ipx Pq Dv AF_IPX PF_IPX
293 .Cm ipx , spx
294 .\".It Cm ns Pq Dv AF_NS PF_NS
295 .\".Cm idp , ns_err , spp
296 .\".It Cm iso Pq Dv AF_ISO PF_ISO
297 .\".Cm clnp , cltp , esis , tp
298 .It Cm unix Pq Dv AF_UNIX PF_UNIX
299 .It Cm link Pq Dv AF_LINK PF_LINK
300 .It Cm mpls Pq Dv AF_MPLS PF_MPLS
301 .El
302 .Pp
303 The program will complain if
304 .Ar protocol
305 is unknown or if there is no statistics routine for it.
306 .It Fl l
307 The
308 .Fl l
309 option is equivalent to
310 .Fl W .
311 .It Fl M
312 Extract values associated with the name list from the specified core
313 instead of the default
314 .Pa /dev/kmem .
315 .It Fl N
316 Extract the name list from the specified system instead of the default,
317 which is the kernel image the system has booted from.
318 .It Fl n
319 Show network addresses and ports as numbers.
320 Normally
321 .Nm
322 attempts to resolve addresses and ports,
323 and display them symbolically.
324 .It Fl P
325 Display additional protocol-specific information.  For TCP the current
326 transmit window, unacked sequence space, and RTT is displayed.
327 .It Fl W
328 Wide display.
329 In certain displays, add columns and avoid truncating
330 addresses even if this causes some fields to overflow.
331 .El
332 .Pp
333 The default display, for active sockets, shows the local
334 and remote addresses, send and receive queue sizes (in bytes), protocol,
335 and the internal state of the protocol.
336 Address formats are of the form
337 .Dq host.port
338 or
339 .Dq network.port
340 if a socket's address specifies a network but no specific host address.
341 When known, the host and network addresses are displayed symbolically
342 according to the databases
343 .Xr hosts 5
344 and
345 .Xr networks 5 ,
346 respectively.
347 If a symbolic name for an address is unknown, or if
348 the
349 .Fl n
350 option is specified, the address is printed numerically, according
351 to the address family.
352 For more information regarding
353 the Internet IPv4
354 .Dq dot format ,
355 refer to
356 .Xr inet 3 .
357 Unspecified,
358 or
359 .Dq wildcard ,
360 addresses and ports appear as
361 .Dq Li * .
362 .Pp
363 The interface display provides a table of cumulative
364 statistics regarding packets transferred, errors, and collisions.
365 The network addresses of the interface
366 and the maximum transmission unit
367 .Pq Dq mtu
368 are also displayed.
369 .Pp
370 The routing table display indicates the available routes and their status.
371 Each route consists of a destination host or network, and a gateway to use
372 in forwarding packets.
373 The flags field shows a collection of information about the route stored
374 as binary choices.
375 The individual flags are discussed in more detail in the
376 .Xr route 8
377 and
378 .Xr route 4
379 manual pages.
380 The mapping between letters and flags is:
381 .Bl -column ".Li W" ".Dv RTF_WASCLONED"
382 .It Li 1 Ta Dv RTF_PROTO1 Ta "Protocol specific routing flag #1"
383 .It Li 2 Ta Dv RTF_PROTO2 Ta "Protocol specific routing flag #2"
384 .It Li 3 Ta Dv RTF_PROTO3 Ta "Protocol specific routing flag #3"
385 .It Li B Ta Dv RTF_BLACKHOLE Ta "Just discard pkts (during updates)"
386 .It Li b Ta Dv RTF_BROADCAST Ta "The route represents a broadcast address"
387 .It Li C Ta Dv RTF_CLONING Ta "Generate new routes on use"
388 .It Li c Ta Dv RTF_PRCLONING Ta "Protocol-specified generate new routes on use"
389 .It Li D Ta Dv RTF_DYNAMIC Ta "Created dynamically (by redirect)"
390 .It Li G Ta Dv RTF_GATEWAY Ta "Destination requires forwarding by intermediary"
391 .It Li H Ta Dv RTF_HOST Ta "Host entry (net otherwise)"
392 .It Li L Ta Dv RTF_LLINFO Ta "Valid protocol to link address translation"
393 .It Li M Ta Dv RTF_MODIFIED Ta "Modified dynamically (by redirect)"
394 .It Li m Ta Dv RTF_MPLSOPS Ta "MPLS label operations"
395 .It Li R Ta Dv RTF_REJECT Ta "Host or net unreachable"
396 .It Li S Ta Dv RTF_STATIC Ta "Manually added"
397 .It Li U Ta Dv RTF_UP Ta "Route usable"
398 .It Li W Ta Dv RTF_WASCLONED Ta "Route was generated as a result of cloning"
399 .It Li X Ta Dv RTF_XRESOLVE Ta "External daemon translates proto to link address"
400 .El
401 .Pp
402 Direct routes are created for each
403 interface attached to the local host;
404 the gateway field for such entries shows the address of the outgoing interface.
405 The refcnt field gives the
406 current number of active uses of the route.
407 Connection oriented
408 protocols normally hold on to a single route for the duration of
409 a connection while connectionless protocols obtain a route while sending
410 to the same destination.
411 The use field provides a count of the number of packets
412 sent using that route.
413 The interface entry indicates the network interface utilized for the route.
414 .Pp
415 When
416 .Nm
417 is invoked with the
418 .Fl w
419 option and a
420 .Ar wait
421 interval argument, it displays a running count of statistics related to
422 network interfaces.
423 An obsolescent version of this option used a numeric parameter
424 with no option, and is currently supported for backward compatibility.
425 By default, this display summarizes information for all interfaces.
426 Information for a specific interface may be displayed with the
427 .Fl I
428 option.
429 .Sh SEE ALSO
430 .Xr fstat 1 ,
431 .Xr nfsstat 1 ,
432 .Xr ps 1 ,
433 .Xr sockstat 1 ,
434 .Xr carp 4 ,
435 .Xr inet 4 ,
436 .Xr inet6 4 ,
437 .Xr route 4 ,
438 .Xr unix 4 ,
439 .Xr hosts 5 ,
440 .Xr networks 5 ,
441 .Xr protocols 5 ,
442 .Xr services 5 ,
443 .Xr iostat 8 ,
444 .Xr route 8 ,
445 .Xr trpt 8 ,
446 .Xr vmstat 8 ,
447 .Xr mbuf 9
448 .Sh HISTORY
449 The
450 .Nm
451 command appeared in
452 .Bx 4.2 .
453 .Pp
454 IPv6 support was added by WIDE/KAME project.
455 .Sh BUGS
456 The notion of errors is ill-defined.