Linux的WiFi知识积累

一、基本知识

1.1 Linux无线网络架构

要了解linux的无线网络,首先要 了解linux的网络架构。

1、从应用到底层的调用关系:系统调用接口 -socket          协议无关接口           网络协议-TCP 和 UDP          设备无关接口        设备驱动程序         网络接口的注册

2、对于Linux的无线架构,可以分成两部分来学习,第一部分为数据包的收发过程,这部分与1节所说的一样。第二部分为无线网络的控制部分,包括无线网络的扫描、连接、断开及无线网络的各种设置及查询。           

参考网址:

Linux无线网络架构_linux wifi框架_简单的过客的博客-CSDN博客(无线网络的数据发送接收流程)

Linux Wireless架构总结_Arrow的博客-CSDN博客(基于USB接口的网络数据无线网络)

1.2 开源库

他们的源码地址是:hostapd and wpa_supplicant

wpa_supplicant中包含了hostapd功能。对于Linux来说,无论是有线网络还是无线网络,只是底层封装的入口不一样。最终要完成的都是客户端会找到你设备在监听的端口号。至于怎么进入的?

移植方法:hostapd和wpa_supplicant工具移植到ARM Linux_Ahren.zhao的博客-CSDN博客

在移植hostapd和wpa_supplicant时需要先移植openssl和libnl,libnl提供netlink通信机制。

二、热点

嵌入式Linux开发板,加载厂家提供的KO驱动,然后配置hostapd和dhcp服务来打造一个热点。

1.1 hostapd

hostapd能够将wifi切换为master模式,能够模仿路由器的功能,打造一个软ap。

hostapd.conf中会需要名字,需要密码,需要加密方式。

ssid:设定你热点的名称  interface:网卡接口  wpa 设置你认证相关的

1.2 dhcp--动态分配ip给接入点

因为如果没有DHCP的话,连接你热点的设备和你的设备不在同一个网段,那么就需要手动配置连接的设备IP,这会很麻烦。显然需要用DHCP来动态分配IP给接入点。

1.3 参考网址

https://www.cnblogs.com/heat-man/p/4657157.html

hostapd实现WIFI 热点(AP)_追梦的猪1017911的博客-CSDN博客

Linux下软AP功能之Hostapd介绍_hinyunsin的博客-CSDN博客

hostapd的radius/eap server代码分析(1)-main_hostapd radius 分析_graphnj的博客-CSDN博客

三、WIFI

3.1 wpa_supplicant

WPA是WiFi Protected Access的缩写,中文含义为“WiFi网络安全存取”。WPA是一种基于标准的可互操作的WLAN安全性增强解决方案,可大大增强现有以及未来无线局域网络的数据保护和访问控制水平。主要是用来支持WEP,WPA/WPA2和WAPI无线协议和加密认证的,而实际上的工作内容是通过socket(不管是wpa_supplicant与上层还是wpa_supplicant与驱动都采用socket通讯)与驱动交互上报数据给用户,而用户可以通过socket发送命令给wpa_supplicant调动驱动来对WiFi芯片操作。 简单的说,wpa_supplicant就是WiFi驱动和用户的中转站外加对协议和加密认证的支持。
wpa_supplicant是一个开源项目,已经被移植到Linux,Windows以及很多嵌入式系统上。它是WPA的应用层认证客户端,负责完成认证相关的登录、加密等工作。
wpa_supplicant是一个 独立运行的 守护进程,其核心是一个消息循环,在消息循环中处理WPA状态机、控制命令、驱动事件、配置信息等。

四、smartconfig

        智能硬件处于混杂模式下,监听网络中的所有报文;手机APP将SSID和密码编码到UDP报文中,通过广播包或组播报发送,智能硬件接收到UDP报文后解码,得到正确的SSID和密码,然后主动连接指定SSID的路由,完成连接。

wifi一键配网smartconfig原理及应用_lbaihao的博客-CSDN博客

讲一讲WiFi快连、SmartConfig、SmartConnect_稀饭wifi快连_iotisan的博客-CSDN博客

五、参考知识

5.1 分析工具

1、AirPcap系列产品是由美国CACE公司设计一种专门用于无线网络分析的工具,主要应用于windows平台。它以硬件形式发布(分USB,Cardbus1,Minicard几种),和开放源码的WireShark(以前叫Ethereal,是和Sniffer齐名的嗅探器,但现在sniffer已转为商用。WireShark具备优异的底层协议分析能力,超过了Sniffer)配合,提供广泛的802.11WLAN解决方案。

2、WiFi分析仪分析WiFi信号强弱

3、packet capture 捕获应用层协议

4、Omnipeek 是一款功能强大的网络报文扫描软件,它不仅可以扫描有线网络下的报文信息,还可以针对无线网卡进行监控和扫描。通过该软件我们可以更清晰更快捷的定位无线网络故障,根据扫描结果调整自己的无线设备的参数信息。

5、WiFi的信号强度

5.2 参考网址

[转]wpa_supplicant详解_wpa_supplicant -dd_Emdfans的博客-CSDN博客

wpa_supplicant无线网络配置_wpa 设置信道_sunjing_的博客-CSDN博客

https://blog.csdn.net/lee244868149/column/info/wlan/1

书本:《深入理解Android:Wi-Fi,NFC和GPS》

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值