我是靠谱客的博主 单薄花生,最近开发中收集的这篇文章主要介绍嵌入式系统中启动Hostapd,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

项目过程中需要添加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.

最后

以上就是单薄花生为你收集整理的嵌入式系统中启动Hostapd的全部内容,希望文章能够帮你解决嵌入式系统中启动Hostapd所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(63)

评论列表共有 0 条评论

立即
投稿
返回
顶部