linux系统代替 vx,Linux运维:如何使用ss代替netstat命令

在运维和管理Linux服务器的时候,我们最常用的就是netstat命令,我常用这个命令来查看当前服务器上有哪些进程正在侦听端口,主要用来诊断网络服务的工作状态。当然如果想代运维服务器,可以联系景安网络。

不过,最近有一次安装好一个 Ubuntu 发型版,发现默认没有netstat命令,觉得非常奇怪,自己手动安装后,发现 man pages 提示,netstat命令已经是deprecated 了,建议使用 ss 命令代替。

100942soipw529f9f21l7i.png

This program is mostly obsolete. Replacement for netstat is ss. Replacement for netstat -r is ip route. Replacement for netstat -i is ip -s link. Replacement for netstat -g is ip maddr.netstat man pages

netstat 的用法

netstat 有许多许多参数,我一般就用一种组合,以至于后来已经想不起来为什么是这几个参数了:netstat -npl

得到的结果是这样的:Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name

tcp        00127.0.0.53:530.0.0.0:*               LISTEN655/systemd-resolve

tcp        000.0.0.0:220.0.0.0:*               LISTEN890/sshd

tcp        00127.0.0.1:6310.0.0.0:*               LISTEN30790/cupsd

tcp        000.0.0.0:180250.0.0.0:*               LISTEN890/sshd

tcp6       00:::22:::*                    LISTEN890/sshd

tcp6       00::1:631:::*                    LISTEN30790/cupsd

tcp6       00:::9090:::*                    LISTEN15415/./prometheus

tcp6       00:::18025:::*                    LISTEN890/sshd

udp        00127.0.0.53:530.0.0.0:*655/systemd-resolve

udp        000.0.0.0:6310.0.0.0:*30792/cups-browsed

udp        000.0.0.0:53530.0.0.0:*757/avahi-daemon: r

udp        000.0.0.0:423600.0.0.0:*757/avahi-daemon: r

udp6       00:::58232:::*757/avahi-daemon: r

udp6       00:::5353:::*757/avahi-daemon: r

Active UNIX domain sockets (only servers)

Proto RefCnt Flags       Type       State         I-Node   PID/Program name     Path

unix  2[ ACC ]     STREAM     LISTENING351161304/gnome-session-  @/tmp/.ICE-unix/1304

unix  2[ ACC ]     SEQPACKET  LISTENING14481/init               /run/udev/control

unix  2[ ACC ]     STREAM     LISTENING342771270/systemd         /run/user/1000/systemd/private

unix  2[ ACC ]     STREAM     LISTENING342821270/systemd         /run/user/1000/gnupg/S.gpg-agent.ssh

unix  2[ ACC ]     STREAM     LISTENING335101270/systemd         /run/user/1000/gnupg/S.gpg-agent

unix  2[ ACC ]     STREAM     LISTENING335111270/systemd         /run/user/1000/pulse/native

unix  2[ ACC ]     STREAM     LISTENING335121270/systemd         /run/user/1000/gnupg/S.gpg-agent.extra

最常用的就是这个命令组合,展示的结果有两个段落,第一个段落展示的是 TCP/UDP 协议的侦听情况,第二个段落展示的是 socks 文件的侦听情况。参数 n 的意思是展示数字格式的 IP 地址,不然会展示主机名称或者是域名,参数 p 的意思显示进程的名字(有时候显示不出来),l 的意思,是关注处于 LISTENING 状态的 socket。

通过如上命令,我们看到了系统所有打开的 socket,如果你启动一种网络服务也好,自己开发一个网络服务打开端口也好,通过这个命令都应该能看到自己打开的端口,如果看不到,应该就是没有能够正确打开端口,要好好查询是什么原因。所以这是一个很好用的调试命令。

ss 的用法

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

这是我自己摸索的一个参数组合,目前我背诵得还不是很流利,每次还需要看一下文档:State          Recv-Q           Send-Q                      Local Address:Port                       Peer Address:Port

LISTEN         0128127.0.0.53%lo:domain0.0.0.0:*              users:(("systemd-resolve",pid=655,fd=13))

LISTEN         01280.0.0.0:ssh0.0.0.0:*              users:(("sshd",pid=890,fd=5))

LISTEN         05127.0.0.1:ipp0.0.0.0:*              users:(("cupsd",pid=30790,fd=7))

LISTEN         01280.0.0.0:18025&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值