写点什么

看阿里云操作系统控制台如何一招擒拿网络丢包

  • 2025-07-10
    北京
  • 本文字数:2729 字

    阅读完需:约 9 分钟

大小:1.30M时长:07:33
看阿里云操作系统控制台如何一招擒拿网络丢包

背景


在云计算日益增长与业务大规模上云的背景下,网络的高质量通讯则是维护业务高效运行的重要保障。数据包丢失(Packet Loss)作为现代网络架构中的核心挑战,可能引发多维度的业务风险:在业务部署阶段或运行过程中,丢包现象轻则导致通信中断、数据传输异常,造成业务逻辑执行偏差;重则触发运维系统中的健康检查失败、Ping 不通及拒绝服务等连锁故障。


近期有客户在新区域部署业务集群时遭遇严重网络丢包问题,导致业务部署停滞并产生持续性成本消耗。这个问题直接导致了客户的生产部署停滞,那这么严重的问题难道需要很多时间和精力来排查吗?并不!在使用了阿里云操作系统控制台(https://alinux.console.aliyun.com/)(简称“操作系统控制台”)后,客户快速定位问题,不仅成功完成业务部署并实现稳定运行,更有效遏制了持续性成本消耗。

下面,我们将结合实际案例,来介绍如何使用操作系统控制台的丢包诊断解决丢包问题。

通过丢包诊断分析定位问题根因


场景一:问题快速定界


某消息服务客户在阿里云 ACK(阿里云 Kubernetes 服务)新区域部署集群时遭遇系统性健康检查异常,导致业务部署流程全面受阻。因此,需要排查健康检查失败的原因。


结合以往运维经验来看,大部分情况下在检查了 iptable 没有问题以后,基本上都会怀疑到内核丢包上面去。如果要排查内核丢包问题,过程比较繁琐且困难。因为在排查内核丢包问题的时候,需要排查人员对数据包在内核代码比较熟悉,对数据流经的合适函数入口结合 hook 点来监控数据包流向。整个过程无论是对排查人员的专业程度还是所需时间,都提出了不小的要求。


在这个案例中,我们是如何结合操作系统控制台快速定位问题的呢?


首先,我们来看下这个地域中的机器情况:如下图所示,ECS 作为 ACK Pod 的主机,前端有一个 SLB。

我们直接在 ECS 上对 eth0 网卡进行 tcpdump 抓包。从下面的抓包结果来看,source 是 SLB 的健康检查网段,此时 SLB 正不断向本机器发送 SYN 包来请求连接。但是本机并没有返回 ACK 包,导致了健康检查失败了。那好好的为什么我们的机器没有返回 ACK 包呢?


iptable 规则导致?


根据一般排查思路,首先,我们会怀疑是不是 iptable 的规则设定导致了某些请求被拦截。但是我们确认了正常的机器以及异常的机器后发现,iptable 并没有变化,因此 iptable 的规则导致的问题这个怀疑点可以排除。


内核丢包?


如果要排查内核丢包问题,以前我们也许需要熟悉网络内核模块的专家进行跟踪分析。但是现在,我们只需要动动手指,使用阿里云操作系统控制台,这位“专家”就能在很短的时间内,完成以往需要专业的人士才能完成的事情。


使用操作系统控制台对问题实例进行诊断:



如图上所示,在系统诊断中选择网络诊断、丢包诊断,然后根据第 4 步选择你所需要诊断的实例 ID,最后点击执行诊断。诊断完成以后,点击查看报告,可以看到机器中的丢包情况。



结果见上图,可以看到操作系统控制台的报告中显示无已知丢包异常。因此,我们基本排除了内核丢包情况。


既不是 iptable 规则,也不是内核丢包,还有什么可能呢?


结合操作系统控制台的诊断报告,现在基本可以确认了内核并没有出现丢包,成功排除了底层协议栈的潜在风险。 我们进一步分析发现,eth0 接口成功接收 SYN 包表明网络链路未发生数据丢弃,iptables 规则无异常则证实非配置规则所致。 经过上述排查环节后,我们意识到仍存在被忽视的排查维度——网络驱动或中间件模块可能存在异常。基于这一假设,我们把系统中的钩子打印出来看下:



上图可以发现,与正常机器对比,这里多了很多 sched_cls 类型的钩子。在与 ACK 研发团队确认后,得知此为一个网络组件的钩子。由于我们高度怀疑是该组件打上的钩子导致 SYN 被过滤掉了。因此,该组件卸载掉后,健康检查立马恢复了正常。



可以看到,在操作系统控制台的帮助下,我们非常快速对问题进行了初步定界,排除了内核丢包的嫌疑,从而能够更快地把目光放在其他方向的排查上,为解决问题节省了更多的时间。


精准抓出问题所在


某客户在新创建了实例以后,发现通过 telnet 1678 端口不通,对其业务有重要影响。该端口不通会导致其业务进程无法正常与外界通信。


本案例与上述案例有点类似,也是网络不通的情况。在面对网络不通的情况时,首先我们要做的就是对端口或者网卡进行抓包,接下来看下该端口或者网卡的数据包流情况。


客户在其机器上执行 telnet 程序,发现 telnet 机器的 22 端口是通的,但是 1678 端口以及其他端口不通。此外,检查了端口以及对应端口的监听进程都运行起来了,没有问题。


祭出我们的一般排查思路,是不是 iptable 的规则问题?先去检查一下 iptable 的设置。在客户的配合下,确认了这台机器上的 iptable 没有明显的问题,也没有设置特殊的规则。


既然不是 iptable 的问题,那么结合上一个案例的经验,是不是一些驱动的钩子导致的问题?接着我们检查了一下安全组件,没有安装额外的安全软件,而且也没有发现异常的函数钩子。因此,也不是钩子导致的问题。


既然钩子没有问题、iptable 也没有问题。那会不会是内核丢包了?有了这个怀疑,我们就可以使用操作系统控制台对异常实例进行诊断:



很快,诊断完成后,我们查看诊断的报告。



在这个报告中,诊断提示我们需要删除 iptable 丢包规则或者相关的 netfilter 驱动。结论也很明显,就是告诉我们是 netfilter 导致的丢包。既然是 netfilter 导致的丢包,那首先就要看下 nftable 的规则设置:



通过查看 nftable 规则设置,发现了 nft 中确实有对 1678 端口的 drop 规则。



删除对应规则并更新以后本机上监听 1678 端口,发现通了,可以连接上了,问题解决。


总结


在日常的系统运维中,丢包问题会导致业务通信丢失、业务无法正常运行乃至无法部署。但是丢包问题也不是完全令人望而却步的问题,阿里云操作系统控制台提供了简单、易用、专业的诊断工具。在怀疑系统存在丢包问题的时候,我们可以结合操作系统控制台按照一下步骤进行排查:


1、直接使用操作系统控制台的丢包诊断,看下诊断是否告知明确问题点。

2、如果诊断报告中没有显示内核出现了丢包,那就检查系统中是否有安装多余的安全软件,或者对比正常的环境下有没有多余的钩子。

3、没有预期外驱动或者钩子,检查 iptable 是否正确。

4、如果还是不能明确出丢包点,可以使用 funcgraph 或者 bpf 等工具对怀疑的丢包路径打点抓包,找出丢包的地方。

一般结合操作系统控制台,经过以上四个步骤,一般的丢包问题你们都能搞定,把丢包问题轻松解决~


  • 联系我们:您在使用操作系统控制台的过程中,有任何疑问和建议,可以搜索群号:94405014449 加入钉钉群反馈,欢迎大家扫码加入交流。

  • 问卷填写:欢迎填写控制台问卷,您的宝贵建议对我们非常重要。如有建议被采纳,我们将赠送一份礼品:https://survey.aliyun.com/apps/zhiliao/Ozqy9cPu5

2025-07-10 14:2413

评论

发布
暂无评论

如何防止Instagram IP被限制?

Ogcloud

海外社媒运营 海外社媒营销 ins运营 海外社媒推广

中昊芯英荣登甲子光年2024中国AI算力领域最具商业潜力榜

科技热闻

云主机安装Redis,基于CodeArts模拟电商平台秒杀抢购

华为云开发者联盟

缓存 redis' 键值数据库 CodeArts

怎么把域名解析到IP地址?流程有哪些?一文讲清域名解析那些事

国科云

精选的掘金文章汇总[2024.11月-12月]

安全乐谷

GitHub 架构 算法 前端 后端

BOE(京东方)北京京东方医院主体结构开工 打造医工融合创新典范

爱极客侠

如何做区块链破局的模式:区块链如何破局

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 交易所开发代币开发

拼多多根据ID取商品详情原数据API接口的开发应用与收益

科普小能手

电商 API 接口 API 测试 pinduoduo API 拼多多数据

荣誉墙,上新!

天翼云开发者社区

云计算 网络安全

AI Agent:未来高效螺丝钉,谁用得好,谁先赚到钱

博文视点Broadview

RWA代币:下一波财富增长的密码?

TechubNews

AI与数据分析|使用机器学习,轻松解决复杂的情感分析问题

Altair RapidMiner

机器学习 AI 数据分析 情感分析 altair

CCF-CV企业交流会—走进合合信息顺利举办,打造大模型时代的可信AI

合合技术团队

人工智能 信息安全 图像安全

想提高查询性能,用GaussDB(DWS) in表达式还是or表达式?

华为云开发者联盟

数据库 GaussDB 表达式 大数据‘’ #SQL

ChatGPT在功能测试用例生成方面的优势

不在线第一只蜗牛

ChatGPT

GitHub下载破千万!这份Java大厂面试指南,竟是阿里面试官上传的

Summer

Java 程序员 面试 架构师 大厂

币安独霸,okx,bitget共享天下交易所新格局

区块链项目一站式包装孵化

新金景集团:二十载专注做好女性私密

新消费日报

Java面试突击手册,一周刷完这300道面试题,你也可以当架构师!

Summer

Java 程序员 面试 架构师 大厂

TON游戏现状一览:区块链与Telegram的完美融合

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 代币开发

看阿里云操作系统控制台如何一招擒拿网络丢包_阿里巴巴_张永德_InfoQ精选文章