命令

netstat -tulnpe 这是一个组合了多个参数的 netstat 命令,用于显示当前系统的网络连接和监听端口信息。


参数解析

  1. -t
    显示 TCP 协议相关的网络连接和监听端口。

  2. -u
    显示 UDP 协议相关的网络连接和监听端口。

  3. -l
    仅显示处于 监听(LISTEN)状态 的端口,即等待接受外部连接的端口。

  4. -n
    以 数字形式 显示地址和端口号,不进行 DNS 解析或服务名称转换(例如显示 80 而非 http)。

  5. -p
    显示 进程 ID(PID)和程序名称,便于识别哪个程序在使用该端口。

  6. -e
    显示 扩展信息,包括用户 ID(UID)、套接字状态等额外详情。


组合效果

  • -tuln:显示所有 TCP 和 UDP 的监听端口,以数字形式输出。
  • -pe:在基础信息上,附加进程信息和扩展详情。
  • 最终输出:列出所有 TCP/UDP 监听端口,包含端口号、进程 ID、程序名、用户 ID 等。

典型应用场景

  1. 排查端口占用:快速定位某个端口被哪个进程占用(需 sudo 权限查看所有进程)。
    sudo netstat -tulnpe | grep 80
    
  2. 监控服务状态:确认 Web 服务器、数据库等服务的监听状态。
  3. 安全审计:检查是否有未知程序在后台监听端口。

注意事项

  • 需 root 权限 才能查看所有进程信息,普通用户可能无法显示部分进程。
  • 若需实时刷新信息,可添加 -c 参数(如 netstat -tulnpec)。

通过此命令,可以高效诊断网络服务和连接问题,建议结合 grep 进一步过滤输出结果。