ss 是比 netstat 更高效、现代的网络连接查看工具,直接从内核获取数据,支持端口监听、连接状态过滤、地址端口筛选及性能统计等丰富功能。

ss 是 Linux 中更高效、更现代的网络连接查看工具,它直接从内核获取数据,比 netstat 更快、更准确,且在多数新系统中已默认安装。netstat 已被标记为废弃(deprecated),建议尽快迁移到 ss。
基础用法:快速替代 netstat -tuln
这是最常用场景——查看本机监听的 TCP/UDP 端口:
-
ss -tuln:等价于
netstat -tuln(-t TCP, -u UDP, -l listening, -n 不解析域名) -
ss -tulnp:加
-p显示进程名和 PID(需 root 权限) - 注意:
ss默认不显示程序名,-p必须配合sudo使用,例如sudo ss -tulnp
查看已建立的连接(类似 netstat -tn)
排查客户端连接、服务端活跃会话时常用:
- ss -tn:列出所有 ESTABLISHED 的 TCP 连接(数字格式)
- ss -tn state established:显式过滤 ESTABLISHED 状态
- 支持更多状态过滤:
state closing、state fin-wait-1、state time-wait等,比 netstat 更灵活
按地址或端口筛选(实用排障技巧)
定位特定服务或异常连接非常高效:
- ss -tuln sport = :22:查看本地监听 22 端口的服务
- ss -tn dst 192.168.1.100::查看所有连向 192.168.1.100 的 TCP 连接
- ss -tn src 10.0.0.5::查看来自 10.0.0.5 的连接
- 端口可写成
:80、80或http(ss 支持 /etc/services 别名)
高级技巧:统计与性能观察
ss 还能快速获取连接概览,辅助性能分析:
- ss -s:显示 socket 汇总统计(如 total、TCP、UDP 数量、内存使用等)
- ss -i:显示 TCP 连接的详细信息(RTT、拥塞窗口、重传数等),适合网络调优
- ss -tuln4 或 ss -tuln6:分别只看 IPv4 或 IPv6 连接










