在使用 Ubuntu 或 Debian 系统时,输入 netstat 命令可能会遇到 未找到命令 的提示,这是因为系统默认没有预装 netstat 所需的依赖包,下面详细介绍安装步骤、常用用法和完整的参数说明。
一、安装 netstat 相关依赖
1. 搜索 netstat 对应软件包
首先通过以下命令搜索可用的相关软件包:
apt search netstat
2. 安装 net-tools 软件包
netstat 工具包含在 net-tools 软件包中,执行以下命令完成安装(需管理员权限):
sudo apt install net-tools
安装完成后,再次输入 netstat 命令就能正常使用。
二、netstat 常用用法
1. 查看网络路由表
-n 选项强制 netstat 打印以点分隔的 IP 地址,不使用符号网络名,能避免通过网络查找地址,提升执行效率:
netstat -nr
2. 显示网络接口统计信息
-i参数:显示所有已配置接口的统计信息;- 加入
-a参数:显示所有接口的流量统计表信息(若所有接口均已配置,两种参数组合输出结果一致):
netstat -ai
3. 显示网络连接
根据传输协议不同,可使用以下命令查看对应网络连接:
# 查看 TCP 协议网络连接(t:TCP,a:所有,n:数字格式)
netstat -tan
# 查看 UDP 协议网络连接(u:UDP,a:所有,n:数字格式)
netstat -uan
4. 显示网络服务
列出系统中的网络服务、当前状态及对应端口,命令如下:
netstat -pantu
参数说明:p(显示进程信息)、a(所有连接)、n(数字格式)、t(TCP)、u(UDP)。
5. 列出协议的收发汇总
netstat 可汇总 IP、ICMP、TCP、UDP 等多种协议的收发统计信息,对应命令如下:
# 查看 TCP 协议收发统计
netstat -ts
# 查看 UDP 协议收发统计
netstat -us
# 查看所有协议收发统计
netstat -as
三、netstat 完整参数说明
| 参数 | 英文说明 | 中文说明 |
|---|---|---|
| -c / --cache | Display router configuration cache information | 显示路由器配置的缓存信息 |
| -e / --extend | Display other network-related information | 显示网络其他相关信息 |
| -F / --fib | Display routing cache | 显示路由缓存 |
| -g / --groups | Display multicast group member list | 显示多重广播功能群组组员名单 |
| -h / --help | Online help | 在线帮助 |
| -i / --interfaces | Display network interface information form | 显示网络界面信息表单 |
| -l / --listening | Display sockets of servers under monitoring | 显示监控中的服务器的 Socket |
| -M / --masquerade | Display masqueraded network connections | 显示伪装的网络连线 |
| -n / --numeric | Use IP address directly without domain name server | 直接使用 IP 地址,而不通过域名服务器 |
| -N / --netlink / --symbolic | Display symbolic link names of network hardware peripherals | 显示网络硬件外围设备的符号连接名称 |
| -o / --timers | Display timers | 显示计时器 |
| -p / --programs | Display PID and program name of the program using the Socket | 显示正在使用 Socket 的程序识别码和程序名称 |
| -r / --route | Display Routing Table | 显示路由表(Routing Table) |
| -s / --statistics | Display network work information statistics table | 显示网络工作信息统计表 |
| -t / --tcp | Display TCP transmission protocol connection status | 显示 TCP 传输协议的连线状况 |
| -u / --udp | Display UDP transmission protocol connection status | 显示 UDP 传输协议的连线状况 |
| -v / --verbose | Display command execution process | 显示指令执行过程 |
| -V / --version | Display version information | 显示版本信息 |
| -w / --raw | Display RAW transmission protocol connection status | 显示 RAW 传输协议的连线状况 |
| -x / --unix | Same effect as specifying "-A unix" parameter | 此参数的效果和指定 "-A unix" 参数相同 |
| --ip / --inet | Same effect as specifying "-A inet" parameter | 此参数的效果和指定 "-A inet" 参数相同 |
补充说明:-c 参数可实现持续列出网络状态。
