如何在 Rocky Linux 9 中通过 ss 检查网络端口的监听状态?

问题浏览数Icon
22
问题创建时间Icon
2025-03-04 11:32:00
作者头像
earwind33

在Rocky Linux 9中检查网络端口监听状态时,我通常通过ss命令结合不同参数实现。例如执行 ss -tuln 查看所有TCP/UDP监听端口(-t表TCP,-u表UDP,-l表监听状态,-n禁止域名解析)。若需关联进程信息,会追加-p参数并要求sudo权限,如 sudo ss -tlpn

实践中曾遇到因SELinux策略阻止显示进程名的案例,通过setenforce 0临时关闭SELinux后定位到异常进程。另一个常见问题是监听地址为127.0.0.1导致外部无法访问,此时用ss -tln src 127.0.0.1:80可快速验证绑定地址。

关键技巧包括:通过grep过滤特定端口(如ss -tln | grep :443)、使用-o显示TCP定时器状态排查连接卡顿、对比netstat -ant结果验证传统工具兼容性。需注意ss默认依赖内核3.15+版本,在容器环境中可能存在/proc/net限制。

更多回答

作者头像
yunyan01

作为客户技术经理,我的建议是:1. 使用 ss -tuln 命令查看所有TCP/UDP监听端口(-t=TCP, -u=UDP, -l=LISTEN状态, -n=数字格式)。2. 对特定端口可加 sport = :端口号 过滤,例如 ss -tuln sport = :80。3. 结合 grep 过滤更直观,如 ss -tuln | grep 80。注意:需root权限查看所有进程,且Rocky Linux 9默认已预装ss工具,无需额外安装。

作者头像
swanjune77
  1. 打开终端,使用以下命令检查监听端口:

  2. 检查所有监听端口(含TCP/UDP): sudo ss -tulnpl • -t 显示TCP端口 • -u 显示UDP端口 • -l 仅显示监听状态 • -n 禁用域名解析(显示数字端口) • -p 显示占用进程

  3. 单独检查TCP监听端口: ss -tln

  4. 单独检查UDP监听端口: ss -uln

  5. 检查指定端口(例如80端口): ss -tln sport = :80

  6. 按IP过滤(例如检查192.168.1.100的监听): ss -tln src 192.168.1.100

注:若未安装ss命令,需先执行 sudo dnf install iproute -y

作者头像
ecnight01

作为IT架构师,建议通过以下步骤使用 ss 命令检查网络端口监听状态:

  1. 基本监听检查ss -tuln 显示所有TCP/UDP监听端口(-t: TCP, -u: UDP, -l: 监听状态,-n: 数字格式)。
  2. 过滤特定端口ss -tuln sport = :<端口号> 或结合 grep,例如 ss -tuln | grep ':80'
  3. 进程关联:添加 -p 参数(需root权限)查看占用进程,如 sudo ss -tulnp
  4. 解释输出:关注 Local Address:Port 列及 State 列(LISTEN表示监听中)。 补充:确保防火墙(firewalld/iptables)未阻止端口,并确认服务配置正确监听目标IP(如0.0.0.0 vs 127.0.0.1)。
作者头像
xiaoxiong9

在Rocky Linux 9中使用命令 ss -tuln 查看网络监听端口,该命令显示TCP/UDP监听状态并以数字格式呈现地址和端口。