实现WiFi AP模式(二):hostapd和udhcpd的使用与配置 实现WiFi AP模式二hostapd和udhcpd的使用与配置前言1、hostapd的启动1.1、启动指令1.2、参数说明2、udhcpd的启动2.1、功能说明2.2、配置文件2.3、启动指令2.4、参数说明3、起AP示例4、hostapd.conf配置示例4.1、官方配置4.2、b模式2.4G 20MHz4.3、g模式2.4G 20MHz4.4、a模式5G 20MHz4.5、n模式2.4G 20MHz2.4G 40MHz5G 20MHz5G 40MHz4.6、ac模式5G 20MHz5G 40MHz5G 80MHz4.7、ax模式2.4G 20MHz2.4G 40MHz5G 20MHz5G 40MHz5G 80MHz4.8、ACS功能前言hostapd是一个用于实现无线局域网WLAN访问点AP功能的软件它是一个开源的Linux守护进程。hostapd可以将支持无线网卡的计算机转变为一个功能强大的无线AP允许其他设备连接并访问无线网络udhcpd是一个轻量级的DHCP服务器软件用于为局域网中的设备提供IP地址和其他网络配置信息1、hostapd的启动1.1、启动指令hostapd /路径/hostapd.conf-B1.2、参数说明-h显示帮助信息-d显示更多的debug信息(-dd 获取更多)-B将hostapd程序运行在后台-g全局控制接口路径这个工hostapd_cli使用一般为/var/run/hostapd-G控制接口组-PPID 文件-K调试信息中包含关键数据-t调试信息中包含时间戳-v显示hostapd的版本2、udhcpd的启动2.1、功能说明udhcpd是工作在server端的DHCP服务udhcpc则是工作在client端的DHCP服务DHCP(Dynamic Host Configuration Protocol动态主机配置协议)。是一个局域网的网络协议使用UDP协议工作。2.2、配置文件官方配置文件配置示例start192.168.50.2 end192.168.50.254 interface wlan0 max_leases234opt router192.168.50.1 注意interface需要根据实际使用的网络接口设置2.3、启动指令udhcpd-fS/路径/udhcpd.conf2.4、参数说明-h显示帮助信息-f以前台模式运行udhcpd输出日志信息到标准输出-bIP地址指定udhcpd绑定的IP地址-i网络接口指定udhcpd监听的网络接口-p端口号指定udhcpd监听的端口号-S启用DHCP服务器选项-O选项代码选项值添加自定义的DHCP选项-r租约时间指定DHCP租约的时间单位为秒-R租约时间指定DHCP租约的时间单位为分钟-s脚本文件指定udhcpd启动和停止时执行的脚本文件-C配置文件指定udhcpd的配置文件3、起AP示例为网络接口分配IP地址设置为网关地址ifconfigwlan0192.168.50.1启动udhcpd程序udhcpd-fS/路径/udhcpd.conf起hostapd程序hostapd /路径/hostapd.conf-B4、hostapd.conf配置示例4.1、官方配置官方配置文件最正宗的配置里面还有相关配置解释4.2、b模式2.4G 20MHz# 接口和驱动程序设置interfacewlan0drivernl80211ctrl_interface/var/run/hostapd ​# 基本网络设置ssidTestAPhw_modebchannel11​# WPA身份验证设置wpa2wpa_key_mgmtWPA-PSKwpa_passphrase12345678​# 加密算法设置wpa_pairwiseCCMPrsn_pairwiseCCMP4.3、g模式2.4G 20MHz# 接口和驱动程序设置interfacewlan0drivernl80211ctrl_interface/var/run/hostapd ​# 基本网络设置ssidTestAPhw_modegchannel11​# WPA身份验证设置wpa2wpa_key_mgmtWPA-PSKwpa_passphrase12345678​# 加密算法设置wpa_pairwiseCCMPrsn_pairwiseCCMP4.4、a模式5G 20MHz# 接口和驱动程序设置interfacewlan0drivernl80211ctrl_interface/var/run/hostapd ​# 基本网络设置ssidTestAPhw_modeachannel36​# WPA身份验证设置wpa2wpa_key_mgmtWPA-PSKwpa_passphrase12345678​# 加密算法设置wpa_pairwiseCCMPrsn_pairwiseCCMP4.5、n模式2.4G 20MHz# 接口和驱动程序设置interfacewlan0drivernl80211ctrl_interface/var/run/hostapd ​# 基本网络设置ssidTestAPhw_modegchannel6​# WPA身份验证设置wpa2wpa_key_mgmtWPA-PSKwpa_passphrase12345678​# HT802.11nieee80211n1ht_capab[SHORT-GI-20]​# 加密算法设置wpa_pairwiseCCMPrsn_pairwiseCCMP2.4G 40MHz# 接口和驱动程序设置interfacewlan0drivernl80211ctrl_interface/var/run/hostapd ​# 基本网络设置ssidTestAPhw_modegchannel6​# WPA身份验证设置wpa2wpa_key_mgmtWPA-PSKwpa_passphrase12345678​# HT802.11nieee80211n1ht_capab[SHORT-GI-20][HT40][SHORT-GI-40]​# 加密算法设置wpa_pairwiseCCMPrsn_pairwiseCCMP5G 20MHz# 接口和驱动程序设置interfacewlan0drivernl80211ctrl_interface/var/run/hostapd ​# 基本网络设置ssidTestAPhw_modeachannel52​# WPA身份验证设置wpa2wpa_key_mgmtWPA-PSKwpa_passphrase12345678​# HT802.11nieee80211n1ht_capab[SHORT-GI-20]​# 加密算法设置wpa_pairwiseCCMPrsn_pairwiseCCMP5G 40MHz# 接口和驱动程序设置interfacewlan0drivernl80211ctrl_interface/var/run/hostapd ​# 基本网络设置ssidTestAPhw_modegchannel52​# WPA身份验证设置wpa2wpa_key_mgmtWPA-PSKwpa_passphrase12345678​# HT802.11nieee80211n1ht_capab[SHORT-GI-20][HT40][SHORT-GI-40]​# 加密算法设置wpa_pairwiseCCMPrsn_pairwiseCCMP4.6、ac模式5G 20MHz# 接口和驱动程序设置interfacewlan0drivernl80211ctrl_interface/var/run/hostapd ​# 基本网络设置ssidTestAPhw_modeachannel52​# WPA身份验证设置wpa2wpa_key_mgmtWPA-PSKwpa_passphrase12345678​# HT802.11nieee80211n1ht_capab[SHORT-GI-20][HT40][SHORT-GI-40]​# VHT802.11acieee80211ac1vht_oper_chwidth1vht_oper_centr_freq_seg0_idx58vht_capab[SHORT-GI-20]​# 加密算法设置wpa_pairwiseCCMPrsn_pairwiseCCMP5G 40MHz# 接口和驱动程序设置interfacewlan0drivernl80211ctrl_interface/var/run/hostapd ​# 基本网络设置ssidTestAPhw_modeachannel52​# WPA身份验证设置wpa2wpa_key_mgmtWPA-PSKwpa_passphrase12345678​# HT802.11nieee80211n1ht_capab[SHORT-GI-20][HT40][SHORT-GI-40]​# VHT802.11acieee80211ac1vht_oper_chwidth1vht_oper_centr_freq_seg0_idx58vht_capab[SHORT-GI-20][SHORT-GI-40][VHT40]​# 加密算法设置wpa_pairwiseCCMPrsn_pairwiseCCMP5G 80MHz# 接口和驱动程序设置interfacewlan0drivernl80211ctrl_interface/var/run/hostapd ​# 基本网络设置ssidTestAPhw_modeachannel52​# WPA身份验证设置wpa2wpa_key_mgmtWPA-PSKwpa_passphrase12345678​# HT802.11nieee80211n1ht_capab[SHORT-GI-20][HT40][SHORT-GI-40]​# VHT802.11acieee80211ac1vht_oper_chwidth1vht_oper_centr_freq_seg0_idx58vht_capab[SHORT-GI-20][SHORT-GI-40][VHT40][SHORT-GI-80][MAX-A-MPDU-LEN-EXP7]​# 加密算法设置wpa_pairwiseCCMPrsn_pairwiseCCMP注意配置80M带宽需要把channel和vht_oper_centr_freq_seg0_idx配置好如图设置channel为52时需要vht_oper_centr_freq_seg0_idx设置为58就可以计算出80M带宽时的中心频率为多少4.7、ax模式2.4G 20MHz# 接口和驱动程序设置interfacewlan0drivernl80211ctrl_interface/var/run/hostapd ​# 基本网络设置ssidTestAPhw_modegchannel6​# WPA身份验证设置wpa2wpa_key_mgmtWPA-PSKwpa_passphrase12345678​# HT802.11nieee80211n1ht_capab[SHORT-GI-20]​# HE802.11axieee80211ax1​# 加密算法设置wpa_pairwiseCCMPrsn_pairwiseCCMP2.4G 40MHz# 接口和驱动程序设置interfacewlan0drivernl80211ctrl_interface/var/run/hostapd ​# 基本网络设置ssidTestAPhw_modegchannel6​# WPA身份验证设置wpa2wpa_key_mgmtWPA-PSKwpa_passphrase12345678​# HT802.11nieee80211n1ht_capab[SHORT-GI-20][HT40][SHORT-GI-40]​# HE802.11axieee80211ax1​# 加密算法设置wpa_pairwiseCCMPrsn_pairwiseCCMP5G 20MHz# 接口和驱动程序设置interfacewlan0drivernl80211ctrl_interface/var/run/hostapd ​# 基本网络设置ssidTestAPhw_modeachannel52​# WPA身份验证设置wpa2wpa_key_mgmtWPA-PSKwpa_passphrase12345678​# HT802.11nieee80211n1ht_capab[SHORT-GI-20]​# HE802.11axieee80211ax1​# 加密算法设置wpa_pairwiseCCMPrsn_pairwiseCCMP5G 40MHz# 接口和驱动程序设置interfacewlan0drivernl80211ctrl_interface/var/run/hostapd ​# 基本网络设置ssidTestAPhw_modeachannel52​# WPA身份验证设置wpa2wpa_key_mgmtWPA-PSKwpa_passphrase12345678​# HT802.11nieee80211n1ht_capab[SHORT-GI-20][HT40][SHORT-GI-40]​# HE802.11axieee80211ax1​# 加密算法设置wpa_pairwiseCCMPrsn_pairwiseCCMP5G 80MHz# 接口和驱动程序设置interfacewlan0drivernl80211ctrl_interface/var/run/hostapd ​# 基本网络设置ssidTestAPhw_modeachannel52​# WPA身份验证设置wpa2wpa_key_mgmtWPA-PSKwpa_passphrase12345678​# HT802.11nieee80211n1ht_capab[SHORT-GI-20][HT40][SHORT-GI-40]​# VHT802.11acieee80211ac1vht_oper_chwidth1vht_oper_centr_freq_seg0_idx58vht_capab[SHORT-GI-20][SHORT-GI-40][VHT40][SHORT-GI-80][MAX-A-MPDU-LEN-EXP7]​# HE802.11axieee80211ax1​# 加密算法设置wpa_pairwiseCCMPrsn_pairwiseCCMP4.8、ACS功能# 接口和驱动程序设置interfacewlan0drivernl80211ctrl_interface/var/run/hostapd# 基本网络设置ssidTestAP# 配置ACS5G频段可用的信道列表hw_modeachannel0country_codeCNchanlist3640444852566064149153157161165​# WPA身份验证设置wpa2wpa_key_mgmtWPA-PSKwpa_passphrase12345678​# HT802.11nieee80211n1ht_capab[SHORT-GI-20][HT40][SHORT-GI-40]​# VHT802.11acieee80211ac1vht_oper_chwidth1vht_oper_centr_freq_seg0_idx58vht_capab[SHORT-GI-20][SHORT-GI-40][VHT40][SHORT-GI-80][MAX-A-MPDU-LEN-EXP7]​# HE802.11axieee80211ax1​# 加密算法设置wpa_pairwiseCCMPrsn_pairwiseCCMP