Linux WiFi 模组使用及故障排查整理文档

    • 1. STA 模式下 WiFi 延时不稳定问题
      • 解决方法:
    • 2. Power Saving 机制说明
    • 3. AP 模式下 WiFi 设置
    • 4. RTL8821CS AP 模式下 Windows 客户端异常断开问题
      • 问题描述
      • 问题原因
      • 解决方案
        • 步骤 1:修改 dnsmasq 配置
        • 步骤 2:重启 dnsmasq 服务
        • 步骤 3:Windows 客户端释放并更新 IP
        • 步骤 4:Wireshark 抓包验证
    • 技术背景说明
    • 附加建议

1. STA 模式下 WiFi 延时不稳定问题

当 WiFi 配置为 STA 模式并连接路由器后,Ping 路由器时发现数据传输延时不稳定。可通过以下方法解决:

解决方法:

  1. 关闭驱动中的低功耗模式

    • 修改 Makefile 中配置:
      CONFIG_POWER_SAVING = n
      
  2. 在开机时关闭 WiFi 的省电模式

    • 添加开机执行命令:
      iw wlan0 set power_save off
      
    • 需要在 Buildroot 中启用 iw 命令支持:
      BR2_PACKAGE_IW=y
      
  3. 避免 WiFi 自动扫描引起的干扰


2. Power Saving 机制说明

参考 Arch Wiki: Wireless Power Saving

  • 尽管某些 Atheros ath9k 单芯片(如 AR9280 以后)默认启用动态省电,但部分设备(如 AR9285)仍可能出现省电未启用的情况。
  • 开启省电可能会出现如下错误:
    iw dev wlan0 set power_save on
    

3. AP 模式下 WiFi 设置

使用 hostapdudhcpd 配置 WiFi 为 AP 模式,详细教程参考:

  • https://blog.csdn.net/wit_732/article/details/121038477

4. RTL8821CS AP 模式下 Windows 客户端异常断开问题

问题描述

  • 在 Windows 平台上使用 RTL8821CS 芯片 AP 模式时,TCP Socket 会异常断开。
  • Android 和 iOS 平台表现正常。
  • 使用 Wireshark 抓包发现:客户端试图请求一个非 DHCP 服务器分配的 IP 地址。

问题原因

Windows 客户端可能保存旧 IP 地址并尝试续租,而当前的 DHCP 服务器(dnsmasq)未曾分配过该 IP,导致请求失败和连接中断。

解决方案

步骤 1:修改 dnsmasq 配置

编辑 /etc/dnsmasq.conf 或相关目录下配置文件,添加以下配置:

dhcp-authoritative

作用:将 dnsmasq 设为权威 DHCP 服务器,强制客户端使用其分配的 IP。

步骤 2:重启 dnsmasq 服务
sudo systemctl restart dnsmasq
# 或
sudo service dnsmasq restart
步骤 3:Windows 客户端释放并更新 IP

在 Windows 命令行中执行:

ipconfig /release
ipconfig /renew

确保获取的 IP 属于 DHCP 服务分配的子网。

步骤 4:Wireshark 抓包验证

过滤条件:udp.port == 67 || udp.port == 68

确认:

  • 客户端请求旧 IP 时,服务器是否返回 NAK。
  • 客户端是否重新发起 DHCP Discover 并正确获取 IP。

技术背景说明

  • DHCP 权威模式(dhcp-authoritative)
    使服务器在遇到非法或未知 IP 请求时,返回 DHCP NAK,强制客户端重新申请新 IP。

  • 系统差异
    Android/iOS 更主动释放旧 IP,而 Windows 更倾向于续租旧 IP,因此更依赖服务器的“权威性”。


附加建议

  • 缩短租约时间(例如设置为 12 小时):

    dhcp-lease-time=43200
    
  • 设置静态 IP 分配(对特定设备):

    dhcp-host=MAC地址,IP地址
    

通过上述方法,可以有效解决 Windows 客户端在 RTL8821CS AP 模式下 TCP Socket 异常断开的问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/81944.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/81944.shtml
英文地址,请注明出处:http://en.pswp.cn/web/81944.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mac mini m4命令行管理员密码设置

附上系统版本图 初次使用命令行管理员,让输入密码,无论是输入登录密码还是账号密码,都是错的,百思不得其解,去网上搜说就是登录密码啊 直到后来看到了苹果官方的文档 https://support.apple.com/zh-cn/102367 https…

栈内行为分析

栈内行为分析 一、源码分析 我们以以下简单的 C 程序为例&#xff0c;通过 GDB 动态调试分析函数调用过程中的栈内布局变化&#xff1a; #include <stdio.h> int add(){int a 10;int b 20;return (a b); }int main() {add();return 0; }编译为 32 位程序&#xff1a…

老旧设备数据采集破局 AI图像解析如何让质检LIMS系统焕发新生

在实验室数字化进程中&#xff0c;大量服役超过 10 年的老旧设备成为数据采集的 “拦路虎”&#xff1a;指针式仪表盘需人工读取、纸质原始记录靠手工录入、非标准接口设备数据无法自动获取…… 某化工实验室因 15 台老旧设备数据采集耗时占比达 40%&#xff0c;检测效率长期滞…

【征求意见】四川省大数据发展研究会关于对《数据资源建设费用测算标准》团体标准征求意见的通知

四川省大数据发展研究会 关于对《数据资源建设费用测算标准》团体标准征求意见的通知 各有关单位&#xff1a; 由四川省大数据发展研究会归口、成都东契奇科技有限公司牵头编制的《数据资源建设费用测算标准》团体标准已形成征求意见稿&#xff0c;现公开征求意见。请于2025年…

element上传文件多选 实现文件排序

上传文件多选排序 只上代码 不多逼逼 这是el-elment 的文件上传 <el-uploadaction"#"list-type"picture-card"ref"upload":accept"accept":on-change"onUploadChange":file-list"fileList":http-request&quo…

.NET 查找 DLL 的路径顺序

在 C# 中&#xff0c;[DllImport("SgCamWrapper.dll")] 这行代码表明它会在运行时从当前可执行文件的搜索路径中查找 SgCamWrapper.dll。具体搜索顺序如下&#xff08;按优先级&#xff09;&#xff1a; ✅ .NET 查找 DLL 的路径顺序&#xff1a; 应用程序启动目录&a…

低代码——表单生成器以form-generator为例

主要执行流程说明&#xff1a; 初始化阶段 &#xff1a; 接收表单配置对象formConf深拷贝配置&#xff0c;初始化表单数据和验证规则处理每个表单组件的默认值和特殊配置&#xff08;如文件上传&#xff09; 渲染阶段 &#xff1a; 通过render函数创建el-form根组件递归渲染表…

自定义载板RK3588HDMI输入配置完整解决方案

Orange Pi 5 Plus HDMI输入配置完整解决方案 &#x1f4cb; 项目概述 本文档记录了Orange Pi 5 Plus HDMI1接口配置问题的完整分析和解决过程。从初始的"disconnected"状态问题&#xff0c;到最终实现HDMI输入功能的全过程技术分析。 &#x1f3af; 问题描述 初始…

SAAS架构设计2-流程图-用户与租户之间对应关系图

在SAAS&#xff08;Software as a Service&#xff0c;软件即服务&#xff09;结构中&#xff0c;用户与租户之间的关系可以通过一对一和多对多两种方式来定义。这两种关系模式各自有着不同的应用场景和特点。 用户和租户的关系&#xff08;一对一&#xff09; 一对一关系 在这…

Spring Boot微服务架构(八):开发之初就引入APM工具监控

使用 APM&#xff08;Application Performance Management&#xff09;工具监控 Spring Boot 应用&#xff0c;可以帮助开发者实时追踪性能瓶颈、分析调用链路、监控资源使用情况&#xff0c;并快速定位故障。以下是详细的步骤和常用工具的选择指南&#xff1a; ​​一、常用 A…

Python 如何让自动驾驶的“眼睛”和“大脑”真正融合?——传感器数据融合的关键技术解析

Python 如何让自动驾驶的“眼睛”和“大脑”真正融合?——传感器数据融合的关键技术解析 自动驾驶技术从来都不是“单兵作战”。如果你细看一辆自动驾驶汽车,它其实是一个传感器的集合体:摄像头、激光雷达(LiDAR)、毫米波雷达、超声波传感器、GPS……这些传感器各自发挥作…

《软件工程》第 12 章 - 软件测试

软件测试是确保软件质量的关键环节&#xff0c;它通过执行程序来发现错误&#xff0c;验证软件是否满足需求。本章将依据目录&#xff0c;结合 Java 代码示例、可视化图表&#xff0c;深入讲解软件测试的概念、过程、方法及实践。 12.1 软件测试的概念 12.1.1 软件测试的任务 …

面试题 08.08. 有重复字符串的排列组合【 力扣(LeetCode) 】

文章目录 零、原题链接一、题目描述二、测试用例三、解题思路四、参考代码 零、原题链接 面试题 08.08. 有重复字符串的排列组合 一、题目描述 有重复字符串的排列组合。编写一种方法&#xff0c;计算某字符串的所有排列组合。 二、测试用例 示例 1&#xff1a; 输入&#…

【Linux】关于权限的理解

目录 一、Linux用户的分类 1.Linux下的两种用户 2.两种用户提示符的区别 3.用户的切换方法 二、Linux的权限管理 1.文件访问者分类 2.常见文件类型 3.文件访问权限 4.权限检查逻辑 5.文件权限的表示方式 三、与文件访问权限相关的设置方法 1.前提&#xff1a; 2.如…

前端antd,后端fastapi,解决文件上传

一、技术架构概述 前端框架&#xff1a;React Ant Design 5.x 使用antd的Upload组件&#xff08;支持拖拽/多文件/分片&#xff09; 后端框架&#xff1a;Python FastAPI 利用UploadFile类处理文件流 传输协议&#xff1a;HTTP FormData&#xff08;兼容性强&#xff09; 二…

⭐️⭐️⭐️ 模拟题及答案 ⭐️⭐️⭐️ 大模型Clouder认证:RAG应用构建及优化

考试注意事项: 一、单选题(21题) 检索增强生成(RAG)的核心技术结合了什么? A. 图像识别与自然语言处理 B. 信息检索与文本生成 C. 语音识别与知识图谱 D. 数据挖掘与机器学习 RAG技术中,“建立索引”步骤不包括以下哪项操作? A. 将文档解析为纯文本 B. 文本片段分割(…

为什么建立 TCP 连接时,初始序列号不固定?

主要原因有两个方面&#xff1a; 很大程度上避免历史报文被下一个相同四元组的 TCP 连接接收问题&#xff08;主要方面&#xff09;防止黑客伪造相同序列号的 TCP 报文被接收 接下来&#xff0c;详细说说第一点 假设每次建立 TCP 连接时&#xff0c;客户端和服务端的初始序列…

VScode-使用技巧-持续更新

一、Visual Studio Code - MACOS版本 复制当前行 shiftoption方向键⬇️ 同时复制多行 shiftoption 批量替换换行 在查找和替换面板中&#xff0c;你会看到一个 .∗ 图标&#xff08;表示启用正则表达式&#xff09;。确保这个选项被选中&#xff0c;因为我们需要使用正则…

【瑶池数据库训练营及解决方案本周精选(探索PolarDB,参与RDS迁移、连接训练营)】

一、训练营 数据库迁移训练营 自建数据库运维难&#xff1f;本次训练营教您迁移至云数据库 RDS&#xff0c;高可用架构跨区容灾&#xff0c;降本增效&#xff01;模拟教程 实战演练&#xff0c;零基础也能上手。 &#xff08;一&#xff09;开营时间 2025年4月8日-6月2日16…

Xamarin劝退之踩坑笔记

初级代码游戏的专栏介绍与文章目录-CSDN博客 我的github&#xff1a;codetoys&#xff0c;所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。 这些代码大部分以Linux为目标但部分代码是纯C的&#xff0c;可以在任何平台上使用。 源码指引&#xff1a;github源…