当前位置: 首页 > news >正文

SS命令使用介绍

ss


一. 命令介绍
先使用手册查看命令介绍信息

NAME
ss - another utility to investigate sockets

DESCRIPTION
ss is used to dump socket statistics. It allows showing information similar
to netstat. It can display more TCP and state informations than other tools.

ss(Socket Statistics)命令主要功能是显示套接字信息。与netstat命令的使用十分的相似,都是用于显示套接字信息,而ss命令的优势在于它能够显示更多TCP和连接状态的详情信息,并且速度更快更高效。

二. 语法格式
ss的语法格式是:ss 【参数】【过滤器】

SYNOPSIS
ss [options] [ FILTER ]

三. 基本参数
命令的基本参数有以下这些,参数会比较多,当然也可以说明这个命令的用法会挺丰富的。


-n  
 
 不解析域名
-a  
 
 显示所有套接字
-l    
 
显示处于监听状态的套接字
-o  
 
 显示计时器信息
-e  
 
 显示详细的套接字信息
-m  
 
 显示socket的内存情况
-p  
 
 显示使用套接字的过程
-i    
 
显示内部的TCP信息
-s    
 
显示socket使用情况
-4    
 
显示ipv4的套接字信息
-6    
 
显示ipv6的套接字信息
-0    
 
显示PACKET套接字信息
-t  
 
 显示TCP的套接字信息
-u  
 
 显示UDP套接字信息
-d    
 
显示DCCP套接字信息
-w    
 
显示RAW套接字信息
-D   将原始TCP套接字信息转储到文件
-r    解析IP和端口号


四. 各列所代表的含义

Netid    网络标识符
State    每个服务的连接状态
Recv-Q    接收socket(套接字)队列中的数据量,以字节为单位
Send-Q    发送socket(套接字)队列中的数据量,以字节为单位
Local Address    运行本地的计算机地址
Port    服务端口
Peer Address    对等端口


五. 参考实例


1.列出已建立的连接
默认情况,只使用ss命令,不加任何参数的情况下,它会显示所有已建立连接的套接字列表信息

[root@localhost ~]# ss |wc -l
716
[root@localhost ~]# ss | head -n 3
Netid  State      Recv-Q Send-Q Local Address:Port                 Peer Address:Port                
u_str  ESTAB      0      0       * 37084                 * 37928                
u_str  ESTAB      0      0       * 36812                 * 36814                


2.监听TCP协议的套接字信息
可以使用-l参数监听所有tcp协议的套接字内容

<pre>[root@localhost ~]# ss -lt
State      Recv-Q Send-Q  Local Address:Port                   Peer Address:Port                
LISTEN     0      100         127.0.0.1:smtp                              *:*                    
LISTEN     0      128                 *:sunrpc                            *:*                    
LISTEN     0      5       192.168.122.1:domain                            *:*                    
LISTEN     0      128                 *:ssh                               *:*                    
LISTEN     0      128         127.0.0.1:ipp                               *:*                    
LISTEN     0      100             [::1]:smtp                           [::]:*                    
LISTEN     0      128              [::]:sunrpc                         [::]:*                    
LISTEN     0      128              [::]:ssh                            [::]:*                    
LISTEN     0      128             [::1]:ipp                            [::]:*                    


3. 查看主机监听的端口
-n表示不解析域名,显示的是IP+端口的格式

[root@localhost ~]# ss -tnl 
State      Recv-Q Send-Q    Local Address:Port                   Peer Address:Port              
LISTEN     0      100           127.0.0.1:25                                *:*                  
LISTEN     0      128                   *:111                               *:*                  
LISTEN     0      5         192.168.122.1:53                                *:*                  
LISTEN     0      128                   *:22                                *:*                  
LISTEN     0      128           127.0.0.1:631                               *:*              


4. 显示在运行进程的信息
需要使用到-p的参数,结合-tl是显示tcp协议的服务并且处于监听状态下的信息

[root@localhost ~]# ss -tlp  |head -10
State      Recv-Q Send-Q Local Address:Port                 Peer Address:Port                
LISTEN     0      100    127.0.0.1:smtp                     *:*                     users:(("master",pid=1284,fd=13))
LISTEN     0      128        *:sunrpc                   *:*                     users:(("rpcbind",pid=704,fd=8))
LISTEN     0      5      192.168.122.1:domain                   *:*                     users:(("dnsmasq",pid=1533,fd=6))
LISTEN     0      128        *:ssh                      *:*                     users:(("sshd",pid=1176,fd=3))
LISTEN     0      128    127.0.0.1:ipp                      *:*                     users:(("cupsd",pid=1168,fd=11))
LISTEN     0      100    [::1]:smtp                  [::]:*                     users:(("master",pid=1284,fd=14))


可以看到在最后一列会显示进程的名称、PID、fd文件描述符等信息。
还可通过grep过滤信息来获取想知道的服务信息

[root@localhost ~]# ss -ltp | grep ssh
LISTEN     0      128        *:ssh                      *:*                     users:(("sshd",pid=1176,fd=3))
LISTEN     0      128     [::]:ssh                   [::]:*                     users:(("sshd",pid=1176,fd=4))


5. 显示所有已经建立的信息
需要使用-a参数,表示显示所有的连接信息

[root@localhost ~]# ss -a | wc -l
963
[root@localhost ~]# ss  | wc -l
716
1
2
3
4


因为信息太多,这里就不列出了,可以看下显示所有与默认的情况下,会多出来比较多行信息。
还可以在加上-t -n参数使用

[root@localhost ~]# ss -ant 
State      Recv-Q Send-Q    Local Address:Port                   Peer Address:Port              
LISTEN     0      100           127.0.0.1:25                                *:*                  
LISTEN     0      128                   *:111                               *:*                  
LISTEN     0      5         192.168.122.1:53                                *:*                  
LISTEN     0      128                   *:22                                *:*                  
LISTEN     0      128           127.0.0.1:631                               *:*                  
ESTAB      0      0       192.168.157.166:22                  192.168.157.213:65011              
LISTEN     0      100               [::1]:25                             [::]:*                  
LISTEN     0      128                [::]:111                            [::]:*                  
LISTEN     0      128                [::]:22                             [::]:*                  
LISTEN     0      128               [::1]:631                            [::]:*        

   
6. 显示服务更多的信息
如显示-o时间信息、-m显示套接字使用的内容、-i显示内部tcp的信息

[root@localhost ~]# ss -imo | head -2
Netid  State      Recv-Q Send-Q Local Address:Port                 Peer Address:Port                
u_str  ESTAB      0      0       * 37084                 * 37928                 skmem:(r0,rb212992,t0,tb212992,f0,w0,o0,bl0,d0)


7. 显示套接字的使用信息
显示使用信息需要用到-s的参数

[root@localhost ~]# ss -s 
Total: 1711 (kernel 2055)
TCP:   11 (estab 1, closed 1, orphaned 0, synrecv 0, timewait 0/0), ports 0Transport Total     IP        IPv6
*      2055      -         -        
RAW      1         0         1        
UDP      11        8         3        
TCP      10        6         4        
INET      22        14        8        
FRAG      0         0         0        


8. 显示IPv4的信息
需要使用-4的参数,在后面跟上要过滤的信息,这里只显示正在监听的服务。

[root@localhost ~]# ss -4 state listening
Netid  Recv-Q Send-Q    Local Address:Port                     Peer Address:Port                
tcp    0      100           127.0.0.1:smtp                                *:*                    
tcp    0      128                   *:sunrpc                              *:*                    
tcp    0      5         192.168.122.1:domain                              *:*                    
tcp    0      128                   *:ssh                                 *:*                    
tcp    0      128           127.0.0.1:ipp                                 *:*             


若要显示IPv6的可以使用-6的参数

[root@localhost ~]# ss -6 state listening
Netid  Recv-Q Send-Q    Local Address:Port                     Peer Address:Port                
tcp    0      100               [::1]:smtp                             [::]:*                    
tcp    0      128                [::]:sunrpc                           [::]:*                    
tcp    0      128                [::]:ssh                              [::]:*                    
tcp    0      128               [::1]:ipp                              [::]:*           


9. 匹配远程与本地地址和端口号
这里需要用到几种参数格式

分别是:
dst :过滤连接的目标地址
src: 过滤连接的本地地址
dport:目标端口
sport:来源端口

匹配远程地址和端口号

ss dst 192.168.157.33
ss dst 192.168.157.33:443
ss dst 192.168.157.33:http
1
2
3
匹配本地端口和端口号

ss src 192.168.157.166
ss src 192.168.157.166:22
ss src 192.168.157.166:ssh
1
2
3
9.1 当然还可以将本地与远程端口和一个数进行比较
使用方法:

ss dport OP num
ss sport OP num
1
2
以上文本中的OP可以使用以下这些内容

<=    le    小于等于
==    eq    等于
!=    ne    不等于
>    gt    大于
<    lt    小于
是不是突然觉得表格中的符号这么熟悉,如果有学习过shell脚本的,应该一眼就能看出来符号代表的是什么意思。
下面继续来演示下如何使用:
显示来源端口小于50的端口号的内容

[root@localhost ~]# ss -ntul sport lt 50
Netid  State      Recv-Q Send-Q Local Address:Port                Peer Address:Port              
tcp    LISTEN     0      100        127.0.0.1:25                             *:*                  
tcp    LISTEN     0      128                *:22                             *:*                  
tcp    LISTEN     0      100            [::1]:25                          [::]:*                  
tcp    LISTEN     0      128             [::]:22                          [::]:*              
1
2
3
4
5
6
如果要用符号,则需要在符号前面加上转义符。

[root@localhost ~]# ss -ntul sport \< 50
Netid  State      Recv-Q Send-Q Local Address:Port                Peer Address:Port              
tcp    LISTEN     0      100        127.0.0.1:25                             *:*                  
tcp    LISTEN     0      128                *:22                             *:*                  
tcp    LISTEN     0      100            [::1]:25                          [::]:*                  
tcp    LISTEN     0      128             [::]:22                          [::]:*            

相关文章:

SS命令使用介绍

ss 一. 命令介绍 先使用手册查看命令介绍信息 NAME ss - another utility to investigate sockets DESCRIPTION ss is used to dump socket statistics. It allows showing information similar to netstat. It can display more TCP and state informations than other tools.…...

让你的对象变得拗口:JSON.stringify(),我把对象夹进了 JSON 魔法帽!

&#x1f3ac; 江城开朗的豌豆&#xff1a;个人主页 &#x1f525; 个人专栏 :《 VUE 》 《 javaScript 》 &#x1f4dd; 个人网站 :《 江城开朗的豌豆&#x1fadb; 》 ⛺️ 生活的理想&#xff0c;就是为了理想的生活 ! 目录 引言 1. JSON.stringify() 属性 replacer …...

TDengine时序数据库学习使用

数据库要求&#xff1a; 1.目前服务器只能在linux运行&#xff0c;先安装服务器版本v1 2.下载与v1完全匹配的客户端版本v1&#xff08;客户端与服务器的版本号不匹配可能访问不了服务器&#xff09; 第一步 安装 安装服务器注意&#xff0c;安装教程&#xff1a; 使用安装…...

算法通过村第十三关-术数|青铜笔记|数字与数学

文章目录 前言数字统计专题符号统计阶乘0的个数 溢出问题整数反转字符串转整数回文数 进制专题七进制数进制转换 总结 前言 提示&#xff1a;生活是正着来生活&#xff0c;倒着去理解。 --戴维迈尔斯《社会心理学》 数学是学生时代掉头发的学科&#xff0c;那算法是毕业后掉头发…...

【SpringMVC篇】详解SpringMVC入门案例

&#x1f38a;专栏【SpringMVC】 &#x1f354;喜欢的诗句&#xff1a;天行健&#xff0c;君子以自强不息。 &#x1f386;音乐分享【如愿】 &#x1f384;欢迎并且感谢大家指出小吉的问题&#x1f970; 文章目录 &#x1f38d;SpringMVC简介⭐优点 &#x1f33a;SpringMVC入门…...

Programming abstractions in C阅读笔记:p166-p175

《Programming Abstractions In C》学习第58天&#xff0c;p166-p175总结。 一、技术总结 1.斐波那契数列(Fibonacci Sequenc) (1)斐波那契数列来源 斐波那契数列来自于《Liber Abaci》一书里兔子繁殖问题&#xff0c;相关资料很多&#xff0c;这里不赘述。 (2)关于《Libe…...

【List-Watch】

List-Watch 一、定义二、工作机制三、调度过程 一、定义 Kubernetes 是通过 List-Watch 的机制进行每个组件的协作&#xff0c;保持数据同步的&#xff0c;每个组件之间的设计实现了解耦。 用户是通过 kubectl 根据配置文件&#xff0c;向 APIServer 发送命令&#xff0c;在 …...

Pytorch因nn.Parameter导致实验不可复现的一种情况

文章首发见博客&#xff1a;https://mwhls.top/4871.html。 无图/格式错误/后续更新请见首发页。 更多更新请到mwhls.top查看 欢迎留言提问或批评建议&#xff0c;私信不回。 没解决&#xff0c;只是记录这种情况。 也可以多次实验取均值以避免结果复现。 场景 自己的模块中&a…...

MySQL表名区分不区分大小写,规则是怎样

MySQL表名区分不区分大小写&#xff0c;规则是怎样 mysql在linux中表名区分大小写&#xff0c;mysql在Windows中表名不区分大小写&#xff1b;可以在MySQL的配置文件“my.ini [mysqld]”中增加一行“lower_case_table_names 参数”来设置是否区分大小写。 mysql的表名区分大小写…...

Design patterns--观察者模式

设计模式之观察者模式 代码示例 #ifndef OBSERVER_H #define OBSERVER_H#include <map>class Observer { public:Observer();virtual void update(std::map<int, double>) 0; }; #endif // OBSERVER_H#include "observer.h"Observer::Observer() {}#if…...

【Spring Boot】SpringBoot 单元测试

SpringBoot 单元测试 一. 什么是单元测试二. 单元测试的好处三. Spring Boot 单元测试单元测试的实现步骤 一. 什么是单元测试 单元测试&#xff08;unit testing&#xff09;&#xff0c;是指对软件中的最⼩可测试单元进⾏检查和验证的过程就叫单元测试。 二. 单元测试的好处…...

ansible 调研

参考&#xff1a;自动化运维工具——ansible详解&#xff08;一&#xff09; - 珂儿吖 - 博客园 (cnblogs.com) ansible是新出现的自动化运维工具&#xff0c;基于Python开发&#xff0c;集合了众多运维工具&#xff08;puppet、chef、func、fabric&#xff09;的优点&#xf…...

QT UI控件汇总介绍

按钮 ToolButton 和pushbutton没什么区别&#xff0c;可以用来设置图标 设置展示策略 RadioButton 一般用Container可以将其框起来设置互斥域&#xff0c;推荐选用GroupBox 使用方法 qDebug()<<ui->radioButton_3->isChecked(); CheckBox 可以勾选三态 stat…...

【垃圾回收概述及算法】

文章目录 1. 垃圾回收概述及算法2. 垃圾回收相关算法2.1 标记阶段&#xff1a;引用计数算法2.2 标记阶段&#xff1a;可达性分析算法2.3 对象的 finalization 机制2.3.1 一个对象是否可回收的判断 2.4 清除阶段&#xff1a;标记-清除算法2.5 清除阶段&#xff1a;复制算法2.6 清…...

2021年03月 Python(二级)真题解析#中国电子学会#全国青少年软件编程等级考试

Python编程&#xff08;1~6级&#xff09;全部真题・点这里 一、单选题&#xff08;共25题&#xff0c;每题2分&#xff0c;共50分&#xff09; 第1题 对于字典infor {“name”:“tom”, “age”:13, “sex”:“male”}&#xff0c;删除"age":13键值对的操作正确的…...

为什么通过一致性正则化方法就可以避免将所有未标记数据集分配给同一类?

一致性正则化方法可以帮助避免将所有未标记数据分配给同一类别的原因在于它们引入了对模型输出的一致性约束&#xff0c;从而减轻了判别性损失&#xff08;如交叉熵损失&#xff09;可能导致的问题。以下是一些关键原因&#xff1a; 一致性反馈&#xff1a; 一致性正则化方法…...

第4章 决策树

文章目录 4.1 基本流程4.2 划分选择4.2.1 信息增益4.2.2 增益率4.2.3 基尼指数 4.3 剪枝处理4.3.1 预剪枝4.3.2 后剪枝 4.4 连续与缺失值4.4.1 连续值处理4.4.2 缺失值处理 4.5 多变量决策树4.6 阅读材料 4.1 基本流程 决策树也称判定树&#xff0c;是一类常见的机器学习方法。…...

在Remix中编写你的第一份智能合约

智能合约简单来讲就是&#xff1a;部署在去中心化区块链上的一个合约或者一组指令&#xff0c;当这个合约或者这组指令被部署以后&#xff0c;它就不能被改变了&#xff0c;并会自动执行&#xff0c;每个人都可以看到合约里面的条款。更深层次的理解就是&#xff1a;这些代码会…...

如何查看dll文件内导出函数名称

一 使用VS自带工具 进入VS开发环境&#xff0c;然后Tools -> Visual studio 2017 Command Prompt&#xff0c;打开兼容工具命令提示符&#xff0c; 如果工具 目录下没有命令行提示&#xff0c;可以从开始菜单找到VS的命令行提示符。 cd到dll所在目录&#xff0c;输入命令…...

学习笔记|串口通信的基础知识|同步/异步|RS232|常见的串口软件的参数|STC32G单片机视频开发教程(冲哥)|第二十集:串口通信基础

目录 1.串口通信的基础知识串口通信(Serial Communication)同步/异步&#xff1f;全双工&#xff1f;常见的串口软件的参数 2.STC32的串口通信实现原理引脚选择&#xff1a;实现分时复用模式选择串口1模式1&#xff0c;模式1波特率计算公式 3.串口通信代码实现编写串口1通信程序…...

Kubernetes 安全加固清单:从 RBAC 到 etcd 加密的生产实践

在云原生时代&#xff0c;Kubernetes 已成为容器编排的事实标准&#xff0c;但默认配置下的 K8s 并不安全。一次错误的 RBAC 权限配置、一个暴露的 etcd 端口、或者一个特权模式的 Pod&#xff0c;都可能成为攻击者的入口。本文从认证授权、Pod 安全、网络隔离、数据加密四个维…...

使用VSCode无法登录Codex解决方法

登录时提示&#xff1a;Token exchange failed: token endpoint returned status 403 Forbidden: Country, region, or territory not supported确保魔法工具的连接模式是支持应用的&#xff0c;有的是只支持网站&#xff0c;切换成支持应用模式即可解决此问题。...

Android14实战:在Android Studio中配置Pixel6 Pro模拟器与SDK API 34

1. 为什么你需要一个Android14模拟器&#xff1f; 作为一名Android开发者&#xff0c;我深知在真机上测试应用的重要性。但现实情况是&#xff0c;我们不可能拥有所有型号的设备。还记得去年我在开发一个适配多屏幕的应用时&#xff0c;手头只有两台测试机&#xff0c;结果上线…...

(Python)Pandas reset_index() 实战解析:从数据混乱到索引清晰

1. 为什么你的Pandas数据总是乱糟糟&#xff1f; 每次处理完数据&#xff0c;看着那个乱七八糟的索引是不是特别头疼&#xff1f;我刚开始用Pandas的时候&#xff0c;经常遇到这样的问题&#xff1a;合并几个表格后索引重复了&#xff0c;分组统计后多出来一堆莫名其妙的层级&a…...

3步完成Android Studio中文界面配置:告别英文困扰,提升开发效率

3步完成Android Studio中文界面配置&#xff1a;告别英文困扰&#xff0c;提升开发效率 【免费下载链接】AndroidStudioChineseLanguagePack AndroidStudio中文插件(官方修改版本&#xff09; 项目地址: https://gitcode.com/gh_mirrors/an/AndroidStudioChineseLanguagePack…...

2025届毕业生推荐的六大AI辅助论文方案实际效果

Ai论文网站排名&#xff08;开题报告、文献综述、降aigc率、降重综合对比&#xff09; TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 当人工智能技术广泛渗透开来&#xff0c;它于各行各业的应用在持续深入发展。在自动化客服方…...

三步搞定RPG Maker游戏资源解密:零基础完整指南

三步搞定RPG Maker游戏资源解密&#xff1a;零基础完整指南 【免费下载链接】RPGMakerDecrypter Tool for decrypting and extracting RPG Maker XP, VX and VX Ace encrypted archives and MV and MZ encrypted files. 项目地址: https://gitcode.com/gh_mirrors/rp/RPGMake…...

V-REP/CoppeliaSim机器人仿真进阶:Graph模块3D轨迹可视化与数据导出实战解析

1. Graph模块基础与3D轨迹可视化原理 在机器人仿真中&#xff0c;轨迹可视化就像给机械臂装上了"运动摄像机"。V-REP/CoppeliaSim的Graph模块就是这个摄像机的核心部件&#xff0c;它能记录机械臂末端执行器在三维空间中的每一个细微动作。我刚开始用这个功能时&…...

MobaXterm远程桌面实战:在Ubuntu上配置与连接RDP服务

1. 为什么选择MobaXterm连接Ubuntu远程桌面 作为一名常年和Linux服务器打交道的开发者&#xff0c;我深知纯命令行操作有时会遇到效率瓶颈。特别是当需要处理图形界面应用或者进行复杂配置时&#xff0c;SSH终端就显得力不从心了。这时候&#xff0c;RDP远程桌面协议就成了救命…...

3个步骤让你的外文漫画秒变中文:BallonsTranslator零门槛入门指南

3个步骤让你的外文漫画秒变中文&#xff1a;BallonsTranslator零门槛入门指南 【免费下载链接】BallonsTranslator 深度学习辅助漫画翻译工具, 支持一键机翻和简单的图像/文本编辑 | Yet another computer-aided comic/manga translation tool powered by deeplearning 项目地…...