如何在 Rocky Linux 中使用 netstat 工具查看网络连接?

问题浏览数Icon
26
问题创建时间Icon
2025-06-14 21:37:00
作者头像
ptwenwen

在 Rocky Linux 中使用 netstat 查看网络连接的步骤如下:

  1. 安装 net-tools(若未预装):

    sudo dnf install net-tools -y
  2. 常用命令示例

    • 查看所有活动的网络连接:
      netstat -a
    • 仅显示 TCP/UDP 连接及监听端口:
      netstat -tuln
    • 查看进程关联的连接(需 root 权限):
      sudo netstat -tulp
    • 显示统计信息(如丢包、错误):
      netstat -s
  3. 参数解释

    • -t:TCP 协议
    • -u:UDP 协议
    • -l:仅监听中的端口
    • -n:以数字格式显示地址和端口
    • -p:显示关联的进程/程序
  4. 替代方案: 系统默认的 ss 工具性能更优(用法类似):

    ss -tulnp

提示:若需持续监控连接变化,可结合 watch 命令,如 watch -n 1 netstat -tuln

更多回答

作者头像
tianhe01

在Rocky Linux中使用netstat查看网络连接,建议遵循以下架构师级实践:

  1. 优先验证net-tools是否安装(dnf list installed net-tools),未安装时通过EPEL源安装以保证版本稳定性
  2. 生产环境中推荐组合使用grep过滤(如netstat -tulnp | grep :80),避免全量输出影响故障排查效率
  3. 对容器化环境需注意namespace隔离,建议通过nsenter进入容器namespace执行
  4. 从可维护性角度,长期建议迁移至ss替代方案(ss -tunlp),其内核态处理效率更高且默认预装
  5. 高危操作应通过审计日志记录(配合suders配置),确保符合企业安全合规要求
作者头像
mingyue01

在Rocky Linux上用netstat查网络连接很简单!先装net-tools,输命令 sudo dnf install net-tools。装完后直接netstat -a就能看到所有连接。想看TCP就加-t,比如netstat -at;想看监听中的端口用-l,比如netstat -tuln。要查具体程序就把-p加上,记得这时候得用sudo权限哦~

作者头像
yuanliang88

在 Rocky Linux 中,使用 netstat 查看网络连接的步骤如下:

  1. 安装 net-toolssudo dnf install net-tools(若未安装)。
  2. 查看所有连接:netstat -a;查看TCP/UDP连接:netstat -tun;查看监听端口:netstat -lntu;显示进程信息:netstat -p

延伸知识点:网络连接状态详解
使用 netstat -tunp 时,常见状态包括:

  • LISTEN:服务正在监听端口,等待连接(如Web服务器)。
  • ESTABLISHED:双方已建立连接并传输数据。
  • TIME_WAIT:连接正常关闭后,防止残留数据干扰新连接的等待状态。
  • CLOSE_WAIT:对方关闭连接后,本地未调用close()的残留状态(可能需检查程序逻辑)。
  • SYN_SENT:客户端发起连接请求后等待响应。
    通过状态可排查问题,例如大量TIME_WAIT可能属正常,但过多CLOSE_WAIT通常提示程序异常。
作者头像
chaoyang66

在Rocky Linux中使用netstat查看网络连接时,需结合实践经验和系统特性操作。以下是具体步骤与经验总结:

  1. 安装net-tools Rocky Linux 9+默认未预装netstat,需先执行:

    sudo dnf install net-tools -y

    注:企业环境中可能需通过内部仓库安装,遇到依赖冲突时可添加--skip-broken参数

  2. 基础查询命令

    • 查看所有连接(含进程信息):
      sudo netstat -tulnp

      使用-p参数时需root权限,生产环境中可能受SELinux策略限制

    • 过滤ESTABLISHED连接:
      netstat -ant | grep ESTABLISHED | awk '{print $5}' | cut -d: -f1 | sort | uniq -c

      该命令常用于检测异常外联

  3. 实践挑战与解决方案

    • 性能瓶颈:当连接数超过5万时,传统netstat解析耗时可能达10秒+。改用ss -tunap效率提升90%
    • 容器化环境限制:在Podman/Docker容器中无法直接查看宿主机连接,需通过nsenter进入宿主命名空间
    • IPv6解析问题:使用-n禁止域名解析避免延时,但需同时配合lsof -i定位具体进程路径
    • 瞬时连接捕捉:结合watch命令实现动态监控:
      watch -n 2 'netstat -ant | grep SYN_RECV'

      用于检测SYN Flood攻击

  4. 排错案例 某次KVM虚拟机迁移后出现随机断连,通过:

    netstat -s | grep -E 'retrans|segments lost'

    发现TCP重传率超15%,最终定位到vSwitch的TSO/GRO功能与VMXNET3驱动兼容性问题。

建议在自动化运维中改用ss+jq进行JSON格式化输出,但netstat在遗留脚本兼容性和运维人员习惯培养方面仍具有存在价值。

作者头像
leifeng01
  1. 安装netstat工具(若未预装): sudo dnf install net-tools -y

  2. 常用命令示例:

    • 查看所有连接(含监听/非监听): netstat -a
    • 显示TCP连接与监听端口: netstat -tunlp (参数解析:t=TCP u=UDP n=禁用域名解析 l=监听状态 p=进程信息)
    • 实时刷新所有连接(按Ctrl+C退出): netstat -c

注意:需root权限查看完整进程信息,建议搭配sudo netstat使用