嵌入式系统中启动Hostapd
2023-06-13 09:11:28 时间
大家好,又见面了,我是你们的朋友全栈君。
项目过程中需要添加AP热点的需求,自然会想用到hostapd,具体的不做分析,自行百度,这里主要分析下启动脚本
采用的 WiFi 模组是“博通”公司的 AP6255 芯片,“博通”公司的 wifi 芯片 AP 与 STATION 切换需要对网卡驱动进行卸载重装,所以配网方式不建议使用 AP 模式配网,这会造成多次 WiFi 模式的切换,耗时可能比较严重。不过给出以下方法,开发者可以自行配置,进入 AP 模式。
如果需要进入 AP 模式,需要依次执行以下命令,对应的 hostapd 和 dnsmasq
# 构造 WiFi AP 参数,其中 ssid 和 wpa_passphrase 分别对应 SSID 和 密码, 例如此配置文件对应的 SSID 是 rokid,密码是 rokidos_psk
echo "interface=wlan0 driver=nl80211 ctrl_interface=/var/run/hostapd ssid=rokid channel=6 ieee80211n=1 ieee80211ac=1 hw_mode=g hw_mode=a ignore_broadcast_ssid=0 wpa=3 wpa_passphrase=rokidos_psk wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP CCMP rsn_pairwise=CCMP" > /etc/hostapd_temp.conf
# 创建虚拟网卡
iw wlan0 interface add wlan1 type managed
# 启动 hostapd (AP 管理软件)
hostapd -B /etc/hostapd_temp.conf
# 配置网卡的 IP 地址
ifconfig wlan0 192.168.2.1
# 启动 dns 和 dhcp 服务, 其中注意 IP 参数要与 IP 地址相对应
dnsmasq -iwlan0 --dhcp-option=3,192.168.2.1 --dhcp-range=192.168.2.50,192.168.2.200,12h -p100
脚本中创建wlan1需要使用iw命令,参数含义如下:
dev <devname> interface add <name> type <type> [mesh_id <meshid>] [4addr on|off] [flags <flag>*]
phy <phyname> interface add <name> type <type> [mesh_id <meshid>] [4addr on|off] [flags <flag>*]
Add a new virtual interface with the given configuration.
Valid interface types are: managed, ibss, monitor, mesh, wds.
The flags are only used for monitor interfaces, valid flags are:
none: no special flags
fcsfail: show frames with FCS errors
control: show control frames
otherbss: show frames from other BSSes
cook: use cooked mode
active: use active mode (ACK incoming unicast packets)
The mesh_id is used only for mesh mode.
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/143265.html原文链接:https://javaforall.cn
相关文章
- cpu流水线工作原理_嵌入式工作原理
- 《安富莱嵌入式周报》第283期:全开源逆向“爆破”硬件工具,Linux内核6.1将正式引入RUST语言,I3C培训教程,80款市场成熟的电感式位置传感器设计
- 嵌入式:交换指令之SWP,MRS,MSR
- Linux嵌入式开发——vim编辑器
- SAP UI5 本地开发如何实现 XML 和 JavaScript 代码的自动完成和嵌入式 API 文档自动显示
- 【嵌入式开发】嵌入式 开发环境 (远程登录 | 文件共享 | NFS TFTP 服务器 | 串口连接 | Win8.1 + RedHat Enterprise 6.3 + Vmware11)
- 设置嵌入式Linux系统时区快速设置指南(嵌入式linux时区)
- 「嵌入式Linux:解析其魅力所在」(对嵌入式linux的认识)
- 嵌入式Redis:实现高性能数据库分布式处理系统(嵌入式redis)
- 嵌入式Linux应用实战教程(嵌入式linux实战教程)
- 嵌入式系统的体系结构
- 开启嵌入式Linux之旅:学习系统编程(嵌入式系统编程linux)
- 嵌入式系统与Linux操作系统的异同之处(嵌入式和linux的区别)
- 嵌入式系统中C语言实现Linux串口通信(clinux串口通信)
- Linux嵌入式学习路线指南(linux嵌入式学习路线)
- 轻松学习嵌入式Linux系统开发(嵌入式linux系统开发教程)
- 2014 GPU技术大会上关于Linux的嵌入式技术和应用
- Qt嵌入式ARM Linux应用开发指南(qtarmlinux)
- Linux Cortex:开源嵌入式系统方案探索(linuxcortex)
- 嵌入式Linux:新就业机遇(嵌入式linux就业)
- 嵌入式Linux系统:精准制作的技术指南(嵌入式linux系统制作)
- 嵌入式Linux:实时系统的完美解决方案(嵌入式linux实时)
- 系统SQL Server嵌入式系统:实现数据极致优化(sqlserver嵌入式)
- Sam Ba Linux:嵌入式系统开发新宠儿(sambalinux)
- 深入解析Linux AM335x嵌入式系统技术(linux am335x)
- 探析嵌入式系统中的Linux应用技巧(linux嵌入式)
- IMX 6 Linux: 赋能嵌入式系统的可靠性与灵活性(imx6linux)
- c语言与Oracle数据库实现嵌入式系统开发(c语言oracle嵌入式)