Linux系统监听socket命令
Linux系统监听socket命令详细介绍
在 Linux 系统中,你可以使用不同的命令来监听套接字(socket),以下为你介绍几个常用命令:
netstat
netstat 命令可用于显示网络连接、路由表和网络接口等信息。你能够用它来查看哪些进程正在监听特定的套接字。
bash
-t:显示 TCP 连接。-u:显示 UDP 连接。-l:仅显示监听中的套接字。-n:以数字形式显示地址和端口,而非解析主机名和服务名。
ss
ss 是 netstat 的替代品,它速度更快,且能提供更多信息。
bash
ss
参数含义和 netstat 中的一致,同样用于显示正在监听的 TCP 和 UDP 套接字。
lsof
lsof(list open files)命令可列出所有打开的文件和套接字。
bash
LISTEN
-i:显示所有网络连接相关的文件。-P:不将端口号转换为服务名。-n:以数字形式显示地址和端口。grep LISTEN:仅显示处于监听状态的套接字。
示例
下面是使用 ss 命令查看监听套接字的示例:
bash
ss
运行此命令后,你会看到类似如下的输出:
plaintext
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Portudp UNCONN 0 0 0.0.0.0:5353 0.0.0.0:*
udp UNCONN 0 0 127.0.0.53:53 0.0.0.0:*
udp UNCONN 0 0 0.0.0.0:68 0.0.0.0:*
tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
tcp LISTEN 0 128 127.0.0.1:631 0.0.0.0:*
91234567Netid State Recv-Q Send-Q Local Address:Port Peer Address:Portudp UNCONN 0 0 0.0.0.0:5353 0.0.0.0:*udp UNCONN 0 0 127.0.0.53:53 0.0.0.0:*udp UNCONN 0 0 0.0.0.0:68 0.0.0.0:*tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:*tcp LISTEN 0 128 127.0.0.1:631 0.0.0.0:*
此输出显示了正在监听的 UDP 和 TCP 套接字,以及它们的本地地址和端口。