一、netstat 命令

1. 核心功能

  • 显示网络连接、路由表、接口统计等信息。

  • 支持TCP、UDP、UNIX域套接字等协议。

  • 可查看进程与端口的关联。

2. 常用语法示例

查看所有活动连接

netstat -a
# 输出示例:
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 192.168.1.2:22 10.0.0.5:54321 ESTABLISHED
  • -a:显示所有连接(包括监听和非监听)。查看TCP监听端口

netstat -tuln
# 输出示例:
Proto Recv-Q Send-Q Local Address State PID/Program name
tcp 0 0 0.0.0.0:80 LISTEN 1234/nginx
  • -t:TCP协议;-u:UDP协议;-l:仅监听端口;-n:禁用域名解析。

统计各连接状态的数量

netstat -ant | awk '/^tcp/ {print $6}' | sort | uniq -c
# 输出示例:
10 ESTABLISHED
2 TIME_WAIT

查看进程与端口的关联

netstat -tulnp
# 输出示例:
tcp6 0 0 :::80 :::* LISTEN 1234/nginx

二、ss 命令

1. 核心功能

  • 替代 netstat 的现代工具,直接读取内核网络栈数据(通过 netlink 接口)。

  • 速度更快,支持更复杂的过滤语法。

  • 支持显示TCP内部状态(如拥塞窗口、RTT)。

2. 常用语法示例

查看所有TCP连接

ss -at
# 输出示例:
State Recv-Q Send-Q Local Address:Port Peer Address:Port
ESTAB 0 0 192.168.1.2:22 10.0.0.5:54321
  • -a:所有连接;-t:TCP协议。

查看监听端口

ss -tuln
# 输出示例:
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
tcp LISTEN 0 128 *:80 *:*
  • -u:UDP协议;-l:监听端口;-n:禁用域名解析。

按状态过滤连接

ss -t state established
# 输出示例:
Recv-Q Send-Q Local:Port Peer:Port
0 0 192.168.1.2:22 10.0.0.5:54321
  • 支持过滤:establishedtime-waitclosed 等状态。

查看进程和Socket详细信息

ss -tulnp
# 输出示例:
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
tcp LISTEN 0 128 *:80 *:* users:(("nginx",pid=1234,fd=3))
  • -p:显示进程信息(需root权限)。

统计各状态的连接数

ss -s
# 输出示例:
Total: 45 (kernel 60)
TCP: 10 (estab 5, closed 2, orphaned 0, timewait 3)
UDP: 3

三、核心区别对比

特性 netstat ss
数据来源 读取 /proc/net 文件 直接通过 netlink 接口读取内核数据
性能 较慢(高连接数时卡顿) 极快(适合大规模服务器)
功能复杂度 简单但功能有限 支持高级过滤和TCP内部状态分析
输出信息 基础连接信息 更详细的Socket元数据(如内存用量)
系统兼容性 旧系统默认安装 新系统推荐工具(如CentOS 7+/Ubuntu 16+)
进程关联显示 需要 -p 选项 同样支持,但格式更清晰

 
 
 
 
 

netstat 与 ss 比较的更多相关文章

  1. Linux指令--traceroute,netstat,ss

    通过traceroute我们可以知道信息从你的计算机到互联网另一端的主机是走的什么路径.当然每次数据包由某一同样的出发点(source)到达某一同样的目的地(destination)走的路径可能会不一 ...

  2. 【Linux 运维】查看网络连接状态信息之netstat和ss命令详解

    一.netstat 常用命令详解 通过man netstat可以查看netstat的帮助信息: netstat 命令:用于显示各种网络相关信息,如网络连接,路由表,接口状态,无效连接,组播成员 等等. ...

  3. linux学习笔记33--命令netstat和ss

    我们以前接触过了vmstat,iostat了,这次是netstat.route,traceroute,ping,netstat这些命令与计算机网络相关性很强,最好是能先了解下TCP/IP协议. net ...

  4. 二十、网络ifconfig 、ip 、netstat、ss之二

    ip 网络层协议 ip地址 点分十进制分为4段,范围 0-255 ip分类 A 占据1段,最左侧一段第一位固定为0 0 000 0000 - 0 111 1111  0 - 127:其中0为网络,12 ...

  5. netstat与ss

    netstat -t:tcp协议的连接 -u:udp协议的链接 -l:监听状态的连接 -a:所有状态的连接 -p:连接相关的进程 -n:数字格式显示 -r:显示路由表,类似于route或ip rout ...

  6. 网络工具netstat与ss

    建议使用ss命令,2001年的时候netstat 1.42版本之后就没更新了,之后取代的工具是ss.netstat命令在很多场景下比较慢.ss可以显示跟netstat类似的信息,但是速度却比netst ...

  7. linux--网络管理-ifconfig,route,netstat,ip,ss,dns,主机名网卡名修改bond

    cat /etc/services 查看常见端口对应的服务 查一查某个端口号,是哪个进程在用  lsof  -i :6010 49152-65535:动态端口或私有端口,客户端程序随机使用的端口  其 ...

  8. 解开一个疑惑,为什么LVS开放的端口,使用netstat或ss命令,不能查找到其监听的端口呢?

    RT, 这个疑问,本周一直在心里,今天找到一个说法. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 另外LVS规则算是内核方法,用netstat -ntulp也显 ...

  9. netstat -anp/ss -t里的Send-Q和Recv-Q含义

    Send-Q 对方没有收到的数据或者说没有Ack的,还在本地缓冲区 Recv-Q 数据已经在本地接收缓冲区,但是还没有recv() The count of bytes not copied by t ...

  10. SS命令和Netstat命令比较

    在早期运维工作中,查看服务器连接数一般都会用netstat命令.其实,有一个命令比netstat更高效,那就是ss(Socket Statistics)命令!ss命令可以用来获取socket统计信息, ...

随机推荐

  1. net core 中的[FromBody]

    一.针对.net core中post类型的api注意的地方(前提是Controller上加[ApiController]特性).默认是这个. 1.如果客户端Content-Type是applicati ...

  2. weixueyuan-Nginx HTTP模块3

    https://www.weixueyuan.net/nginx/http/ Nginx镜像模块:ngx_http_mirror_module Nginx 中镜像模块的功能是将用户的访问请求镜像复制到 ...

  3. Redis(3)---Redis事务|主从复制

    Redis事务 Redis 通过 MULTI .EXEC. DISCARD  和 WATCH 四个命令来实现事务功能. MULTI :标记一个事务块的开始. EXEC: 执行所有事务块内的命令. DI ...

  4. refs转发

    ref 转发不但可以转发指向具体的dom组件,也可以指向class组件的实例 import React from 'react' import ReactDOM from 'react-dom'; / ...

  5. .Net类型 引用类型

    预定义类型引用类型 C#支持两种预定义的引用类型:object 和string 名称 .NET类型 说明 object System.Object 根类型,其他类型都是从它派生而来的(包括值类型) s ...

  6. RocketMQ原理—5.高可用+高并发+高性能架构

    大纲 1.RocketMQ的整体架构与运行流程 2.基于NameServer管理Broker集群的架构 3.Broker集群的主从复制架构 4.基于Topic和Queue实现的数据分片架构 5.Bro ...

  7. RestClient 通过拦截器实现请求加密

    今天我发现了一个关于请求加密的有效写法,特此分享给大家.如果你的加密需求是将请求参数也包含在内,通常情况下,我们需要先将请求体转换成 JSON 格式或其他对象类型,再使用字符串的形式进行加密操作.以下 ...

  8. POI包操作Excel代码

    1.创建工作簿 (WORKBOOK)     HSSFWorkbook wb = new HSSFWorkbook();     FileOutputStream fileOut = new File ...

  9. Luogu P2292 HNOI2004 L 语言 题解 [ 紫 ] [ AC 自动机 ] [ 状压 dp ]

    L 语言:很好的一道状压 dp 题. 思路 看到这题,首先可以想到一个很暴力的 dp,设 \(dp_i\) 表示考虑到第 \(i\) 位能否被理解,暴力匹配字符串转移即可. 第一个优化也很显然,暴力匹 ...

  10. C#/.NET/.NET Core技术前沿周刊 | 第 25 期(2025年2.1-2.9)

    前言 C#/.NET/.NET Core技术前沿周刊,你的每周技术指南针!记录.追踪C#/.NET/.NET Core领域.生态的每周最新.最实用.最有价值的技术文章.社区动态.优质项目和学习资源等. ...