ss命令用来显示处于活动状态的套接字信息。

ss命令可以用来获取socket统计信息,它可以显示和netstat类似的内容。

但ss的优势在于它能够显示更多更详细的有关TCP和连接状态的信息,而且比netstat更快速更高效。

当服务器的socket连接数量变得非常大时,无论是使用netstat命令还是直接cat /proc/net/tcp,执行速度都会很慢。可能你不会有切身的感受,但请相信,当服务器保持近万个连接的时候,使用netstat就会很慢,ss会节省时间。

。ss快的秘诀在于,它利用到了TCP协议栈中tcp_diag。tcp_diag是一个用于分析统计的模块,可以获得Linux 内核中第一手的信息,这就确保了ss的快捷高效。当然,如果你的系统中没有tcp_diag,ss也可以正常运行,只是效率会变得稍慢。

语法

ss(选项)

选项

-h:显示帮助信息;

-V:显示指令版本信息;

-n:不解析服务名称,以数字方式显示;

-a:显示所有的套接字;

-l:显示处于监听状态的套接字;

-o:显示计时器信息;

-m:显示套接字的内存使用情况;

-p:显示使用套接字的进程信息;

-i:显示内部的TCP信息;

-4:只显示ipv4的套接字;

-6:只显示ipv6的套接字;

-t:只显示tcp套接字;

-u:只显示udp套接字;

-d:只显示DCCP套接字;

-w:仅显示RAW套接字;

-x:仅显示UNIX域套接字。

实例:

显示ICP连接

[root@localhost ~]# ss -t -a

State Recv-Q Send-Q Local Address:Port Peer Address:Port

LISTEN 0 0 *:3306 :

LISTEN 0 0 *:http :

LISTEN 0 0 *:ssh :

LISTEN 0 0 127.0.0.1:smtp :

ESTAB 0 0 112.124.15.130:42071 42.156.166.25:http

ESTAB 0 0 112.124.15.130:ssh 121.229.196.235:33398

显示 Sockets 摘要

[root@localhost ~]# ss -s

Total: 172 (kernel 189)

TCP: 10 (estab 2, closed 4, orphaned 0, synrecv 0, timewait 0/0), ports 5

Transport Total ip IPv6

  •     189       -         -

RAW 0 0 0

UDP 5 5 0

TCP 6 6 0

INET 11 11 0

FRAG 0 0 0

列出当前的established, closed, orphaned and waiting TCP sockets

列出所有打开的网络连接端口

[root@localhost ~]# ss -l

Recv-Q Send-Q Local Address:Port Peer Address:Port

0 0 *:3306 :

0 0 *:http :

0 0 *:ssh :

0 0 127.0.0.1:smtp :

查看进程使用的socket

[root@localhost ~]# ss -pl

Recv-Q Send-Q Local Address:Port Peer Address:Port

0 0 *:3306 : users:(("mysqld",1718,10))

0 0 *:http : users:(("nginx",13312,5),("nginx",13333,5))

0 0 *:ssh : users:(("sshd",1379,3))

0 0 127.0.0.1:smtp : us

找出打开套接字/端口应用程序

[root@localhost ~]# ss -pl | grep 3306

0 0 *:3306 : users:(("mysqld",1718,10))

显示所有UDP Sockets

[root@localhost ~]# ss -u -a

State Recv-Q Send-Q Local Address:Port Peer Address:Port

UNCONN 0 0 *:syslog :

UNCONN 0 0 112.124.15.130:ntp :

UNCONN 0 0 10.160.7.81:ntp :

UNCONN 0 0 127.0.0.1:ntp :

UNCONN 0 0 *:ntp :

[root@Mysql ~]# ss -ntpl | grep 3306

LISTEN 0 80 *:3306 : users:(("mysqld",26375,28))

linux下SS 网络命令详解的更多相关文章

  1. Linux下面的yum命令详解

    yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RP ...

  2. linux下的tar命令详解

    通过SSH访问服务器,难免会要用到压缩,解压缩,打包,解包等,这时候tar命令就是是必不可少的一个功能强大的工具.linux中最流行的tar是麻雀虽小,五脏俱全,功能强大. tar命令可以为linux ...

  3. Linux下安装软件命令详解

    ---------------------------------------------------------------- 或许你对于linux还不够了解,但是一旦你步入公司后,你就会发现lin ...

  4. 【转载】linux下的mount命令详解;

    以下内容来自:http://blog.csdn.net/clozxy/article/details/5299054 http://linux.chinaunix.net/techdoc/system ...

  5. Linux下ln链接命令详解

    ln是linux中又一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个不同的链接,这个命令最常用的参数是-s,具体用法是:ln –s 源文件 目标文件. 当我们需要在不同的目录,用到相同的 ...

  6. linux下使用tar命令详解

    解压语法:tar [主选项+辅选项] 文件或者目录 使用该命令时,主选项是必须要有的,它告诉tar要做什么事情,辅选项是辅助使用的,可以选用. 主选项: c 创建新的档案文件.如果用户想备份一个目录或 ...

  7. Linux下的hostname命令详解

    1.临时修改: #hostname ***** //*****为修改的hostname 2.永久修改: # vi /etc/sysconfig/networkNETWORKING=yesHOSTNAM ...

  8. Linux下的find命令详解

    0x01 简介 find命令用来在指定目录下查找文件.任何位于参数之前的字符串都将被视为欲查找的目录名.如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件.并且将查找到的子 ...

  9. Linux上的free命令详解、swap机制

    Linux上的free命令详解   解释一下Linux上free命令的输出. 下面是free的运行结果,一共有4行.为了方便说明,我加上了列号.这样可以把free的输出看成一个二维数组FO(Free ...

随机推荐

  1. js-面试题整理

    var Foo = function(){ getName = function(){alert(1)}; return this; } Foo.getName = function(){alert( ...

  2. LR使用web_add_cookie函数进行cookie模拟

    1    为什么要使用cookie模拟 从日常项目测试过程中的问题说起.比如要进行论坛中的文件下载功能的测试.我们都知道只有登录用户才能进行下载操作,这样我们的测试过程可能就变成了先登录系统,然后再进 ...

  3. Beautiful用法总结

    一.安装 通过命令:pip3 install Beautifulsoup4: 安装后运行:from bs4 import BeautifulSoup,没有报错,说明安装正常: 二.解析库 Beauti ...

  4. 快捷键打开Generate

    在eclipse下有覆盖toString.hashcode.setter.getter等功能. 在intelj idea中,同样具有类似的功能. 按下键盘上的alt+insert键,就会弹出gener ...

  5. 论文阅读笔记五十五:DenseBox: Unifying Landmark Localization with End to End Object Detection(CVPR2015)

    论文原址:https://arxiv.org/abs/1509.04874 github:https://github.com/CaptainEven/DenseBox 摘要 本文先提出了一个问题:如 ...

  6. System.TimeoutException: The operation requested on PersistentChannel timed out

    这个异常是在使用EasyNetQ时,遇到的问题,找了两个小时. 详细错误 Error:System.TimeoutException: The operation requested on Persi ...

  7. EF Core 2.2 对多个 DbContext 多个数据库的情况进行迁移的示例

    目录 场景 创建新项目 创建第一个模型 创建第二个模型 使用依赖注入注册上下文 创建数据库 场景 在一个项目中,使用了多个 DbContext 且每个 DbContext 对应一个数据库的情况 创建新 ...

  8. pip命令

    安装包 pip install django   #最新版本 pip install django==1.11.7 #指定版本 pip install django>=1.11.7 #最小版本 ...

  9. 用Verilog语言实现一个简单的MII模块

    项目中要求简单地测试一下基于FPGA的模拟平台的RJ45网口,也就是需要实现一个MII或者RMII模块.看了一下官方网口PHY芯片的官方文档,还是感觉上手有点障碍,想在网络上找些参考代码看看,最后只在 ...

  10. golang项目git-subtree完美解决差异包管理

    目标: 1.把golang官方已移动过url的包跟随自己的项目git代码上传到项目源码中. 2.把或自己修改过的差异化fork包跟随自己的项目git代码上传到项目源码中. 解决方案: 方案1.第三方包 ...