netstat命令总结

nestat介绍

netstat是一款命令行工具,可用于列出系统上所有的网络套接字连接情况,包括 tcp, udp 以及 unix 套接字,另外它还能列出处于监听状态(即等待接入请求)的套接字。

使用参数说明

与路由有关的参数

-r : 列出路由表,功能如route命令
-n : 不使用主机名与服务名称,使用ip与port number,如同route -n

与网络接口有关参数

-a : 列出所有的连接状态,包括tcp/udp/unix socket等
-t : 仅列出tcp数据包的连接
-u : 仅列出udp数据包的连接
-l : 仅列出已在listen(监听)的服务的网络状态
-p : 列出pid进程号与program文件名
-i : 打印网络接口
-g : 显示IPv4和IPv6的多播组信
-c : 可以设置几秒后自动更新一次,例如-c 5为每5s更新一次网络状态
-s : 显示网络统计数据
-e : 显示更多的信息(如用户ID、网卡IP等)

使用示例

1.列出当前路由表的状态,以ip及port number显示:

netstat -rn

2.列出当前所有的网络连接,以ip与port number显示

netstat -an

3.显示已经启动的网络服务

netstat -tulnp

4.查看本机上所有的网络连接状态

netstat -atunp

5.打印统计数据

netstat -s

6.打印网络接口

netstat -i

更详细一点的打印,类似ifconfig

netstat -ie

7.持续监听

netstat -ct

8.显示多播组信息

选项 -g 会输出 IPv4 和 IPv6 的多播组信息

netstat -g

9.打印 active 状态的连接

active 状态的套接字连接用 "ESTABLISHED" 字段表示,打印active状态的连接

netstat -atnp | grep ESTA

配合 watch 命令监视 active 状态的连接:

watch -d -n0 "netstat -atnp | grep ESTA"

10.查看服务是否在运行

http,smtp 或 ntp 服务是否在运行,使用 grep。

netstat -aple | grep http
上一篇:ThinkPHP中RBAC权限管理的简单应用


下一篇:python类可以截获Python运算符