站长网 经验 Linux运维:使用ss命令交换netstat

Linux运维:使用ss命令交换netstat

副标题#e# 上面介绍了 netstat 的最最基本的一种用法,其他用法当然还有很多,但是先略过不表,如果想使用 ss 命令来代替 netstat 的话,我们怎样达到类似的效果呢? ss-atlp 这是我自己摸索的一个参数组合,目前我背诵得还不是很流利,每次还需要看一下文

副标题#e#

上面介绍了 netstat 的最最基本的一种用法,其他用法当然还有很多,但是先略过不表,如果想使用 ss 命令来代替 netstat 的话,我们怎样达到类似的效果呢?

ss -atlp 

这是我自己摸索的一个参数组合,目前我背诵得还不是很流利,每次还需要看一下文档:

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

LISTEN         0                128                         127.0.0.53%lo:domain                          0.0.0.0:*              users:(("systemd-resolve",pid=655,fd=13)) 

LISTEN         0                128                               0.0.0.0:ssh                             0.0.0.0:*              users:(("sshd",pid=890,fd=5)) 

LISTEN         0                5                               127.0.0.1:ipp                             0.0.0.0:*              users:(("cupsd",pid=30790,fd=7)) 

LISTEN         0                128                               0.0.0.0:18025                           0.0.0.0:*              users:(("sshd",pid=890,fd=3)) 

LISTEN         0                128                                  [::]:ssh                                [::]:*              users:(("sshd",pid=890,fd=6)) 

#p#副标题#e#

LISTEN         0                5                                   [::1]:ipp                                [::]:*              users:(("cupsd",pid=30790,fd=6)) 

LISTEN         0                128                                     *:9090                                  *:*              users:(("prometheus",pid=15415,fd=3)) 

#p#副标题#e##p#分页标题#e#

LISTEN         0                128                                  [::]:18025                              [::]:*              users:(("sshd",pid=890,fd=4)) 

这是 ss 命令呈现出来的结果,可以看到,格式和 netstat 很不一样,不像 netstat 命令那么紧凑和直观。这是很多人诟病这个命令的原因之一。当然,批判这种批判的声音认为,人们只是死守了一种习惯,不愿前行。当然了,这么说也未尝不对,就拿 Charles 个人来说,就算我 2010 年参加工作,才学会 netstat 命令,那我到现在也使用了将近十年,从来没有变过,当然看得无比顺眼啦。

当然,也有一种理由是老外提出来的,说 ss 这个命令的名字不好,其实 ss 可能是 socket statistics 的意思,缩写以后,竟然只有两个字母,不太好联想,不像 netstat 那么直观。当然这是我的解释,不是老外抱怨的理由,他们抱怨的是,每每提及 ss,他们会联想起希特勒!是不是匪夷所思,我是 80 后,我这个年代的人,对这个都没有什么印象,关键我们用中文为主,估计大家看到 ss 最多联想到梯子,怎么都不会想到希特勒。这个大纳粹有一个武装部队,以前叫党卫队特别机动部队,后来改名叫武装党卫队。它的德语简称正是SS。

不说闲话了,说说几个参数,a 参数是显示所有的意思,t 参数意思是显示 TCP 协议的,l 代表正在 LISTENING 状态的,p 代表进程信息。从上面的表里,我们看到 p 参数打印的信息,组织得不如 netstat 精炼。但是更为完善一点,显示了进程名字和 PID 以及 FD。但是因为用了两重小括号,key/value 的格式,再加引号,看起来脏乱差。当然,我们可以用一些命令去格式化它,不过还是太麻烦了。

更换的原因是什么?

这可能是我最为好奇的事情。不过网上我搜索了不少的资料,基本都语焉不详。这也有点让我有点无奈。

大体上,我们能看出来,主要是 net-tools 这个包,将要被 iproute 这个包给替换。理由大概是,1,这个包太老了,2,这个包不支持很多内核新的特性(但是没有说是哪些特性),界面不够优化使用困难(对命令行不友好),3,net-tools 里面的 ifconfig 确实缺点多多,4,未来不再想维护 net-tools 了。

本文来自网络,不代表站长网立场,转载请注明出处:https://www.tzzz.com.cn/html/chuangye/jingyan/2021/0527/7115.html

作者: dawei

【声明】:站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。
联系我们

联系我们

0577-28828765

在线咨询: QQ交谈

邮箱: xwei067@foxmail.com

工作时间:周一至周五,9:00-17:30,节假日休息

返回顶部