每天一个Linux命令(51)ss命令
ss命令用来显示处于活动状态的套接字信息。
(1)用法:
用法: ss [参数]
ss [参数] [过滤]
(2)功能:
功能: ss是类似netstat的工具。能显示查看网络状态信息,包括TCP、UDP连接,端口。
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也可以正常运行,只是效率会变得稍慢。
(3)选项参数
1) -t, --tcp 仅显示TCP套接字(sockets)
2) -a, --all 显示所有套接字(sockets)
3) -s, --summary 显示套接字(socket)使用概况
4) -l 显示LISTEN状态的连接(连接打开)
5) -p, --processes 显示使用套接字(socket)的进程
6) -u, --udp 仅显示 UCP套接字(sockets)
7) -d, --dccp 仅显示 DCCP套接字(sockets)
8) -w, --raw 仅显示 RAW套接字(sockets)
9) -x, --unix 仅显示 Unix套接字(sockets)
(4)实例:
1)[root@localhost sunjimeng]# ss -t -a 显示TCP连接
[root@localhost sunjimeng]# ss -t -a
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN *:ssh *:*
LISTEN 127.0.0.1:ipp *:*
LISTEN 127.0.0.1:smtp *:*
TIME-WAIT 192.168.142.128: 115.28.122.210:http
TIME-WAIT 192.168.142.128: 112.124.140.210:http
LISTEN :::ssh :::*
LISTEN :::ipp :::*
LISTEN :::smtp :::*
[root@localhost sunjimeng]# netstat -ta
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0.0.0.0:ssh 0.0.0.0:* LISTEN
tcp localhost:ipp 0.0.0.0:* LISTEN
tcp localhost:smtp 0.0.0.0:* LISTEN
tcp 192.168.142.128: ec2----.:https ESTABLISHED
tcp 192.168.142.128: ec2----:https ESTABLISHED
tcp 192.168.142.128: ec2----:https ESTABLISHED
tcp6 [::]:ssh [::]:* LISTEN
tcp6 localhost:ipp [::]:* LISTEN
tcp6 localhost:smtp [::]:* LISTEN
2)[root@localhost sunjimeng]# ss -s 显示套接字使用概况(列出当前的established, closed, orphaned and waiting TCP sockets)
[root@localhost sunjimeng]# ss -s
Total: (kernel )
TCP: (estab , closed , orphaned , synrecv , timewait /), ports Transport Total IP IPv6
* - -
RAW
UDP
TCP
INET
FRAG
3)[root@localhost sunjimeng]# ss -l 列出所有打开的网络连接端口,即已经连接的网络端口
[root@localhost sunjimeng]# ss -l
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
nl UNCONN rtnl:NetworkManager/ *
nl UNCONN rtnl:gnome-shell/ *
......
u_dgr UNCONN * *
u_dgr UNCONN * *
raw UNCONN :::ipv6-icmp :::*
tcp UNCONN *:ipproto- *:*
tcp UNCONN *:ptp *:*
tcp UNCONN 127.0.0.1:ipproto- *:*
tcp UNCONN *:ipproto- *:*
tcp UNCONN *:ipproto- *:*
tcp UNCONN *:ipproto- *:*
tcp UNCONN :::ptp :::*
tcp UNCONN :::ipproto- :::*
tcp UNCONN :::ipproto- :::*
tcp LISTEN *:ssh *:*
tcp LISTEN 127.0.0.1:ipp *:*
tcp LISTEN 127.0.0.1:smtp *:*
tcp LISTEN :::ssh :::*
tcp LISTEN :::ipp :::*
tcp LISTEN :::smtp :::*
4)[root@localhost sunjimeng]# ss -t -a -p 显示使用套接字的进程的信息
[root@localhost sunjimeng]# ss -t -a
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN *:ssh *:*
LISTEN 127.0.0.1:ipp *:*
LISTEN 127.0.0.1:smtp *:*
LISTEN :::ssh :::*
LISTEN :::ipp :::*
LISTEN :::smtp :::*
[root@localhost sunjimeng]# ss -t -a -p
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN *:ssh *:* users:(("sshd",,))
LISTEN 127.0.0.1:ipp *:* users:(("cupsd",,))
LISTEN 127.0.0.1:smtp *:* users:(("master",,))
LISTEN :::ssh :::* users:(("sshd",,))
LISTEN :::ipp :::* users:(("cupsd",,))
LISTEN :::smtp :::* users:(("master",,))
5)[root@localhost sunjimeng]# ss -pl |grep 1487 显示端口号为1487的已连接的套接字的进程信息
[root@localhost sunjimeng]# ss -pl |grep
u_str LISTEN /run/systemd/journal/stdout * users:(("systemd-journal",,),("systemd",,))
[root@localhost sunjimeng]#
6)两个命令的时间对比:
[root@localhost sunjimeng]# time ss real 0m0.081s
user 0m0.000s
sys 0m0.004s
[root@localhost sunjimeng]# time netstat real 0m0.018s
user 0m0.004s
sys 0m0.000s
[root@localhost sunjimeng]#
每天一个Linux命令(51)ss命令的更多相关文章
- Linux系统使用ss命令查看端口状态
Linux系统使用ss命令查看端口状态 目录 1.可用工具 2.ss帮助 2.1 选项分类说明 2.2 过滤选项family 2.3 过滤选项state 2.4 状态之间的关系 3.ss的使用 3.1 ...
- 每天一个linux命令(44)--ss命令
ss 是 socket statistics 的缩写.顾名思义,ss 命令可以用来获取socket 统计信息,它可以显示和netstat 类似的内容.但 ss 的优势在于它能够显示更多更详细的有关TC ...
- 每天一个linux命令(51)--grep命令
linux系统中grep 命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来.grep 全称是 global regular expression print,表示全局正则 ...
- linux常用命令:ss 命令
ss是Socket Statistics的缩写.顾名思义,ss命令可以用来获取socket统计信息,它可以显示和netstat类似的内容.但ss的优势在于它能够显示更多更详细的有关TCP和连接状态的信 ...
- 网络模型、IP命令、SS命令介绍
1. 分层对应关系 OSI七层模型和TCP/IP五层模型都属于TCP/IP协议栈,而TCP/IP协议栈只有两种传输层协议:TCP.UDP,所以对于Telnet.FTP这些协议,建议称之为承载在TCP之 ...
- Linux命令:ss命令
ss功能:用来显示套接字信息的,类似于netstat,可以显示更多的信息,用于替代netstat. ss常用选项 ss -t:tcp协议的连接 -u:udp协议的链接 -w:裸套接字相关 -x:uni ...
- netstat 命令 与 ss 命令
http://www.cnblogs.com/peida/archive/2013/03/11/2953420.html http://www.ttlsa.com/linux-command/ss-r ...
- Linux命令学习(22):ss命令
版权声明 更新:2017-05-20 博主:LuckyAlan 联系:liuwenvip163@163.com 声明:吃水不忘挖井人,转载请注明出处! 1 文章介绍 本文介绍了Linux下面的ss命令 ...
- SS命令和Netstat命令比较
在早期运维工作中,查看服务器连接数一般都会用netstat命令.其实,有一个命令比netstat更高效,那就是ss(Socket Statistics)命令!ss命令可以用来获取socket统计信息, ...
- [转]Linux下网络常用命令和工具
转自:http://int32bit.me/2016/05/04/Linux%E5%B8%B8%E7%94%A8%E7%BD%91%E7%BB%9C%E5%B7%A5%E5%85%B7%E6%80%B ...
随机推荐
- inode表元数据,存储在物理存储体上
一个文件除了数据需要存储之外,一些描述信息也需要存储,例如文件类型(常规.目录.符号链接等),权限,文件大小,创建/修改/访问时间等,也就是ls -l命令看到的那些信息,这些信息存在inode中而不是 ...
- map--C++ STL 学习
map–C++ STL 学习 Map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据处理能力. 说下map内 ...
- python django -7 Git与项目
git的使用,主要包括: 本地仓库的命令 远程仓库的命令 项目需求.页面.模型类的设计,及页面的使用 Git简介 Git是目前世界上最先进的分布式版本控制系统 安装 sudo apt-get inst ...
- Unity3D学习笔记——IDE工作视图
Unity3D中五个界面的使用: Project视图:存放游戏资源,比如贴图,音频,JS脚本等 Project中可创建的文件如下: Hierarchy视图:主要存放游戏场景中的对象,如摄像机,精灵,箱 ...
- poj 2594(可相交的最小路径覆盖)
题目链接:http://poj.org/problem?id=2594 思路:本来求最小路径覆盖是不能相交的,那么对于那些本来就可达的点怎么处理,我们可以求一次传递闭包,相当于是加边,这样我们就可以来 ...
- 使用jsx语法环境搭建
1.安装nodejs.nodejs安装后会自带npm,可以用 npm -v 进行查看版本.使用 npm install npm -g 更新文档. 2.创建自己项目,在你的项目路径下执行npm init ...
- 事务处理笔记《一》ADO.NET级别的事务
现在我们对事务的概念和原理都有所了解了,并且作为已经有一些基础的C#开发者,我们已经熟知编写数据库交互程序的一些要点,即: (1)使用SqlConnection类的对象的Open()方法建立与数据库服 ...
- sql server 2008 对字段的操作
添加,刪除字段 通用式: alter table [表名] add [字段名] 字段属性 default 缺省值 default 是可选参数 增加字段: 增加数字字段,整型,缺省值为0 增加数字 ...
- MVC路由自定义及视图找寻规则
这篇关于MVC路由及视图规则本来是昨天要发的,但是本人真的有点懒,终于今天忍无可忍了.初学MVC的时候比现在还菜一点(现在也很菜),想着会用就行,但是有时还是会好奇,为什么它能找到控制器?为什么控制器 ...
- cocos2d-x-3.1rc0中找不到"extensions/ExtensionMacros.h"的问题
笔者导入UI编辑器的资源时,提示无法打开包括文件:“extensions/ExtensionMacros.h”: No such file or directory” 然后参考了3.0的一篇文章.得出 ...