Linux netstat命令介绍
关注Linux的系统状态,主要从两个角度出发,一个角度是系统正在运行什么服务(ps命令);另外一个就是有什么连接或服务可用(netstat命令)。netstat还可以显示ps无法显示的、从inetd或xinetd中运行的服务,比如telnet等。
1.功能与说明
netstat 用于显示linux中各种网络相关信息。如网络链接、路由表、接口状态链接、多播成员等等。
2.参数含义介绍
-a (all)显示所有选项,默认不显示LISTEN相关(本选项显示一个所有的有效连接信息列表,包括已建立的连接(ESTABLISHED),也包括监听连接请(LISTENING)的那些连接。)
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字。
-l 仅列出有在 Listen (监听) 的服務状态
-p 显示建立相关链接的程序名
-r 显示路由信息,路由表(本选项可以显示关于路由表的信息,类似于后面所讲使用route print命令时看到的 信息。除了显示有效路由外,还显示当前有效的连接。)
-e 显示扩展信息,例如uid等(本选项用于显示关于以太网的统计数据。它列出的项目包括传送的数据报的总字节数、错误数、删除数、数据报的数量和广播的数量。这些统计数据既有发送的数据报数量,也有接收的数据报数量。这个选项可以用来统计一些基本的网络流量)。)
-s 按各个协议进行统计(本选项能够按照各个协议分别显示其统计数据。如果我们的应用程序(如Web浏览器)运行速度比较慢,或者不能显示Web页之类的数据,那么我们就可以用本选项来查看一下所显示的信息。我们需要仔细查看统计数据的各行,找到出错的关键字,进而确定问题所在。)
-c 每隔一个固定时间,执行该netstat命令。
提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到
3.常用实例
3.1 列出所有端口
netstat -a

[root@zhz jiehun]# netstat -a|more
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 *:sunrpc *:* LISTEN
tcp 0 0 *:webcache *:* LISTEN
tcp 0 0 *:http *:* LISTEN
tcp 0 0 192.168.122.1:domain *:* LISTEN
tcp 0 0 localhost.localdomain:d-s-n *:* LISTEN
tcp 0 0 *:ssh *:* LISTEN
tcp 0 0 localhost.loc:simplifymedia *:* LISTEN

上述显示中,
"Proto"是 Protocol 的简称,它可以是 TCP 或 UDP。
"Recv-Q"和"Send-Q"指的是接收队列和发送队列,这些数字一般都应该是 0,如果不是,则表示软件包正在队列中堆积。这种情况只能在非常短的时间内存在,比如在 KMail 中单击检查邮件按钮时,有如下显示是正常现象:
tcp 0 593 192.168.1.5:34321 venus.euao.com:smtp ESTABLISHED
如果接收队列持续处于阻塞状态,那么很有可能受到了拒绝式服务的攻击。如果发送队列不能被快速清除,则可能是因为有一个应用程序不能将所要发送的东西传送完。
"Local Address" 指本机的 IP 和端口号。
"Foreign Address"指所要连接的主机名称和服务。
"State"指现在连接的状态。
三种常见的 TCP 状态如下所示:
a) LISTEN 等待接收连接;
b) ESTABLISHED 一个处于活跃状态的连接;
c) TIME_WAIT 一个刚被终止的连接。它只持续 1 至 2 分钟,然后就会变成 LISTEN 状态。
由于 UDP 是无状态的,所以其 State 栏总是空白。
持续获取有用信息
使用"netstat -a"命令,显示结果可能会有数百行。其实,在这些结果中可以忽略所有"Active Unix domain sockets"以后的内容。因为这些内容是本地内部进程之间的通信,而不是网络连接。使用以下命令可以避免显示无用信息:
$ netstat --inet -a
" netstat --inet -a" 命令的显示结果将只有网络连接,包括所有正处在"LISTEN"状态和"ESTABLISHED"状态的。需要特别注意的是,对于普通用户而言,一般不需要使用 telnet 或 SMTP 服务。因此需要将其关闭,以提高系统安全性;并且要重新配置启动文件,以保证它们不会在下次系统启动时自动重新启动。要想持续不断地查看随时都在更改的网络信息,可以使用 netstat 命令的"-c"参数,并且将结果存入文件中:
$ netstat --inet -a -c > netstat.txt
这时,查看 netstat.txt 文件即可检查邮件服务、Web 服务和 telnet 服务等的状态变化。
3.2 列出所有tcp端口

[root@zhz jiehun]# netstat -at|more
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 *:sunrpc *:* LISTEN
tcp 0 0 *:webcache *:* LISTEN
tcp 0 0 *:http *:* LISTEN
tcp 0 0 192.168.122.1:domain *:* LISTEN
tcp 0 0 localhost.localdomain:d-s-n *:* LISTEN
tcp 0 0 *:ssh *:* LISTEN
tcp 0 0 localhost.loc:simplifymedia *:* LISTEN

3.3 列出所有udp端口
netstat -au

[root@zhz jiehun]# netstat -au|more
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
udp 0 0 *:ideafarm-panic *:*
udp 0 0 *:47005 *:*
udp 0 0 localhost.loca:memcache *:*
udp 0 0 *:55276 *:*
udp 0 0 192.168.122.1:domain *:*
udp 0 0 *:bootps *:*
udp 0 0 *:bootpc *:*
udp 0 0 *:sunrpc *:*
udp 0 0 *:ipp *:*
udp 0 0 *:44236 *:*
udp 0 0 *:722 *:*

3.4 只显示正在处于监听状态的端口 netstat -l

[root@zhz jiehun]# netstat -l
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 *:sunrpc *:* LISTEN
tcp 0 0 *:webcache *:* LISTEN
tcp 0 0 *:http *:* LISTEN
tcp 0 0 192.168.122.1:domain *:* LISTEN
tcp 0 0 localhost.localdomain:d-s-n *:* LISTEN
tcp 0 0 *:ssh *:* LISTEN
tcp 0 0 localhost.loc:simplifymedia *:* LISTEN
tcp 0 0 localhost.localdomain:ipp *:* LISTEN
tcp 0 0 *:44343 *:* LISTEN
tcp 0 0 localhost.localdomain:smtp *:* LISTEN

3.5 只显示监听的tcp端口 netstat -lt

[root@zhz jiehun]# netstat -lt
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 *:sunrpc *:* LISTEN
tcp 0 0 *:webcache *:* LISTEN
tcp 0 0 *:http *:* LISTEN
tcp 0 0 192.168.122.1:domain *:* LISTEN
tcp 0 0 localhost.localdomain:d-s-n *:* LISTEN
tcp 0 0 *:ssh *:* LISTEN
tcp 0 0 localhost.loc:simplifymedia *:* LISTEN
tcp 0 0 localhost.localdomain:ipp *:* LISTEN
tcp 0 0 *:44343 *:* LISTEN
tcp 0 0 localhost.localdomain:smtp *:* LISTEN

3.6 只显示所有监听udp端口 netstat -lu

[root@zhz jiehun]# netstat -lu
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
udp 0 0 *:ideafarm-panic *:*
udp 0 0 *:47005 *:*
udp 0 0 *:47551 *:*
udp 0 0 localhost.loca:memcache *:*
udp 0 0 *:55276 *:*
udp 0 0 192.168.122.1:domain *:*
udp 0 0 *:bootps *:*
udp 0 0 *:bootpc *:*
udp 0 0 *:sunrpc *:*

3.7 只列出所有监听unix端口 netstat -lx

[root@zhz jiehun]# netstat -lx
Active UNIX domain sockets (only servers)
Proto RefCnt Flags Type State I-Node Path
unix 2 [ ACC ] STREAM LISTENING 21941 /tmp/.X11-unix/X0
unix 2 [ ACC ] STREAM LISTENING 34096 /tmp/orbit-haozheng/linc-cd2-0-5b33fa1ecf0c9
unix 2 [ ACC ] STREAM LISTENING 22263 @/tmp/gdm-greeter-cBlQsyRF
unix 2 [ ACC ] STREAM LISTENING 32728 /tmp/.ICE-unix/3103
unix 2 [ ACC ] STREAM LISTENING 36866 @/tmp/dbus-AcJrBlWF
unix 2 [ ACC ] STREAM LISTENING 20454 /tmp/mysql.sock

3.8 显示所有端口的统计信息 netstat -s

[root@zhz jiehun]# netstat -s
Ip:
1943780 total packets received
2 forwarded
0 incoming packets discarded
1769532 incoming packets delivered
1121573 requests sent out
132 outgoing packets dropped
45867 dropped because of missing route
Tcp:
64002 active connections openings
7632 passive connection openings
2309 failed connection attempts
498 connection resets received
8 connections established
1018564 segments received
1022700 segments send out
16835 segments retransmited
2 bad segments received.
552 resets sent
Udp:
133420 packets received
7845 packets to unknown port received.
0 packet receive errors
74841 packets sent
0 receive buffer errors
0 send buffer errors

3.9 显示所有tcp(netstat -st)或udp(netstat -su)的统计信息

[root@zhz jiehun]# netstat -su
IcmpMsg:
InType0: 11
InType3: 13506
OutType3: 13679
OutType8: 11
Udp:
133462 packets received
7869 packets to unknown port received.
0 packet receive errors
74888 packets sent
0 receive buffer errors
0 send buffer errors
UdpLite:
IpExt:
InNoRoutes: 991
InMcastPkts: 24308
OutMcastPkts: 2353
InBcastPkts: 630615
OutBcastPkts: 1546
InOctets: 755319900
OutOctets: 296705252
InMcastOctets: 2908748
OutMcastOctets: 93173
InBcastOctets: 99500419
OutBcastOctets: 299980

3.10 显示pid/进程名称 netstat -p -p可以与其他参数一起使用 比如 显示tcp的进程id信息
[root@zhz jiehun]# netstat -pt
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 192.168.0.52:44784 123.150.49.20:http FIN_WAIT2 4207/VirtualBox
tcp 0 0 192.168.0.52:46715 ie-in-f125.1e100.net:https ESTABLISHED 4207/VirtualBox
tcp 0 0 192.168.0.52:43415 geotrust-ocsp-mtv.veri:http FIN_WAIT2 4207/VirtualBox
3.11 在 netstat 输出中不显示主机,端口和用户名 (host, port or user)当你不想让主机,端口和用户名显示,使用 netstat -n,将会使用数字代替那些名称,同样可以加速输出,因为不用进行DNS轮询。netstat -ntpl 显示tcp的监听端口 不显示主机端口用户名 用数字代替

[root@zhz jiehun]# netstat -ptnl
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 971/rpcbind
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 1526/nginx: master
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1526/nginx: master
tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN 1248/dnsmasq
tcp 0 0 127.0.0.1:8086 0.0.0.0:* LISTEN 1553/python
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1163/sshd
tcp 0 0 127.0.0.1:8087 0.0.0.0:* LISTEN 1553/python
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 1140/cupsd
tcp 0 0 0.0.0.0:44343 0.0.0.0:* LISTEN 1151/rpc.statd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 18573/sendmail: acc
tcp 0 0 127.0.0.1:3002 0.0.0.0:* LISTEN 1004/ruby
tcp 0 0 0.0.0.0:8000 0.0.0.0:* LISTEN 1526/nginx: master

3.12 一秒钟输出一次tcp监听端口信息 netstat -ntplc

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 971/rpcbind
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 1526/nginx: master
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1526/nginx: master
tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN 1248/dnsmasq
tcp 0 0 127.0.0.1:8086 0.0.0.0:* LISTEN 1553/python
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1163/sshd

3.13 显示路由信息 netstat -r
[root@zhz jiehun]# netstat -r
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
default vrouter 0.0.0.0 UG 0 0 0 eth0
192.168.0.0 * 255.255.255.0 U 0 0 0 eth0
192.168.122.0 * 255.255.255.0 U 0 0 0 virb
3.14 显示网络接口列表,检查网卡 netstat -i
[root@zhz jiehun]# netstat -i
Kernel Interface table
Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0 1500 0 4943885 0 0 0 901773 0 0 0 BMRU
lo 16436 0 236931 0 0 0 236931 0 0 0 LRU
virbr0 1500 0 0 0 0 0 0 0 0 0 BMU
在"RX-OK (Received OK)"和"TX-OK (Transmitted OK)"栏应该看到很多数字,而其它地方的数字应该非常小。如果在"RX-ERR"或"TX-ERR"栏看到很多数据,则很有可能是网卡或网线出现了问题。
Linux netstat命令介绍的更多相关文章
- linux netstat 命令详解
linux netstat 命令详解 1.功能与说明 netstat 用于显示linux中各种网络相关信息.如网络链接 路由表 接口状态链接 多播成员等等. 2.参数含义介绍 -a (all)显示所 ...
- Linux netstat命令详解
Linux netstat命令详解 一 简介 Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多 ...
- Linux useradd 命令介绍
Linux useradd 命令介绍 作者: Alan Formy-duval 译者: LCTT Brooke Lau | 2020-01-06 22:58 使用 useradd 命令来添加用户(并且 ...
- Linux netstat命令具体解释
简单介绍 Netstat 命令用于显示各种网络相关信息,如网络连接,路由表.接口状态 (Interface Statistics).masquerade 连接,多播成员 (Multicast Memb ...
- [linux]netstat命令详解-显示linux中各种网络相关信息
1.功能与说明 netstat 用于显示linux中各种网络相关信息.如网络链接 路由表 接口状态链接 多播成员等等. 2.参数含义介绍 -a (all)显示所有选项,默认不显示LISTEN相关-t ...
- netstat命令介绍-要用熟
这篇文章写的不错: http://www.cnblogs.com/CheeseZH/p/5169498.html 关注Linux的系统状态,主要从两个角度出发,一个角度是系统正在运行什么服务(ps命令 ...
- (转)Linux netstat命令详解
简介 Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Member ...
- linux netstat 命令简解
Netstat 简介: Netstat是在内核中访问网络及相关信息的程序,它能提供TCP连接,TCP和UDP监听,进程内存管理的相关报告.常见参数-a (all)显示所有选项,默认不显示LISTEN相 ...
- linux netstat命令使用详解
快速应用 netstat -lnp | more 显示监听的端口 简介 Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),mas ...
随机推荐
- GPG入门教程
原文地址:http://www.ruanyifeng.com/blog/2013/07/gpg.html 作者: 阮一峰 日期: 2013年7月12日 前两篇文章,我介绍了RSA算法. 今天,就接着来 ...
- Linux isql
登录Linux环境,执行 isql -s 命令,进入isql命令页面 进入后页面如下: 选择Query-Language回车,选项可进行数据库操作 进入后,选择要操作的数据库,回车 进行入数据库后的数 ...
- 【Android病毒分析报告】- 手机支付毒王“银行悍匪”的前世今生
from://http://blog.csdn.net/androidsecurity/article/details/18984165 2014年1月8日,央视曝光了一款名为“银行悍匪”的手机银行木 ...
- RDIFramework.NET V2.7 Web版本号升手风琴+树型文件夹(2级+)方法
级+)"界面风格,以展示多级功能菜单,满足用户的要求.Web展示效果例如以下: 要以"手风琴+树型文件夹(2级+)"的风格来展示功能模块,我们须要在"系统配置& ...
- window消息机制
剖析Windows消息处理机制 前一段,帮人写了个小控件,又温习了一遍Windows消息处理机制,现在把一些知识点总结出来,供大家参考.1.窗口 Windows程序是由一系列的窗口构成的,每个窗 ...
- RTP 有效负载(载荷)类型,RTP Payload Type
转自:http://blog.csdn.net/caoshangpa/article/details/53008018 版权声明:本文为灿哥哥http://blog.csdn.net/caoshang ...
- MySql错误处理(三)- 错误处理的例子
有几种错误处理的声明形式: § 如果任何错误(不是 NOT FOUND ) , 设置 l_error 为 1 后继续执行: DECLARE CONTINUE HANDLER FOR SQLEXCEPT ...
- Swift - RotateView
Swift - RotateView 效果 源码 https://github.com/YouXianMing/Swift-Animations // // RotateView.swift // S ...
- C# 泛型的简单理解(安全、集合、方法、约束、继承)
前言 泛型允许你在编译时实现类型安全.它们允许你创建一个数据结构而不限于一特定的数据类型.然而,当使用该数据结构时,编译器保证它使用的类型与类型安全是相一致的.泛型提供了类型安全,但是没有造成任何性能 ...
- Android UI布局之LinearLayout
LinearLayout是Android中最经常使用的布局之中的一个.它将自己包括的子元素依照一个方向进行排列.方向有两种,水平或者竖直.这个方向能够通过设置android:orientation=& ...