]> git.saurik.com Git - apple/network_cmds.git/blame_incremental - netstat.tproj/netstat.1
network_cmds-396.6.tar.gz
[apple/network_cmds.git] / netstat.tproj / netstat.1
... / ...
CommitLineData
1.\" Copyright (c) 2012 Apple Inc. All rights reserved.
2.\"
3.\" @APPLE_OSREFERENCE_LICENSE_HEADER_START@
4.\"
5.\" This file contains Original Code and/or Modifications of Original Code
6.\" as defined in and that are subject to the Apple Public Source License
7.\" Version 2.0 (the 'License'). You may not use this file except in
8.\" compliance with the License. The rights granted to you under the License
9.\" may not be used to create, or enable the creation or redistribution of,
10.\" unlawful or unlicensed copies of an Apple operating system, or to
11.\" circumvent, violate, or enable the circumvention or violation of, any
12.\" terms of an Apple operating system software license agreement.
13.\"
14.\" Please obtain a copy of the License at
15.\" http://www.opensource.apple.com/apsl/ and read it before using this file.
16.\"
17.\" The Original Code and all software distributed under the License are
18.\" distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
19.\" EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
20.\" INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
21.\" FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
22.\" Please see the License for the specific language governing rights and
23.\" limitations under the License.
24.\"
25.\" @APPLE_OSREFERENCE_LICENSE_HEADER_END@
26.\"
27.\" Copyright (c) 1983, 1990, 1992, 1993
28.\" The Regents of the University of California. All rights reserved.
29.\"
30.\" Redistribution and use in source and binary forms, with or without
31.\" modification, are permitted provided that the following conditions
32.\" are met:
33.\" 1. Redistributions of source code must retain the above copyright
34.\" notice, this list of conditions and the following disclaimer.
35.\" 2. Redistributions in binary form must reproduce the above copyright
36.\" notice, this list of conditions and the following disclaimer in the
37.\" documentation and/or other materials provided with the distribution.
38.\" 3. All advertising materials mentioning features or use of this software
39.\" must display the following acknowledgement:
40.\" This product includes software developed by the University of
41.\" California, Berkeley and its contributors.
42.\" 4. Neither the name of the University nor the names of its contributors
43.\" may be used to endorse or promote products derived from this software
44.\" without specific prior written permission.
45.\"
46.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
47.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
48.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
49.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
50.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
51.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
52.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
53.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
54.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
55.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
56.\" SUCH DAMAGE.
57.\"
58.\" @(#)netstat.1 8.8 (Berkeley) 4/18/94
59.\" $FreeBSD: src/usr.bin/netstat/netstat.1,v 1.22.2.7 2001/08/10 09:07:09 ru Exp $
60.\"
61.Dd June 15, 2001
62.Dt NETSTAT 1
63.Os Darwin
64.Sh NAME
65.Nm netstat
66.Nd show network status
67.Sh SYNOPSIS
68.Nm
69.Op Fl AaLlnW
70.Op Fl f Ar address_family | Fl p Ar protocol
71.Nm
72.Op Fl gilns
73.Op Fl v
74.Op Fl f Ar address_family
75.Op Fl I Ar interface
76.Nm
77.Fl i | I Ar interface
78.Op Fl w Ar wait
79.Op Fl c Ar queue
80.Op Fl abdgqRt
81.Nm
82.Fl s Op Fl s
83.Op Fl f Ar address_family | Fl p Ar protocol
84.Op Fl w Ar wait
85.Nm
86.Fl i | I Ar interface Fl s
87.Op Fl f Ar address_family | Fl p Ar protocol
88.Nm
89.Fl m
90.Op Fl m
91.Nm
92.Fl r
93.Op Fl Aaln
94.Op Fl f Ar address_family
95.Nm
96.Fl rs
97.Op Fl s
98.\"-----------------------------------------------------------------------------------------
99.Sh DESCRIPTION
100.\"-----------------------------------------------------------------------------------------
101The
102.Nm
103command symbolically displays the contents of various network-related data structures.
104There are a number of output formats, depending on the options for the information presented.
105The first form of the command displays a list of active sockets for each protocol.
106The second form presents the contents of one of the other network data structures according
107to the option selected. Using the third form, with a
108.Ar wait
109interval specified,
110.Nm
111will continuously display the information regarding packet traffic on the configured network
112interfaces. The fourth form displays statistics for the specified protocol or address family. If a
113.Ar wait
114interval is specified, the protocol information over the last interval seconds will be displayed.
115The fifth form displays per-interface statistics for the specified protocol or address family.
116The sixth form displays
117.Xr mbuf 9
118statistics. The seventh form displays routing table for the specified address family. The
119eighth form displays routing statistics.
120.Pp
121The options have the following meaning:
122.Bl -tag -width flag
123.It Fl A
124With the default display, show the address of any protocol control blocks associated with
125sockets and the flow hash; used for debugging.
126.It Fl a
127With the default display, show the state of all sockets; normally sockets used by server
128processes are not shown. With the routing table display (option
129.Fl r ,
130as described below), show protocol-cloned routes (routes generated by a
131.Dv RTF_PRCLONING
132parent route); normally these routes are not shown.
133.It Fl b
134With the interface display (option
135.Fl i ,
136as described below), show the number of bytes in and out.
137.It Fl c Ar queue
138With the queue statistics (option
139.Fl q ,
140as described below), show only those for the specified
141.Ar queue .
142.It Fl d
143With either interface display (option
144.Fl i
145or an interval, as described below), show the number of dropped packets.
146.It Fl f Ar address_family
147Limit statistics or address control block reports to those of the specified
148.Ar address family .
149The following address families are recognized:
150.Ar inet ,
151for
152.Dv AF_INET ,
153.Ar inet6 ,
154for
155.Dv AF_INET6
156and
157.Ar unix ,
158for
159.Dv AF_UNIX .
160.It Fl g
161Show information related to multicast (group address) membership. If the
162.Fl s
163option is also present, show extended interface group management statistics. If the
164.Fl v
165option is specified, show link-layer memberships; they are suppressed by default.
166Source lists for each group will also be printed. Specifiying
167.Fl v
168twice will print the control plane timers for each interface and the source list counters
169for each group. If the
170.Fl i
171is specified, only that interface will be shown. If the
172.Fl f
173is specified, only information for the address family will be displayed.
174.It Fl I Ar interface
175Show information about the specified interface; used with a
176.Ar wait
177interval as described below.
178If the
179.Fl s
180option is present, show per-interface protocol statistics on the
181.Ar interface
182for the specified
183.Ar address_family
184or
185.Ar protocol ,
186or for all protocol families.
187.It Fl i
188Show the state of interfaces which have been auto-configured (interfaces statically
189configured into a system, but not located at boot time are not shown). If the
190.Fl a
191options is also present, multicast addresses currently in use are shown for each
192Ethernet interface and for each IP interface address. Multicast addresses are shown
193on separate lines following the interface address with which they are associated.
194If the
195.Fl s
196option is present, show per-interface statistics on all interfaces for the specified
197.Ar address_family
198or
199.Ar protocol ,
200or for all protocol families.
201.It Fl L
202Show the size of the various listen queues. The first count shows the number of
203unaccepted connections. The second count shows the amount of unaccepted incomplete
204connections. The third count is the maximum number of queued connections.
205.It Fl l
206Print full IPv6 address.
207.It Fl m
208Show statistics recorded by the memory management routines (the network stack manages a private pool of memory buffers). More detailed information about the buffers, which includes their cache related statistics, can be obtained by using
209.Fl mm
210or
211.Fl m
212.Fl m
213option.
214.It Fl n
215Show network addresses as numbers (normally
216.Nm
217interprets addresses and attempts to display them symbolically). This option may be
218used with any of the display formats.
219.It Fl p Ar protocol
220Show statistics about
221.Ar protocol ,
222which is either a well-known name for a protocol or an alias for it. Some protocol
223names and aliases are listed in the file
224.Pa /etc/protocols .
225The special protocol name
226.Dq bdg
227is used to show bridging statistics. A null response typically means that there are
228no interesting numbers to report. The program will complain if
229.Ar protocol
230is unknown or if there is no statistics routine for it.
231.It Fl q
232Show network interface send queue statistics. By default all queues are displayed, unless
233specified with
234.Fl c .
235This option requires specifying an interface with
236.Fl I
237option. More detailed information about the queues, which includes their queueing algorithm related statistics, can be obtained by using
238.Fl qq
239or
240.Fl q
241.Fl q
242option.
243.It Fl r
244Show the routing tables. Use with
245.Fl a
246to show protocol-cloned routes. When
247.Fl s
248is also present, show routing statistics instead. When
249.Fl l
250is also present,
251.Nm
252assumes more columns are there and the maximum transmission unit
253.Pq Dq mtu
254are also displayed.
255.It Fl R
256Show reachability information. Use with
257.Fl i
258to show link-layer reachability information for a given interface.
259.It Fl s
260Show per-protocol statistics. If this option is repeated, counters with a value of
261zero are suppressed.
262.It Fl v
263Increase verbosity level.
264.It Fl W
265In certain displays, avoid truncating addresses even if this causes some fields to
266overflow.
267.It Fl w Ar wait
268Show network interface or protocol statistics at intervals of
269.Ar wait
270seconds.
271.It Fl x
272Show extended link-layer reachability information in addition to that shown by
273the
274.Fl R
275flag.
276.El
277.Pp
278.\"-------------------------------------------------------------------------------
279.Sh OUTPUT
280.\"-------------------------------------------------------------------------------
281The default display, for active sockets, shows the local and remote addresses,
282send and receive queue sizes (in bytes), protocol, and the internal state of
283the protocol. Address formats are of the form
284.Dq host.port
285or
286.Dq network.port
287if a socket's address specifies a network but no specific host address.
288If known, the host and network addresses are displayed symbolically
289according to the databases
290.Pa /etc/hosts
291and
292.Pa /etc/networks ,
293respectively. If a symbolic name for an address is unknown, or if the
294.Fl n
295option is specified, the address is printed numerically, according to the
296address family. For more information regarding the Internet
297.Dq dot format ,
298refer to
299.Xr inet 3 ) .
300Unspecified,
301or
302.Dq wildcard ,
303addresses and ports appear as
304.Dq * .
305.Pp
306Internet domain socket states:
307.Bl -column X LISTEN
308CLOSED: The socket is not in use.
309.Pp
310LISTEN: The socket is listening for incoming connections. Unconnected
311listening sockets like these are only displayed when using the -a option.
312.Pp
313SYN_SENT: The socket is actively trying to establish a connection to a
314remote peer.
315.Pp
316SYN_RCVD: The socket has passively received a connection request from a
317remote peer.
318.Pp
319ESTABLISHED: The socket has an established connection between a local
320application and a remote peer.
321.Pp
322CLOSE_WAIT: The socket connection has been closed by the remote peer,
323and the system is waiting for the local application to close its half of
324the connection.
325.Pp
326LAST_ACK: The socket connection has been closed by the remote peer, the
327local application has closed its half of the connection, and the system
328is waiting for the remote peer to acknowledge the close.
329.Pp
330FIN_WAIT_1: The socket connection has been closed by the local
331application, the remote peer has not yet acknowledged the close, and the
332system is waiting for it to close its half of the connection.
333.Pp
334FIN_WAIT_2: The socket connection has been closed by the local
335application, the remote peer has acknowledged the close, and the system
336is waiting for it to close its half of the connection.
337.Pp
338CLOSING: The socket connection has been closed by the local application
339and the remote peer simultaneously, and the remote peer has not yet
340acknowledged the close attempt of the local application.
341.Pp
342TIME_WAIT: The socket connection has been closed by the local
343application, the remote peer has closed its half of the connection, and
344the system is waiting to be sure that the remote peer received the last
345acknowledgement.
346.El
347.Pp
348The interface display provides a table of cumulative statistics regarding
349packets transferred, errors, and collisions. The network addresses of the
350interface and the maximum transmission unit
351.Pq Dq mtu
352are also displayed.
353.Pp
354The routing table display indicates the available routes and their status.
355Each route consists of a destination host or network and a gateway to use
356in forwarding packets. The flags field shows a collection of information
357about the route stored as binary choices. The individual flags are discussed
358in more detail in the
359.Xr route 8
360and
361.Xr route 4
362manual pages. The mapping between letters and flags is:
363.Bl -column XXXX RTF_BLACKHOLE
3641 RTF_PROTO1 Protocol specific routing flag #1
3652 RTF_PROTO2 Protocol specific routing flag #2
3663 RTF_PROTO3 Protocol specific routing flag #3
367B RTF_BLACKHOLE Just discard packets (during updates)
368b RTF_BROADCAST The route represents a broadcast address
369C RTF_CLONING Generate new routes on use
370c RTF_PRCLONING Protocol-specified generate new routes on use
371D RTF_DYNAMIC Created dynamically (by redirect)
372G RTF_GATEWAY Destination requires forwarding by intermediary
373H RTF_HOST Host entry (net otherwise)
374I RTF_IFSCOPE Route is associated with an interface scope
375i RTF_IFREF Route is holding a reference to the interface
376L RTF_LLINFO Valid protocol to link address translation
377M RTF_MODIFIED Modified dynamically (by redirect)
378m RTF_MULTICAST The route represents a multicast address
379R RTF_REJECT Host or net unreachable
380r RTF_ROUTER Host is a default router
381S RTF_STATIC Manually added
382U RTF_UP Route usable
383W RTF_WASCLONED Route was generated as a result of cloning
384X RTF_XRESOLVE External daemon translates proto to link address
385Y RTF_PROXY Proxying; cloned routes will not be scoped
386.El
387.Pp
388Direct routes are created for each interface attached to the local host;
389the gateway field for such entries shows the address of the outgoing
390interface. The refcnt field gives the current number of active uses of
391the route. Connection oriented protocols normally hold on to a single
392route for the duration of a connection while connectionless protocols
393obtain a route while sending to the same destination. The use field
394provides a count of the number of packets sent using that route. The
395interface entry indicates the network interface utilized for the route.
396A route which is marked with the RTF_IFSCOPE flag is instantiated for
397the corresponding interface. A cloning route which is marked with the
398RTF_PROXY flag will not generate new routes that are associated
399with its interface scope.
400.Pp
401When
402.Nm netstat
403is invoked with the
404.Fl w
405option and a
406.Ar wait
407interval argument, it displays a running count of statistics related to
408network interfaces or protocols. An obsolete version of this option used a numeric
409parameter with no option, and is currently supported for backward
410compatibility. By default, this display summarizes information for all
411interfaces. Information for a specific interface may be displayed with the
412.Fl I
413option.
414.Sh SEE ALSO
415.Xr fstat 1 ,
416.Xr nfsstat 1 ,
417.Xr ps 1 ,
418.Xr inet 4 ,
419.Xr unix 4 ,
420.Xr hosts 5 ,
421.Xr networks 5 ,
422.Xr protocols 5 ,
423.Xr route 8 ,
424.Xr services 5 ,
425.Xr iostat 8 ,
426.Xr trpt 8 ,
427.Xr vmstat 8
428.Sh HISTORY
429The
430.Nm netstat
431command appeared in
432.Bx 4.2 .
433.Pp
434IPv6 support was added by WIDE/KAME project.
435.Sh BUGS
436The notion of errors is ill-defined.