Netstat是控制台命令,是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息。Netstat用于显示与IP、TCPUDPICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。

netsat (Linux)基本用法

一般格式为:

1
netstat [-AaLlnW] [-f address_family | -p protocol]

常用的命令行选项:

-l 显示当前正在监听的连接情况

-a 显示所有socket(包括正在监听的)

-c 每隔固定时间执行netstat命令

-n 以网络IP地址代替名称,显示出网络连接情形

-t 显示tcp连接情况

-u 显示udp连接情况

-r 显示核心路由表,格式同“route -e”

-i 显示所有网络接口的信息,格式“netstat -i”

-p 显示建立相关连接的程序名和PID(需要root权限)

示例

示例 备注
netstat -a 显示系统中所有连接
netstat -au 显示所有UDP端口
netstat -at 显示所有TCP端口
netstat -l 显示所有监听状态的端口
netstat -lt 显示所有监听状态的TCP端口
netstat -lu 显示所有监听状态的UDP端口
netstat -lx 显示所有监听状态的Unix端口
netstat -r 显示核心路由信息
netstat -na 以网络IP地址代替名称, 显示所有连接
netstat -np 显示所有连接信息,包括关联的程序名进程id信息
  1. 查找监听指定端口的进程
1
2
3
4
5
$sudo netstat -ltp | grep 8081 | awk '{print NF}'
1/sport

$sudo netstat -ltp | grep 8081 
tcp        0      0 :::8081                 :::*                    LISTEN      1/sport