雷凌RT5372无线网卡,搭建AP和STA,WPS(WSC)连接

2024-05-09 21:32

本文主要是介绍雷凌RT5372无线网卡,搭建AP和STA,WPS(WSC)连接,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. 阐述

前段时间,使用两块雷凌RT5372无线网卡,在Linux下搭建AP和STA,利用WPS(WSC)方式进行连接。调试过程也没那么复杂,在此也简单做个小结;

   WPS或WSC其实是指相同的东西,WPS的概念就不累赘讲解了,网上很多资料有阐述;如,一键加密WPS使用指南 磊科无线路由器方式进行连接,深入理解Android:Wi-Fi,NFC和GPS,WPS以及它的两种方式PIN与PBC的理解等等。

接下来就是驱动了,在此之前,由于STA驱动我拿到的是一份不支持WPS功能的驱动,折腾了一小会才发现驱动不对(这里指软件,但硬件必须支持WPS),最后才通过网络下载到适合的驱动,就我目前所见到的,雷凌系列的网卡驱动且支持WPS的驱动的一般编译出来了都有三个.ko文件的,而且配置文件config.mk有配置项,如果没有标明该驱动不支持WPS模式;

# Support WSC function
HAS_WSC=y
HAS_WSC_V2=y
HAS_WSC_LED=n
HAS_IWSC_SUPPORT=n


这里给出连个驱动的下载链接:2011_0517_RT5370_RT5372_RT5390U_Linux_AP_V2.6.0.0_DPA.tar.bz2,DPA_RT5572_LinuxSTA_2.6.1.4_20121211.tar.bz2

  手册 :MTK_Wi-Fi_STA_Software_Programming_Guide_v1.2,MTK_Wi-Fi_SoftAP_Software_Programming_Guide_v2.4

编译可以参考网友embed_huang 的  一键加密:WPS(Wi-Fi Protected Setup,Wi-Fi保护设置)

2. 指令使用:AP和STA指令设置流程(指令该大小的大写,该小写的小写)

------------------------- AP ------------------------------
iwpriv ra0 set Debug=3   设置调试等级

[Unconfigured AP] <- EAP/UPnP -> [Registrar] 
1.  PIN 
(1)  on AP side 
    iwpriv ra0 set WscConfMode=7 
    iwpriv ra0 set WscConfStatus=1 ;; AP is un-configured 
    iwpriv ra0 set WscMode=1 
    iwpriv ra0 set WscGetConf=1 
  iwpriv ra0 set WscGenPinCode  //随机创建PIN码  
    iwpriv ra0 stat               //查看AP's PIN码 要使用dmesg指令才看得到
 
2.  PBC 
(1)  on AP side 
    iwpriv ra0 set WscConfMode=7 
    iwpriv ra0 set WscConfStatus=1 ;; AP is un-configured
    iwpriv ra0 set WscMode=2 
    iwpriv ra0 set WscGetConf=1 


[AP+Registrar] <- EAP -> [Client] 
1.  PIN 
(1)  on AP side 
    iwpriv ra0 set WscConfMode=7 
    iwpriv ra0 set WscPinCode=XXXXXXXX (enter the enrollee's PIN, the PIN 
from WPS client) 
    iwpriv ra0 set WscMode=1 
    iwpriv ra0 set WscGetConf=1. 
   
2.  PBC 
(1)  on AP side 
    iwpriv ra0 set WscConfMode=7 
    iwpriv ra0 set WscMode=2 
    iwpriv ra0 set WscGetConf=1.


------------------------- STA ------------------------------
iwpriv ra0 debug 3   设置调试等级

1. Enrollee Mode
1.1) PIN mode:
(ii)[RT2860 Linux WPS STA]
iwpriv ra0 wsc_conf_mode 1;; Enrollee
iwpriv ra0 wsc_mode 1;; PIN
iwpriv ra0 wsc_ap_band 0 (or 1);; 0: prefer 2.4G, 1: prefer 5G
iwpriv ra0 wsc_ssid "AP's SSID"
iwpriv ra0 wsc_start
iwpriv ra0 wsc_gen_pincode    //随机创建PIN码 
iwpriv ra0 stat  //查看STA's PIN码

1.2) PBC mode:
{ii)[RT2860 Linux WPS STA]
iwpriv ra0 wsc_conf_mode 1;; Enrollee
iwpriv ra0 wsc_mode 2;; PBC
iwpriv ra0 wsc_ap_band 0 (or 1);; 0: prefer 2.4G, 1: prefer 5G
iwpriv ra0 wsc_start


2. Registrar Mode
2.1) PIN mode:
iwpriv ra0 wsc_conf_mode 2;; Registrar
iwpriv ra0 wsc_mode 1;; PIN
iwpriv ra0 wsc_pin xxxxxxxx;; AP's PIN Code
iwpriv ra0 wsc_ap_band 0 (or 1);; 0: prefer 2.4G, 1: prefer 5G
iwpriv ra0 wsc_ssid "AP's SSID"
iwpriv ra0 wsc_start

2.2) PBC mode: 
(ii)[RT2860 Linux WPS STA]
iwpriv ra0 wsc_conf_mode 2;; Registrar
iwpriv ra0 wsc_mode 2;; PBC
iwpriv ra0 wsc_ap_band 0 (or 1);; 0: prefer 2.4, 1: prefer 5G
iwpriv ra0 wsc_start


3. 如果在windows下使用网卡连接Linuxd AP 

Linux平台: Ubuntu 12.04.2 (GNU/Linux 3.5.0-23-generic i686)
     硬件: USB无线网卡(雷凌RT5372) 

Windows平台: Win7 
       硬件: USB无线网卡(瑞昱 RTL8192CU)

设置
iwpriv ra0 set WscConfMode=7或5 
iwpriv ra0 set WscConfStatus=2  ;; AP is configured 

  Windows下使用USB无线网卡连接AP时会随机出现“根据路由器上的标签键输入8位PIN”或“通过按路由器上的按钮也可以连接”的提示,如图片WPS-for-PC-link.jpg所示;
  在参考STA指令设置便可实现Windows上使用WPS连接AP;

WPS模式:通过PIN码或PBC方式连接,从而获取AP的秘钥,因此用户无需手动输入秘钥;STA保存了AP的秘钥,以后的连接跟普通方式一样通过秘钥验证;
如果秘钥被修改了,则需要通过WPS模式重新再连接;

由这两天调试可知,WPS模式只是屏蔽了用户手动输入秘钥的环节,通过内部机制获取到AP的秘钥和配置其他信息;获取到的配置依旧写入/etc/Wireless/RT2870STA/RT2870STA.dat文件中,如AuthMode,EncrypType,WPAPSK等配置选项;





这篇关于雷凌RT5372无线网卡,搭建AP和STA,WPS(WSC)连接的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/974550

相关文章

Redis客户端连接机制的实现方案

《Redis客户端连接机制的实现方案》本文主要介绍了Redis客户端连接机制的实现方案,包括事件驱动模型、非阻塞I/O处理、连接池应用及配置优化,具有一定的参考价值,感兴趣的可以了解一下... 目录1. Redis连接模型概述2. 连接建立过程详解2.1 连php接初始化流程2.2 关键配置参数3. 最大连

Python极速搭建局域网文件共享服务器完整指南

《Python极速搭建局域网文件共享服务器完整指南》在办公室或家庭局域网中快速共享文件时,许多人会选择第三方工具或云存储服务,但这些方案往往存在隐私泄露风险或需要复杂配置,下面我们就来看看如何使用Py... 目录一、android基础版:HTTP文件共享的魔法命令1. 一行代码启动HTTP服务器2. 关键参

C#连接SQL server数据库命令的基本步骤

《C#连接SQLserver数据库命令的基本步骤》文章讲解了连接SQLServer数据库的步骤,包括引入命名空间、构建连接字符串、使用SqlConnection和SqlCommand执行SQL操作,... 目录建议配合使用:如何下载和安装SQL server数据库-CSDN博客1. 引入必要的命名空间2.

Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式

《Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式》本文详细介绍如何使用Java通过JDBC连接MySQL数据库,包括下载驱动、配置Eclipse环境、检测数据库连接等关键步骤,... 目录一、下载驱动包二、放jar包三、检测数据库连接JavaJava 如何使用 JDBC 连接 mys

Qt使用QSqlDatabase连接MySQL实现增删改查功能

《Qt使用QSqlDatabase连接MySQL实现增删改查功能》这篇文章主要为大家详细介绍了Qt如何使用QSqlDatabase连接MySQL实现增删改查功能,文中的示例代码讲解详细,感兴趣的小伙伴... 目录一、创建数据表二、连接mysql数据库三、封装成一个完整的轻量级 ORM 风格类3.1 表结构

MySQL中的表连接原理分析

《MySQL中的表连接原理分析》:本文主要介绍MySQL中的表连接原理分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、环境3、表连接原理【1】驱动表和被驱动表【2】内连接【3】外连接【4编程】嵌套循环连接【5】join buffer4、总结1、背景

如何使用Haporxy搭建Web群集

《如何使用Haporxy搭建Web群集》Haproxy是目前比较流行的一种群集调度工具,同类群集调度工具有很多如LVS和Nginx,本案例介绍使用Haproxy及Nginx搭建一套Web群集,感兴趣的... 目录一、案例分析1.案例概述2.案例前置知识点2.1 HTTP请求2.2 负载均衡常用调度算法 2.

SpringBoot连接Redis集群教程

《SpringBoot连接Redis集群教程》:本文主要介绍SpringBoot连接Redis集群教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 依赖2. 修改配置文件3. 创建RedisClusterConfig4. 测试总结1. 依赖 <de

一文详解如何在idea中快速搭建一个Spring Boot项目

《一文详解如何在idea中快速搭建一个SpringBoot项目》IntelliJIDEA作为Java开发者的‌首选IDE‌,深度集成SpringBoot支持,可一键生成项目骨架、智能配置依赖,这篇文... 目录前言1、创建项目名称2、勾选需要的依赖3、在setting中检查maven4、编写数据源5、开启热

全屋WiFi 7无死角! 华硕 RP-BE58无线信号放大器体验测评

《全屋WiFi7无死角!华硕RP-BE58无线信号放大器体验测评》家里网络总是有很多死角没有网,我决定入手一台支持Mesh组网的WiFi7路由系统以彻底解决网络覆盖问题,最终选择了一款功能非常... 自2023年WiFi 7技术标准(IEEE 802.11be)正式落地以来,这项第七代无线网络技术就以超高速