雷凌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

相关文章

vite搭建vue3项目的搭建步骤

《vite搭建vue3项目的搭建步骤》本文主要介绍了vite搭建vue3项目的搭建步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1.确保Nodejs环境2.使用vite-cli工具3.进入项目安装依赖1.确保Nodejs环境

Nginx搭建前端本地预览环境的完整步骤教学

《Nginx搭建前端本地预览环境的完整步骤教学》这篇文章主要为大家详细介绍了Nginx搭建前端本地预览环境的完整步骤教学,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录项目目录结构核心配置文件:nginx.conf脚本化操作:nginx.shnpm 脚本集成总结:对前端的意义很多

idea+spring boot创建项目的搭建全过程

《idea+springboot创建项目的搭建全过程》SpringBoot是Spring社区发布的一个开源项目,旨在帮助开发者快速并且更简单的构建项目,:本文主要介绍idea+springb... 目录一.idea四种搭建方式1.Javaidea命名规范2JavaWebTomcat的安装一.明确tomcat

k8s搭建nfs共享存储实践

《k8s搭建nfs共享存储实践》本文介绍NFS服务端搭建与客户端配置,涵盖安装工具、目录设置及服务启动,随后讲解K8S中NFS动态存储部署,包括创建命名空间、ServiceAccount、RBAC权限... 目录1. NFS搭建1.1 部署NFS服务端1.1.1 下载nfs-utils和rpcbind1.1

java.sql.SQLTransientConnectionException连接超时异常原因及解决方案

《java.sql.SQLTransientConnectionException连接超时异常原因及解决方案》:本文主要介绍java.sql.SQLTransientConnectionExcep... 目录一、引言二、异常信息分析三、可能的原因3.1 连接池配置不合理3.2 数据库负载过高3.3 连接泄漏

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

Linux搭建ftp服务器的步骤

《Linux搭建ftp服务器的步骤》本文给大家分享Linux搭建ftp服务器的步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录ftp搭建1:下载vsftpd工具2:下载客户端工具3:进入配置文件目录vsftpd.conf配置文件4:

Mac电脑如何通过 IntelliJ IDEA 远程连接 MySQL

《Mac电脑如何通过IntelliJIDEA远程连接MySQL》本文详解Mac通过IntelliJIDEA远程连接MySQL的步骤,本文通过图文并茂的形式给大家介绍的非常详细,感兴趣的朋友跟... 目录MAC电脑通过 IntelliJ IDEA 远程连接 mysql 的详细教程一、前缀条件确认二、打开 ID

Go语言连接MySQL数据库执行基本的增删改查

《Go语言连接MySQL数据库执行基本的增删改查》在后端开发中,MySQL是最常用的关系型数据库之一,本文主要为大家详细介绍了如何使用Go连接MySQL数据库并执行基本的增删改查吧... 目录Go语言连接mysql数据库准备工作安装 MySQL 驱动代码实现运行结果注意事项Go语言执行基本的增删改查准备工作

python连接sqlite3简单用法完整例子

《python连接sqlite3简单用法完整例子》SQLite3是一个内置的Python模块,可以通过Python的标准库轻松地使用,无需进行额外安装和配置,:本文主要介绍python连接sqli... 目录1. 连接到数据库2. 创建游标对象3. 创建表4. 插入数据5. 查询数据6. 更新数据7. 删除