欢迎光临散文网 会员登陆 & 注册

wifi--驱动

2023-03-20 10:54 作者:圣母和正负喜欢没办法  | 我要投稿

一、概述

1 定义

2 wlan

3 802.11协议

4 使用物理技术

5 术语

LAN----局域网(小范围)

WAN---广域网(大范围)

无线AP----无线网络中的交换机 ,是移动用户进入有线网络的接入点。

Station----可以连接到无线网络的设备

SSID----标识无线网络

BSSID-----标识BSS,和MAC一样,48bit,是无线接入点的MAC地址

BSS----一组相互通信的工作站,是802.11无线网络基本组件

             IBSS又叫ADHOC,组网临时,通信方式 Station<->Station

             基础结构网络:通信方式Station<->AP<->Station

MAC-----介质访问控制器,数据链路层,MAC地址烧录在网卡中,48Bit

Band-----频率范围

Channel------对频段进一步划分,不同信道数据没重叠就不会干扰。

                    2.4G和5G划分成叫频段,每个小频段叫一个channel

Channel Width-----表示一个Channel片段宽度

                              5G频段宽度100M,互不干扰10个Channel,每个Channel的Channel                                          Wdith=100/10=10M

Wireless Security ----- 无线网络安全

                                WPA------安全标准,WI-FI Protected Access

                                WEP------加密技术,Wire Equivalent Privacy

Qos-----无线网品质保证

RF Power ------ 无线网发射功率


二、编写

1 焊接连接好wifi芯片或者模组

2 进入ubuntu打开ifconfig

3 打开menuconfig

wpa_supplicant:STA模式,连接网络方式

hostapd:AP模式,热点模式

Target package->Networking applications->hostapd 和 wpa_supplicant选项,分别进入选择Enable WPS 和 Enable WPA3 supprot相关选项。

编译完成后,会生成wpa_supplicant 和 wpa_cli可执行文件。

4 wpa_supplicant---控制核心,独立守护进程,处理控制、驱动、配置WPA状态机,即服务端

   wpa_cli---用于和用户交互,用来搜索、设置、连接,即客户端

   底层驱动---网卡驱动

5 运行服务端程序

  查看:

  wpa_supplicant  --help

  设置:

  wpa-supplicant -Dnl80211 -iwlan0 -c/etc/wpa_supplicant.conf -B

6 配置文件编写

  1> wpa_passphrase工具出生成,再结合wpa_cli设置完整conf。【使用于第一次配置】

  2> 商家源码/板级商源码:wpa_supplicant源码目录/example/xxx.conf

  3>以前编译过的直接拷贝,改写SSID和PSK

  配置:

生成conf格式文件

添加配置到conf文件头部,为了使用wpa_cli更新配置。

开启成功打印log日志

7 wpa_cli

wpa_cli -i wlan0   //进入命令行

help    //查看信息

  8 配置文件 wpa_supplicant.conf

9 连接WiFi

10 AP模式下创建WPA3加密热点

1> hostapd

vim /etc/hostapd.conf

打开服务

2> hostapd_cli

作为 hostapd 的客户端,使用时,首先需要先启动 hostapd 主程序

hostapd 启动后运行 cli 客户端时,会自动去连接当前正在工作的  hostapd 进程,连接成功后,cli 客户端就可以对  hostapd 应用程序进行参数的获取和控制。

hostapd_cli同wpa_cli相同,运行模式有两种,一种是shell交互模式,另一种是dai带参运行,两种方式都大同小异,主要介绍一些命令。

动态设置:对hostapd配置文件所有配置进行更改

wps_config:修改密码、加密方式、名称

status:获取无线热点信息

get_config:获取无线热点信息

cat 访问进程:获取信息

这里是驱动是为了产品的开发,不是写驱动程序,这个是相关上游行业已经写好了,拿来直接驱动的,如果想去搞这个,要去相关企业。

wifi--驱动的评论 (共 条)

分享到微博请遵守国家法律