Linux服务器连接数怎么查

查看Linux连接数常用命令: ,1. 使用 netstat -ant | wc -l 统计TCP连接总数。 ,2. 通过 ss -s 查看汇总信息(更高效)。 ,3. 指定状态如 netstat -ant | grep ESTABLISHED | wc -l 统计已建立连接。 ,4. netstat -tunss -tun 可显示详细连接信息。

Linux系统查看连接数:详细指南与实用技巧

在服务器管理和网络监控中,查看网络连接状态是最基础的技能之一,掌握这些方法能帮助您快速诊断网络瓶颈和安全问题。

Linux服务器连接数怎么查

在Linux系统中,网络连接数是衡量服务器负载、检测异常活动以及优化性能的关键指标,当服务器响应变慢或出现网络故障时,查看当前连接状态通常是排查问题的第一步,以下是我在多年Linux系统管理实践中总结的高效查看连接数方法。

📊 核心工具查看连接状态

经典工具 netstat(推荐基础使用)

# 查看所有TCP连接
netstat -ant
# 查看统计信息(按状态分组)
netstat -ant | awk '/^tcp/ {print $6}' | sort | uniq -c

参数解析:

  • -a:显示所有连接和监听端口
  • -n:以数字形式显示地址和端口
  • -t:仅显示TCP连接-u用于UDP)

输出示例:

ESTABLISHED 120
TIME_WAIT   85
LISTEN      10

解读指南:

  • ESTABLISHED:当前活跃连接
  • TIME_WAIT:等待关闭的连接(大量出现可能需调整内核参数)
  • LISTEN:服务监听端口

高效工具 ss(netstat的现代替代)

# 查看所有TCP连接(比netstat速度更快)
ss -t -a
# 按状态统计连接数
ss -s

参数优势:

Linux服务器连接数怎么查

  • 直接读取内核数据,效率更高
  • 支持更丰富的过滤功能
  • 显示更详细的套接字信息

统计输出示例:

Total: 256
TCP:   184 (estab 120, closed 40, orphaned 0, timewait 24)

文件系统查看 /proc/net/tcp

# 直接读取内核TCP连接信息
cat /proc/net/tcp
# 格式化输出(需安装iproute2)
cat /proc/net/tcp | awk '{print $2,$3,$4,$5}' | column -t

字段解释:

  • 本地地址(十六进制IP:端口)
  • 远程地址(十六进制IP:端口)
  • 连接状态(16进制值)
  • 队列信息

状态码参考:

  • 0A:LISTEN
  • 01:ESTABLISHED
  • 06:TIME_WAIT

🔍 进阶分析方法

按服务进程查看连接

# 查看各进程的连接数
lsof -i TCP -n | awk '{print $1}' | sort | uniq -c | sort -nr
# 查看特定进程连接(如nginx)
lsof -i -P -n | grep nginx

实时监控连接变化

# 每2秒刷新连接状态
watch -n 2 "netstat -ant | awk '{print $6}' | sort | uniq -c"

分析高连接IP

# 统计访问最多的前10个IP
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n | tail -10

🛠️ 性能优化与安全监控

调整内核参数(解决TIME_WAIT过多)

# 编辑sysctl.conf
sudo nano /etc/sysctl.conf
# 添加以下参数
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_fin_timeout = 30
# 应用配置
sudo sysctl -p

检测异常连接

# 找出连接数异常的IP(>100连接)
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | awk '$1 > 100'

📈 可视化工具推荐(适合长期监控)

  1. iftop:实时带宽监控
    sudo iftop -P
  2. nethogs:按进程分组流量
    sudo nethogs
  3. Prometheus+:Grafana企业级监控方案

💎 总结与最佳实践

工具/方法 适用场景 优势
netstat 快速基本检查、兼容性要求 系统自带、语法简单
ss 专业排查、高性能服务器 速度极快、信息详细
lsof 进程级连接分析 精确关联进程
/proc 内核级数据分析 无依赖、原始数据
可视化工具 长期监控/趋势分析 直观展示、历史记录

专业建议:

  1. 日常监控使用 ss -s 快速获取连接统计
  2. 排查异常时结合 lsofss 精确定位问题进程
  3. 对于生产环境,建议部署Prometheus等专业监控系统
  4. 定期分析连接日志,建立基线以便发现异常波动

在Web服务器场景中,TIME_WAIT连接数通常是正常值的3倍左右属于合理范围,超过此比例可能需要优化TCP参数或检查程序连接管理逻辑。

Linux服务器连接数怎么查

掌握这些连接数查看技巧,将使您能够快速诊断服务器性能瓶颈、发现潜在安全威胁(如DDoS攻击)并优化应用性能,最有效的监控是持续性的——建立连接趋势图比单次检查更能揭示问题本质。


参考资料:

  1. Linux man pages (netstat/ss/lsof)
  2. Red Hat性能调优指南
  3. Linux内核文档 (Documentation/networking/proc_net_tcp.txt)
  4. W. Richard Stevens《UNIX网络编程》

原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/15253.html

(0)
酷盾叔的头像酷盾叔
上一篇 2025年6月8日 10:31
下一篇 2025年6月8日 10:38

相关推荐

  • 如何在Linux中访问回收站?

    Linux图形界面中,删除的文件通常进入桌面环境(如GNOME、KDE)的回收站,打开文件管理器(如Nautilus、Dolphin),在侧边栏或主界面查找”回收站”图标点击即可访问。**注意:** 命令行rm删除的文件**不会**进入回收站,会被直接永久删除。

    2025年6月29日
    7700
  • Linux账户意外被锁?3分钟自救指南!

    要解封被锁定的Linux用户账号,需root权限执行: ,1. **检查锁定状态**:passwd -S 用户名 或查看/etc/shadow ,2. **解锁账号**: , – **密码锁定**:passwd -u 用户名 或 usermod -U 用户名 , – **过期锁定**:chage -E never 用户名 (取消过期时间) ,3. **重置密码**:passwd 用户名 ,操作后验证登录即可恢复使用。

    2025年5月30日
    4300
  • Linux如何快速查显卡型号?

    Linux查看显卡型号常用命令:,1. lspci | grep -i vga 直接显示显卡信息,2. lshw -C display 需管理员权限,显示详细显卡型号,3. hwinfo –gfxcard 安装hwinfo后使用,输出显卡详情

    2025年6月10日
    3300
  • 嵌入式linux如何开发板

    式 Linux 开发板需选合适硬件平台,安装系统,配置环境,编写驱动与应用程序

    2025年8月8日
    2800
  • Linux账户安全最佳配置指南

    使用普通账户日常操作,仅需管理员权限时通过sudo提权,强制设置强密码并定期更换,禁用root账户直接远程登录,改用密钥认证,定期审计账户权限。

    2025年6月24日
    5300

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN