ss 正在取代 netstat,我怎样才能让它像我习惯的那样列出端口?

azz*_*zid 8 linux command-line networking socket netstat

我一直在尝试使用 Linux 使我的方式现代化,一方面,放弃 netstat 为 ss。我在 ss 手册页中查找了我最喜欢的 netstat 命令行标志,很高兴地发现它netstat -lnpss -lnp. 或者我以为...

# ss -lnp | grep 1812
Run Code Online (Sandbox Code Playgroud)

什么都没有,但是

# netstat -lnp | grep 1812
udp        0      0 0.0.0.0:1812            0.0.0.0:*                           11103/radiusd
Run Code Online (Sandbox Code Playgroud)

做。这一事实使特定的故障排除变得不必要地更加困难。

现在我试图了解我应该如何使用 ss 来验证守护进程是否在监听。

有人可以解释一下吗?

编辑:

# ss --version
ss utility, iproute2-ss090324
# ss -aunp | grep radi
UNCONN     0      0                         *:50482                    *:*      users:(("radiusd",11103,11))
UNCONN     0      0                 127.0.0.1:18120                    *:*      users:(("radiusd",11103,9))
UNCONN     0      0                         *:1812                     *:*      users:(("radiusd",11103,6))
UNCONN     0      0                         *:1813                     *:*      users:(("radiusd",11103,7))
UNCONN     0      0                         *:1814                     *:*      users:(("radiusd",11103,10))
# ss -lnp | grep radi
#
Run Code Online (Sandbox Code Playgroud)

wur*_*tel 5

的最新版本也ss应该以这种方式显示 UDP 侦听器。您可以使用ss -unlp.

我尝试了一个最近的 Debian 版本,其中ss --version报告ss utility, iproute2-ss140804确实有效。

在带有ss utility, iproute2-ss061002它的Red Hat 5 系统上没有。您确实在那里获得了更多信息,ss -aunp尽管它也显示了连接的端口。

你也可以试试:

ss -apu state unconnected 'sport = :1812'
Run Code Online (Sandbox Code Playgroud)