Linux网络连接状态排查:从netstat到ss的运维实战指南
1. 网络连接状态运维的“听诊器”在Linux系统运维和开发工作中网络连接状态是排查问题、分析性能、保障安全的第一手资料。无论是服务器响应变慢、端口冲突还是怀疑存在异常连接或潜在安全风险第一时间查看网络连接状态就像医生拿起听诊器一样是进行“诊断”的基础操作。对于系统管理员、后端开发、安全工程师乃至任何需要与服务器打交道的技术人员来说熟练使用相关命令是必备技能。很多人可能只知道一个netstat或者用过ss但不明就里。实际上Linux提供了从经典到现代的一系列工具如netstat、ss、lsof乃至直接查看/proc虚拟文件系统。它们各有侧重有的信息全面但稍显陈旧有的速度极快且信息详尽还有的能从进程视角看问题。理解这些工具的核心原理、输出列的含义以及组合使用技巧能让你在遇到网络问题时迅速定位到是哪个进程、通过哪个端口、与哪台远程主机建立了何种状态的连接从而高效地解决问题。本文将从一个资深运维的角度带你彻底搞懂如何查看和分析Linux系统的网络连接状态。2. 工具全景从 netstat 到 /proc在深入每个命令之前我们有必要先了解一下工具箱里都有什么以及为什么会有这么多选择。这背后其实是Linux网络栈和工具发展的一个缩影。2.1 经典之选netstatnetstatnetwork statistics是一个历史悠久的网络工具属于net-tools软件包。它的优点是功能全面、输出直观几乎在所有Linux发行版上都预装或易于安装。它可以显示路由表、网络接口统计信息、多播成员以及最重要的——网络连接状态。然而netstat在现代Linux系统上有一个明显的缺点性能。它通过直接读取/proc/net/tcp、/proc/net/udp等文件来获取信息并且在解析这些文件时为了将IP地址和端口号解析成可读的服务名如将22端口显示为ssh可能需要频繁进行DNS反向解析和/etc/services文件查找这在连接数巨大时例如数万并发会非常缓慢甚至可能拖慢系统。注意尽管存在性能问题netstat的语法和输出格式非常经典许多脚本和运维人员的使用习惯都基于它。学习netstat有助于理解网络连接状态的基本概念这些概念在其他工具中是通用的。2.2 现代替代sssssocket statistics是iproute2软件包的一部分旨在取代netstat。它直接从内核空间通过netlink接口或tcp_diag模块获取socket信息速度极快即使面对数十万连接也能瞬间响应。此外ss显示的信息通常比netstat更详细特别是TCP内部状态如发送/接收队列大小、拥塞控制算法等。可以这么说ss是现代Linux系统上查看网络连接状态的首选和推荐工具。它的语法与netstat大部分兼容学习成本低但能力更强。2.3 进程视角lsoflsoflist open files的核心理念是“在Linux中一切皆文件”。网络连接socket也是一种特殊的文件描述符。因此lsof可以从进程的角度列出其打开的所有文件其中就包括网络连接。lsof的强大之处在于它能精确地将端口或连接关联到具体的进程IDPID和进程名并且能显示进程的用户等信息。当你需要回答“哪个进程占用了8080端口”这类问题时lsof往往是最直接的工具。2.4 终极源头/proc 文件系统/proc是一个虚拟文件系统它提供了访问内核内部数据结构的接口。网络连接信息就存放在/proc/net/目录下如/proc/net/tcp/proc/net/udp。netstat和ss本质上都是对这些数据进行解析和美化输出。直接查看/proc文件内容比较原始IP和端口都以十六进制显示可读性差一般不用于手动排查。但它揭示了信息的本质来源并且在某些极端环境工具缺失下可以直接通过cat、grep这些命令获取最原始的数据。工具选型速查表工具所属套件主要特点适用场景性能netstatnet-tools功能全面输出经典易读学习概念简单排查老系统较差连接数多时慢ssiproute2速度极快信息详细现代首选生产环境排查高性能需求极佳lsoflsof进程关联性强能查所有打开文件定位占用端口的进程较好/proc内核信息源头原始数据理解原理工具缺失时的备用方案直接读取无额外开销3. 核心命令详解与实战用法了解了工具全景我们进入实战环节。我将以ss命令为主对比讲解netstat并穿插lsof的特定用法因为ss是当前事实上的标准。3.1 ss 命令语法与常用选项ss的基本语法是ss [选项] [过滤表达式]常用选项组合与解释-t显示TCP套接字。-u显示UDP套接字。-l仅显示监听LISTEN状态的套接字。这是查看系统开放了哪些端口的常用方式。-a显示所有状态的套接字包括监听、已建立、等待关闭等。-n以数字形式显示地址和端口不进行DNS反向解析和服务名查找。强烈建议始终加上-n选项可以大幅提升命令执行速度避免因DNS问题导致命令卡住。-p显示使用该套接字的进程信息PID和进程名。需要root权限才能查看其他用户的进程信息。-4仅显示 IPv4 套接字。-6仅显示 IPv6 套接字。-s显示套接字使用情况的统计摘要总连接数、TCP各状态连接数等。-o显示TCP定时器信息如保活时间。-e显示套接字的扩展详细信息如用户ID、inode等。-i显示TCP内部信息如拥塞窗口、rtt等。最常用的组合ss -tunlp查看所有TCP和UDP的监听端口并显示进程信息。这是查看本机开放了哪些服务的黄金命令。ss -tan查看所有TCP连接包括监听和已建立以数字格式显示。ss -tan state ESTABLISHED使用过滤表达式仅显示已建立的TCP连接。3.2 输出列深度解析执行ss -tunlp或ss -tan你会看到类似下面的输出。理解每一列的含义至关重要。Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port tcp LISTEN 0 128 *:22 *:* users:((sshd,pid1234,fd3)) tcp ESTAB 0 0 192.168.1.100:22 192.168.1.50:54321Netid: 套接字类型。tcp,udp,raw等。State: 套接字状态。这是分析连接健康度的关键。LISTEN: 服务端套接字正在监听等待连接。ESTABLISHED: 连接已成功建立正在进行数据传输。SYN-SENT: 本地应用发送了SYN包正在等待对方的SYN-ACKTCP三次握手第一步。SYN-RECV: 收到了对方的SYN包并回复了SYN-ACK等待对方的ACKTCP三次握手第二步。FIN-WAIT-1: 本地已发送FIN包请求关闭连接等待对方的ACK或FIN。CLOSE-WAIT: 对方已关闭连接发送了FIN本地正在等待应用层处理完数据后关闭。TIME-WAIT: 连接已关闭等待足够的时间2MSL以确保网络中所有旧报文都消失。大量TIME-WAIT连接是正常现象通常意味着你的服务作为客户端主动关闭了大量短连接。Recv-Q和Send-Q: 这两个队列的大小是诊断网络瓶颈的重要指标。对于监听套接字LISTENRecv-Q: 当前已完成三次握手SYN_RECV状态但尚未被应用层accept()取走的连接队列长度。Send-Q: 监听队列的最大长度即backlog参数如somaxconn控制。对于已建立的套接字ESTABLISHED等Recv-Q: 内核中已接收但尚未被应用层read()取走的数据量字节。Send-Q: 内核中已发送但尚未收到对方确认ACK的数据量字节。如果Recv-Q持续很大可能表示应用进程处理不过来卡住了。如果Send-Q持续很大且不减少可能表示网络拥塞或对端接收缓慢。Local Address:Port: 本地绑定的IP和端口。*表示绑定在所有接口0.0.0.0127.0.0.1表示只绑定在本地环回。Peer Address:Port: 对端远程的IP和端口。对于监听套接字这里是*:*。最后一列使用-p时: 关联的进程信息包括进程名和PID。这是定位问题的关键。3.3 netstat 命令对比与迁移如果你熟悉netstat可以这样迁移到ss功能netstat 命令ss 等效命令说明所有TCP监听端口netstat -tlnpss -tlnp几乎一致所有连接含监听netstat -tanss -tan几乎一致显示进程信息netstat -tunlpss -tunlp注意ss的-u单独表示UDP统计摘要netstat -sss -sss -s的输出更简洁按状态过滤netstat -tan | grep ESTABss -tan state ESTABLISHEDss的过滤更原生高效一个重要的区别netstat的-a选项默认包含监听和所有非监听连接。而ss的-a也是类似但ss提供了更强大的过滤表达式例如ss state established。3.4 lsof 的精准定位当ss -tunlp无法直接显示进程或者你想从端口反查进程时lsof是利器。查看谁在监听特定端口lsof -i :8080这会列出所有打开8080端口的进程。-i选项用于指定网络连接。查看某个进程打开的所有网络连接lsof -i -a -p PID或者更简单lsof -i -p PID查看所有TCP监听端口lsof -iTCP -sTCP:LISTEN这相当于ss -tlnp但输出格式不同。lsof输出的信息非常丰富包括命令、PID、用户、FD文件描述符、类型、设备、大小、节点名等。对于网络连接我们主要关注COMMAND,PID,USER,FD,TYPE,DEVICE,NODE NAME其中包含了IP:端口信息。4. 高级过滤与状态分析实战ss的强大之处在于其基于表达式的过滤能力可以让你像数据库查询一样精准定位连接。4.1 按连接状态过滤TCP连接状态是分析问题的核心。你可以使用state关键字。查看所有已建立的连接ss -tan state established查看所有等待关闭的连接TIME-WAIT, CLOSE-WAITss -tan state time-wait ss -tan state close-wait也可以组合查看ss -tan state time-wait,close-wait查看所有非监听状态的连接ss -tan state connectedconnected是一个宏代表所有已建立和正在关闭的状态不包括listen,closed等。4.2 按地址和端口过滤查看连接到特定远程主机的连接ss -tan dst 192.168.1.200查看从特定本地端口发起的连接ss -tan sport :54321查看连接到特定远程端口的连接ss -tan dport :80组合过滤查看本地80端口的所有已建立连接。ss -tan state established dport :804.3 诊断案例服务器连接数异常分析假设监控报警某台Web服务器Nginx的TCP连接数异常增高。你可以按以下步骤排查总体概览首先用ss -s看统计摘要确认TCP连接总数是否真的异常以及各状态分布。ss -s关注Total和TCP部分的数字。定位监听端口确认Nginx监听的端口假设是80和443状态。ss -tlnp | grep -E ‘:(80\|443)’检查Recv-Q是否堆积。如果Recv-Q很大说明有很多连接已握手完成但Nginx来不及accept()可能需要调整net.core.somaxconn内核参数或Nginx的backlog配置。分析已建立连接查看所有到80端口的已建立连接看看来自哪些IP。ss -tan state established dport :80 | head -20如果发现大量连接来自少数几个IP可能是爬虫或攻击。可以进一步用awk统计IP出现次数。分析异常状态查看是否有大量异常状态连接如SYN-RECV半连接。ss -tan state syn-recv大量SYN-RECV可能是SYN Flood攻击的迹象。此时需要结合netstat -s | grep -i listen或ss -s中的SYN-RECV计数和系统日志进一步判断。关联进程如果怀疑不是Nginx而是其他进程建立了大量连接可以用ss -tanp查看所有连接的进程信息或者用lsof -iTCP来交叉验证。4.4 实操心得关于 TIME-WAIT 的误解与处理很多运维新手看到服务器上有成千上万的TIME-WAIT连接就非常紧张认为这耗尽了资源。实际上TIME-WAIT状态是TCP协议为了保证可靠关闭而设计的每个TIME-WAIT连接只占用一个四元组源IP、源端口、目的IP、目的端口和少量内存约1KB左右。对于现代服务器来说几万个TIME-WAIT连接通常不是问题。真正需要关注的是端口耗尽的可能性。如果服务器作为客户端频繁地用同一个本地端口段向同一个远程服务相同IP和端口发起短连接可能会因为本地端口来不及回收而耗尽。这时可以考虑以下方案启用端口复用和快速回收需谨慎评估可能违反RFC# 允许将TIME-WAIT套接字重新用于新的TCP连接 sysctl -w net.ipv4.tcp_tw_reuse1 # 快速回收TIME-WAIT套接字在NAT环境下可能有问题 # sysctl -w net.ipv4.tcp_tw_recycle1 # 该参数在较新内核中已移除注意tcp_tw_recycle在存在NAT的网络中可能导致问题且在内核4.12之后已被移除。生产环境建议只开启tcp_tw_reuse并充分测试。调整本地端口范围sysctl -w net.ipv4.ip_local_port_range1024 65535这扩大了可用临时端口的数量。优化应用使用连接池避免频繁创建和关闭短连接这是最根本的解决方案。5. 脚本化监控与自动化排查手动敲命令适合临时排查但对于常态化监控和自动化运维我们需要脚本。5.1 监控监听端口变化一个简单的脚本记录当前监听端口并与之前记录对比发现新增或减少的端口可用于安全监控。#!/bin/bash # 保存当前监听端口列表 ss -tunlp | grep LISTEN | sort /tmp/current_listen_ports.txt # 如果存在历史记录则对比 if [ -f /tmp/last_listen_ports.txt ]; then echo “ 新增的监听端口 ” comm -13 /tmp/last_listen_ports.txt /tmp/current_listen_ports.txt echo “ 消失的监听端口 ” comm -23 /tmp/last_listen_ports.txt /tmp/current_listen_ports.txt fi # 更新历史记录 mv /tmp/current_listen_ports.txt /tmp/last_listen_ports.txt5.2 统计各状态的连接数将ss -s的输出进行解析提取关键指标便于接入监控系统如Zabbix, Prometheus。#!/bin/bash # 提取ss -s输出中的TCP连接数统计 ss_stats$(ss -s | grep -A 10 “^TCP:”) total_tcp$(echo “$ss_stats” | grep ‘estab’ | awk ‘{print $4}’) time_wait$(echo “$ss_stats” | grep ‘timewait’ | awk ‘{print $4}’ | sed ‘s/,//’) close_wait$(echo “$ss_stats” | grep ‘close-wait’ | awk ‘{print $4}’ | sed ‘s/,//’) echo “TCP_TOTAL $total_tcp” echo “TCP_TIME_WAIT $time_wait” echo “TCP_CLOSE_WAIT $close_wait”5.3 查找连接数最多的远程IP当怀疑有单IP攻击或异常爬虫时这个脚本非常有用。#!/bin/bash # 统计连接到本地80端口的ESTABLISHED连接按远程IP计数 ss -tan state established dport :80 | awk ‘{print $5}’ | cut -d: -f1 | sort | uniq -c | sort -rn | head -20这个命令管道做了以下几件事ss -tan state established dport :80获取所有到80端口的已建立连接。awk ‘{print $5}’提取第五列Peer Address:Port。cut -d: -f1以冒号分隔取第一部分IP地址。sort排序为uniq -c做准备。uniq -c统计每个IP出现的次数。sort -rn按次数反向数字排序从大到小。head -20显示前20个。5.4 常见问题排查速查表现象/问题可能原因排查命令与思路“Address already in use”(端口被占用)1. 其他进程正在监听该端口。2. 该端口处于TIME-WAIT状态且未启用SO_REUSEADDR。1.ss -tlnp | grep :端口号或lsof -i :端口号查找占用进程。2.ss -tan state time-wait | grep :端口号查看是否有TIME-WAIT连接。服务无法连接但端口在监听1. 防火墙iptables, firewalld阻止。2. 服务只绑定在127.0.0.1本地环回。3. 应用层问题如进程僵死。1.ss -tlnp检查Local Address是0.0.0.0还是127.0.0.1。2. 检查防火墙规则。3. 检查进程状态和日志。大量SYN-RECV状态连接1. SYN Flood攻击。2. 客户端发送SYN后崩溃或网络问题。3. 服务器backlog队列满且未及时accept()。1.netstat -s | grep -i listen查看被丢弃的SYN包数量。2. 检查服务器负载和ss -tln的Recv-Q。3. 考虑启用tcp_syncookies。大量CLOSE-WAIT状态连接应用层Bug的典型标志本地应用没有及时调用close()关闭socket。1.ss -tanp state close-wait定位是哪个进程。2. 检查该进程的代码确认socket资源是否被正确释放。Send-Q或Recv-Q持续很大1. 网络拥塞或对端处理慢Send-Q大。2. 本地应用处理不过来Recv-Q大。1. 检查网络状况延迟、丢包。2. 检查应用进程的CPU、IO状态看是否有阻塞。连接数缓慢增长不释放1. 连接泄漏应用未关闭连接。2. 长连接场景属于正常。1. 定期执行ss -s监控趋势。2. 使用ss -tanp或lsof -p PID分析特定进程的连接生命周期。掌握这些命令和脚本你就能像拥有X光透视眼一样看清Linux系统内部网络通信的实时状况。从简单的端口查看到复杂的性能瓶颈分析这套方法论覆盖了绝大部分日常运维和故障排查场景。记住ss是你的主力工具lsof是精准的手术刀而理解TCP状态机则是你的核心诊断理论。多练多思考下次遇到网络问题你就能从容应对了。

相关新闻

性能提升计算与精度权衡:从理论到实践的量化评估指南

性能提升计算与精度权衡:从理论到实践的量化评估指南

1. 项目概述:性能提升的量化与精度权衡在技术迭代和项目优化的日常工作中,我们经常面临一个核心问题:如何客观、准确地评估一项改进措施带来的效果?无论是优化一段代码、升级一个硬件模块,还是调整一个算法参数&#x…

2026/8/15 5:49:17 阅读更多 →
Win11硬盘分区全攻略:从GPT/SSD原理到实战避坑指南

Win11硬盘分区全攻略:从GPT/SSD原理到实战避坑指南

1. 项目概述:为什么Win11用户需要重新审视硬盘分区?最近帮几个朋友处理新电脑,发现一个挺普遍的现象:很多人拿到预装Win11的新机器,看着那个孤零零的C盘,心里就有点发怵。系统、软件、文档、游戏全挤在一起…

2026/8/15 5:49:17 阅读更多 →
统一Radix缓存:多模型共享KV缓存的设计与工程实践

统一Radix缓存:多模型共享KV缓存的设计与工程实践

1. 先搞清楚“统一Radix缓存”到底要解决什么问题看到“统一Radix缓存”和“混合模型前缀缓存”这些词,第一反应可能是某个特定框架或库的内部优化。但如果你正在处理大语言模型推理、搜索建议或者任何需要高效前缀匹配的场景,这个概念就非常关键了。它本…

2026/8/15 5:48:16 阅读更多 →

最新新闻

Windows 10 C盘深度清理指南:精准定位与安全释放空间

Windows 10 C盘深度清理指南:精准定位与安全释放空间

1. 从“红了”到“清爽”:一场与C盘的深度对话C盘又红了。这个在Windows 10用户屏幕上反复出现的红色警示条,几乎成了数字时代的一种“现代焦虑”。它不像硬件故障那样突然,却像慢性病一样持续消耗着你的耐心和系统性能。你试过那些一键清理工…

2026/8/15 6:38:31 阅读更多 →
Word文档自动化:从邮件合并到Python脚本的docx插件实战指南

Word文档自动化:从邮件合并到Python脚本的docx插件实战指南

1. 项目概述:为什么我们需要关注docx插件?如果你经常和Word文档打交道,尤其是需要处理大量格式调整、数据填充或自动化报告生成,那你一定对重复性的手动操作感到头疼。比如,每个月都要做几十份格式雷同的合同&#xff…

2026/8/15 6:38:31 阅读更多 →
从代码生成到智能体协作:基于Agent+Skills+MCP构建内容运营自动化系统

从代码生成到智能体协作:基于Agent+Skills+MCP构建内容运营自动化系统

1. 项目缘起:一次从“代码生成”到“智能体协作”的范式迁移最近半年,我一直在用 Claude Code 来处理内容运营中的各种琐碎任务,比如批量改写标题、生成社交媒体文案、分析数据报告。它确实是个好帮手,写代码片段、处理文本格式非…

2026/8/15 6:38:31 阅读更多 →
Windows 11安全中心空白修复:注册表权限与策略键值深度解析

Windows 11安全中心空白修复:注册表权限与策略键值深度解析

1. 问题初现:当安全中心变成一片空白那天下午,我正像往常一样准备检查一下电脑的实时防护状态,顺手点开了Windows 11右下角托盘里的那个盾牌图标。结果,弹出的窗口让我心里“咯噔”了一下——整个Windows安全中心界面一片空白&…

2026/8/15 6:38:31 阅读更多 →
递归编程核心原理:从函数调用栈到分治算法的实战解析

递归编程核心原理:从函数调用栈到分治算法的实战解析

1. 从“套娃”到“归约”:理解递归的本质如果你写过几行代码,大概率听说过“递归”这个词。它听起来有点玄乎,像是某种高深的编程魔法。但说穿了,递归的本质,和你小时候玩的俄罗斯套娃,或者看镜子里的镜子&…

2026/8/15 6:38:31 阅读更多 →
服务器带外管理实战:使用ipmitool配置IP、账户与密码

服务器带外管理实战:使用ipmitool配置IP、账户与密码

1. 项目概述:为什么我们需要ipmitool?在数据中心或者企业机房工作过的朋友,对服务器前面板那个小小的、不起眼的RJ45管理口一定不陌生。这个接口背后,就是服务器的“灵魂后门”——带外管理接口,比如戴尔的iDRAC、惠普…

2026/8/15 6:37:31 阅读更多 →

日新闻

内景 空间站内部 中国空间站 太空 内仓

内景 空间站内部 中国空间站 太空 内仓

本项目为前几天收费帮学妹做的一个项目,在工作环境中基本使用不到,但是很多学校把这个当作编程入门的项目来做,故分享出本项目供初学者参考。 一、项目描述 空间站内部 中国空间站 太空 内仓 地址:本地PC端运行(或Web…

2026/8/15 0:00:30 阅读更多 →
重新定义数据接口:3个突破性场景让通达信数据读取更智能

重新定义数据接口:3个突破性场景让通达信数据读取更智能

重新定义数据接口:3个突破性场景让通达信数据读取更智能 【免费下载链接】mootdx 通达信数据读取的一个简便使用封装 项目地址: https://gitcode.com/GitHub_Trending/mo/mootdx 当我们面对海量金融数据时,传统的数据获取方式往往让我们陷入困境—…

2026/8/15 0:00:30 阅读更多 →
一文读懂快消WMS怎么选?2026年国内外10大主流WMS品牌盘点

一文读懂快消WMS怎么选?2026年国内外10大主流WMS品牌盘点

快消品(FMCG)是流通速度较快、竞争较为激烈的行业之一。一瓶饮料从出厂到消费者手中,往往只有几十天甚至几天的周转窗口。这决定了快消行业的仓储管理系统(WMS)与制造业、电商行业存在明显区别:它不仅需要管…

2026/8/15 0:02:30 阅读更多 →

周新闻

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 你是否曾经在深夜寻找一份重要资料&#x…

2026/8/13 2:38:34 阅读更多 →
如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南 【免费下载链接】chinese_license_plate_generator 中国车牌生成器 项目地址: https://gitcode.com/gh_mirrors/ch/chinese_license_plate_generator 中国车牌生成器是一个基于Python的开源项目&#xff0c…

2026/8/13 10:41:52 阅读更多 →
收藏!小白程序员轻松入门大模型,从Harness工程开始实践

收藏!小白程序员轻松入门大模型,从Harness工程开始实践

文章强调学习大模型不应只关注模型本身,而应重视模型外的系统搭建,即Harness。提出AgentModelHarness的实用公式,详细介绍Harness的四个层次:持久化层、执行层、控制层和观察与验证层。文章还探讨了上下文工程、工具设计、AGENTS.…

2026/8/13 10:41:51 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/14 13:40:53 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/14 14:06:45 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/15 2:35:29 阅读更多 →