netstat
2016-04-23 20:56
666 查看
Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态等等。
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字。
-l 仅列出有在 Listen (监听) 的服務状态
-p 显示建立相关链接的程序名
-r 显示路由信息,路由表
-e 显示扩展信息,例如uid等
-s 按各个协议进行统计
-c 每隔一个固定时间,执行该netstat命令。
提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到
列出所有端口 $netstat -a
列出所有tcp端口 $netstat -at
列出所有udp端口 $netstat -au
2.列出所有监听状态
只显示监听端口 $netstat -l
只列出所有监听TCP端口 $netstat -lt
只列出所有监听UDP端口 $netstat -lu
只列出所有监听UNIX端口 $netstat -lx
3.显示每个协议的统计信息
显示所有端口的统计信息 $netstat -s
显示TCP或UDP端口的统计信息 $netstat -st 或 -su
4.显示PID和进程名称
netstat -p
5.不显示主机,端口和用户名
当不想让主机,端口和用户名显示,使用 netstat -n。将会使用数字代替那些名称。
netstat -an,同样可以加速输出,因为不用进行比对查询。
如果只是不想让这三个名称中的一个被显示,使用以下命令:
netsat -a --numeric-ports
netsat -a --numeric-hosts
netsat -a --numeric-users
6.持续输出netstat信息
netstat -c #将每隔一秒输出网络信息。
7.找出程序运行的端口
并不是所有的进程都能找到,没有权限的会不显示,使用 root 权限查看所有的信息。
netstat -ap | grep ssh
找出运行在指定端口的进程:
netstat -an | grep':80'
8. 显示网络接口列表
netstat -i
netstat -ie
显示详细信息,像是 ifconfig 使用 netstat -ie.
在linux下,如何查看服务器的并发连接数呢?使用以下命令即可分组查看各种连接状态:
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
返回结果示例:
LAST_ACK 5 (正在等待处理的请求数)
SYN_RECV 30
ESTABLISHED 1597 (正常数据传输状态)
FIN_WAIT1 51
FIN_WAIT2 504
TIME_WAIT 1057 (处理完毕,等待超时结束的请求数)
状态:描述
CLOSED:无连接是活动的或正在进行
LISTEN:服务器在等待进入呼叫
SYN_RECV:一个连接请求已经到达,等待确认
SYN_SENT:应用已经开始,打开一个连接
ESTABLISHED:正常数据传输状态
FIN_WAIT1:应用说它已经完成
FIN_WAIT2:另一边已同意释放
ITMED_WAIT:等待所有分组死掉
CLOSING:两边同时尝试关闭
TIME_WAIT:另一边已初始化一个释放
LAST_ACK:等待所有分组死掉
使用这上面的命令是可以查看服务器的种连接状态,其中ESTABLISHED 就是并发连接状态的显示数。如果仅仅只是想查看并发连接数,可以简化一下命令,即:
netstat -nat|grep ESTABLISHED|wc -l
常见参数:
-a (all)显示所有选项,默认不显示LISTEN相关-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字。
-l 仅列出有在 Listen (监听) 的服務状态
-p 显示建立相关链接的程序名
-r 显示路由信息,路由表
-e 显示扩展信息,例如uid等
-s 按各个协议进行统计
-c 每隔一个固定时间,执行该netstat命令。
提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到
实用命令实例
1.列出所有端口列出所有端口 $netstat -a
列出所有tcp端口 $netstat -at
列出所有udp端口 $netstat -au
2.列出所有监听状态
只显示监听端口 $netstat -l
只列出所有监听TCP端口 $netstat -lt
只列出所有监听UDP端口 $netstat -lu
只列出所有监听UNIX端口 $netstat -lx
3.显示每个协议的统计信息
显示所有端口的统计信息 $netstat -s
显示TCP或UDP端口的统计信息 $netstat -st 或 -su
4.显示PID和进程名称
netstat -p
5.不显示主机,端口和用户名
当不想让主机,端口和用户名显示,使用 netstat -n。将会使用数字代替那些名称。
netstat -an,同样可以加速输出,因为不用进行比对查询。
如果只是不想让这三个名称中的一个被显示,使用以下命令:
netsat -a --numeric-ports
netsat -a --numeric-hosts
netsat -a --numeric-users
6.持续输出netstat信息
netstat -c #将每隔一秒输出网络信息。
7.找出程序运行的端口
并不是所有的进程都能找到,没有权限的会不显示,使用 root 权限查看所有的信息。
netstat -ap | grep ssh
找出运行在指定端口的进程:
netstat -an | grep':80'
8. 显示网络接口列表
netstat -i
netstat -ie
显示详细信息,像是 ifconfig 使用 netstat -ie.
在linux下,如何查看服务器的并发连接数呢?使用以下命令即可分组查看各种连接状态:
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
返回结果示例:
LAST_ACK 5 (正在等待处理的请求数)
SYN_RECV 30
ESTABLISHED 1597 (正常数据传输状态)
FIN_WAIT1 51
FIN_WAIT2 504
TIME_WAIT 1057 (处理完毕,等待超时结束的请求数)
状态:描述
CLOSED:无连接是活动的或正在进行
LISTEN:服务器在等待进入呼叫
SYN_RECV:一个连接请求已经到达,等待确认
SYN_SENT:应用已经开始,打开一个连接
ESTABLISHED:正常数据传输状态
FIN_WAIT1:应用说它已经完成
FIN_WAIT2:另一边已同意释放
ITMED_WAIT:等待所有分组死掉
CLOSING:两边同时尝试关闭
TIME_WAIT:另一边已初始化一个释放
LAST_ACK:等待所有分组死掉
使用这上面的命令是可以查看服务器的种连接状态,其中ESTABLISHED 就是并发连接状态的显示数。如果仅仅只是想查看并发连接数,可以简化一下命令,即:
netstat -nat|grep ESTABLISHED|wc -l
相关文章推荐
- 正则表达式小结
- 站立会议05
- 搜狗搜索引擎--个人评价
- shell之变量
- 使用Stetho调试Retrofit的网络请求
- 站立会议04
- JS中window.showModalDialog()详解 HTML DOM open() 方法
- Swap Nodes in Pairs
- SharedPreferences的使用
- uva1395
- 专题二1004
- 学习进度八
- 2007浙大:最大报销额
- MongoDB - 分片管理
- 练习二 1005 Turn the corner
- imx280学习之Uboot移植
- POJ 3061 Subsequence(尺取法)
- [C++]pseudo-random numbers(random库)
- Fragment的使用详解
- 冲刺第五天