Linux ss 命令详解

SS 命令是 iproute2(用于控制 TCP/IP 网络和流量的实用程序)包的一部分。iproute2 旨在取代以前用于配置网络接口、路由表和管理 ARP 表任务的整套标准 Unix 网络工具(通常称为“net-tools”)。ss 实用程序用于转储套接字统计信息,它允许显示类似于 netstat 的信息,并且能够显示更多 TCP 和状态信息。它也应该更快,因为它直接从内核空间获取信息。与 ss 命令一起使用的选项与 netstat 非常相似,因此很容易替换。

SS 命令用法和选项

ss 与 netstat 非常相似,默认情况下,它会向您显示已建立连接的打开的非侦听 TCP 套接字列表,您可以使用以下选项调整输出:

-n – 现在尝试解析服务名称。
-r – 尝试解析数字地址/端口。
-a – 显示所有套接字。
-l – 显示监听套接字。
-p – 使用套接字显示进程。
-s – 打印汇总统计信息。
-t – 仅显示 TCP 套接字。
-u – 仅显示 UDP 套接字。
-d – 仅显示 DCCP 套接字。
-w – 仅显示 RAW 套接字。
-x – 仅显示 Unix 域套接字。
-f FAMILY – 显示FAMILY类型的套接字。目前支持以下系列:unix、inet、inet6、link、netlink。
-A QUERY– 要转储的套接字表列表,以逗号分隔。理解以下标识符:all、inet、tcp、udp、raw、unix、packet、netlink、unix_dgram、unix_stream、packet_raw、packet_dgram。

显示tcp端口和进程

显示所有打开的 TCP 端口和使用它们的进程

# ss -tnap

ss tnap

显示 IPV4 和 IPV6 连接

您可以使用 -4 标志来显示 IPv4 连接,使用 -6 标志来显示 IPv6 连接,例如:

# ss -tnap6

ss tnap6
显示UDP端口

以同样的方式,要显示所有打开的 UDP 端口,您只需将 t 替换为 n。

# ss -unap

ss unap
输出tcp统计信息

要输出各种有用的统计信息,您可以使用 -s 标志

# ss -s

统计数据
使用状态显示连接统计信息

要检查处于不同状态的所有连接,您可以使用 -o 标志,例如显示所有“已建立”的连接

# ss -tn -o state established -p

安全测试

linux who命令详解
linux lsof命令详解
ajax-loader