- 工信部备案号 滇ICP备05000110号-1
- 滇公网安备53011102001527号
- 增值电信业务经营许可证 B1.B2-20181647、滇B1.B2-20190004
- 云南互联网协会理事单位
- 安全联盟认证网站身份V标记
- 域名注册服务机构许可:滇D3-20230001
- 代理域名注册服务机构:新网数码
- CN域名投诉举报处理平台:电话:010-58813000、邮箱:service@cnnic.cn
Linux服务器带宽跑满了的基本排查方法
欢迎来到8455线路检测中心技术小课堂,每天分享一个技术小知识。
一、问题现象与初步判断
当Linux服务器出现服务响应缓慢、请求超时或无法访问时,带宽跑满往往是首要怀疑对象。通过云监控平台或系统工具观察,若公网出方向带宽使用率持续高于80%或达到上限,即可初步判定为带宽异常问题。带宽跑满主要分为两种情况:一是由正常业务流量(如外部用户下载资源)导致;二是由非正常服务流量(如服务器被入侵后对外攻击)引发。由于大部分云服务商对流入带宽不做限制,因此排查重点通常集中在服务器流出带宽上。
二、系统化排查流程
步骤一:定位高流量网卡
首先需要确定是哪一张网卡的带宽异常。可以使用 sar (System Activity Reporter) 工具来获取网卡级别的流量数据。
# 安装sysstat包(如未安装)
yum install sysstat -y
# 每1秒采样一次,连续采样5次,统计网络设备信息
sar -n DEV 1 5
命令执行后,会列出每个网卡在采样周期内的平均数据。重点关注输出结果中 txkB/s(平均出网带宽)数值最高的 IFACE(网卡名称),例如 eth0 或 eth1。在典型的云服务器中,eth0 常为内网网卡,eth1 为外网网卡。
步骤二:分析流量来源与性质
定位到高流量网卡后,需进一步分析是哪些连接或进程占用了带宽。根据排查视角的不同,主要使用两类工具:
以“连接视角”分析(定位对端IP和端口) 使用 iftop 工具可以实时监控网卡流量,找出与本机通信且流量最大的IP地址和端口。
# 安装iftop
yum install iftop -y # CentOS/Alibaba Cloud Linux
apt-get install iftop # Ubuntu/Debian
# 监控指定网卡,并显示端口号
sudo iftop -i eth1 -P
在 iftop 界面中,=> 符号指示的流量代表本机向对端IP发送数据的速率。通过观察,可以快速识别出消耗带宽最大的IP地址。若发现大量流量来自自身服务器IP,则可能是程序存在内部循环请求等代码问题。
以“进程视角”分析(定位高流量进程) 使用 nethogs 工具可以监控每个进程的网络带宽使用情况,并按消耗排序。
# 安装nethogs
yum instal nethogs -y # CentOS/Alibaba Cloud Linux (需EPEL源)
apt-get install nethogs # Ubuntu/Debian
# 监控指定网卡
sudo nethogs eth1
nethogs 会列出进程的PID、用户、发送(SENT)和接收(RECEIVED)流量,便于直接定位到异常进程,如 wget、curl 或未知的恶意程序。
步骤三:结合日志进行深度诊断
对于Web服务,在通过 iftop 定位到高流量IP后,应结合 logwatch 等工具分析该IP的访问日志,判断其请求是否属于正常业务行为。同时,可以使用 netstat 命令查看端口对应的具体进程:
sudo netstat -antp | grep <消耗带宽的对端IP>
三、问题处置与解决方案
根据排查结果,采取相应的处置措施:
情况一:异常进程或恶意流量 若定位到的进程行为可疑(如未知程序),或其通信的对端IP为非法地址,需立即采取安全措施:
1.终止异常进程:使用 sudo kill -15
2.拦截非法IP:通过配置服务器防火墙或云平台安全组规则,拦截恶意IP地址的访问。
3.查杀恶意程序:使用云安全中心的病毒查杀功能,或手动进行全盘检查,清理木马、挖矿程序等。对于利用PHP函数(如fsockopen)进行的DDoS攻击,可临时禁用相关函数并检查程序代码。
情况二:正常业务流量过大 若高流量由Nginx、Apache等正常业务进程产生,表明当前带宽规格已成为业务瓶颈,可采取以下优化或扩容措施:
1.优化程序与资源:检查业务代码,减少不必要的数据传输或内部循环调用。对网站资源进行优化,例如压缩图片、对静态文件启用GZIP压缩(需权衡CPU消耗)、降低视频码率或取消自动播放。
2.实施访问控制与限速:通过分析访问日志,对异常下载行为的IP进行访问限制。在业务允许的情况下,使用 iptables 等工具对特定IP或端口进行流量限速。
3.架构优化:使用CDN(内容分发网络) 将静态资源分发到边缘节点,是减轻源站带宽压力的有效建议。
4.升级带宽:如果经过优化后,带宽依然是瓶颈,则表明当前实例的网络规格已无法承载业务发展,应考虑升级服务器带宽。
情况三:网络攻击 如果确定是遭受DDoS攻击等导致入带宽被占满,除了上述拦截IP措施外,还应考虑购买DDoS原生防护或高防产品,提升整体安全防护能力。
四、常用监控工具概览
除了上述核心工具,Linux生态中还有其他实用的带宽监控工具,可按需选用:
监控总体带宽:nload(实时图表显示)、bmon(支持图表与剖面)、vnstat(历史数据报告)。
监控每个连接带宽:iptraf(交互式色彩监控)、tcptrack。
监控每个进程带宽:主要工具为 nethogs。
五、总结与建议
服务器带宽跑满的排查应遵循“定位网卡 -> 分析连接/进程 -> 结合日志判断 -> 分类处置”的系统化流程。日常运维中,建议对系统指标进行周期性采集与分析(如使用 atop 工具),并配置实例监控与告警,以便及时发现潜在风险。通过结合监控、分析、优化与扩容等多种手段,才能有效保障网络服务的稳定与高效。
8455线路检测中心官网上拥有完善的技术支持库可供参考,大家可自行查阅,更多技术问题,可以直接咨询。同时,8455线路检测中心整理了运维必备的工具包免费分享给大家使用,需要的朋友可以直接咨询。
更多技术知识,8455线路检测中心期待与你一起探索。
售前咨询
售后咨询
备案咨询
二维码

TOP