找到
3
篇与
热点
相关的结果
-
树莓派安装AIC8800d80驱动 环境信息 系统版本:6.6.51+rpt-rpi-v8 #1 SMP PREEMPT Debian 1:6.6.51-1+rpt2 (2024-10-01) aarch64 GNU/Linux USB WIFI设备:TL-XDN7000H 设备芯片:aic8800d80 查看设备连接状态 lsusb如果在usb设备列表中看到类似 ID a69c:5721 aicsemi AIC Wlan 的输出,是将设备识别为了存储模式,需要将存储模式修改为wlan模式 切换模式(非必须) 使用命令 sudo usb_modeswitch -KQ -v a69c -p 5721将存储模式修改为wlan模式 命令模式需要在每次启动都需要输入,比较麻烦,可以使用udev来管理设备 sudo vim /etc/udev/rules.d/70-usb-modeswitch.rules粘贴以下内容 ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="a69c", ATTR{idProduct}=="5721", RUN+="/usr/sbin/usb_modeswitch -v a69c -p 5721 -K"重新加载规则 sudo udevadm control --reload-rules sudo udevadm triggerimage-20241009142645898图片 安装驱动 我的TP-Link官方驱动在arm架构中安装失败,很可能是因为我的内核版本比较高,导致很多库不支持。 这里找到了绿联的AIC8800D80驱动,和我使用的TL-XDN7000H芯片一致 驱动下载地址: {% link 绿联,驱动下载,绿联WiFi6 USB无线网卡AIC8800D80驱动,https://www.lulian.cn/download/135.html %} 驱动下载链接:绿联WiFi6 USB无线网卡AIC8800D80驱动 文件中有详细安装教程,这里不再赘述 我这里直接安装了里面的aic8800d80fdrvpackage_2024_0606.deb文件 image-20241009143713835图片 成功驱动TL-XDN7000H image-20241009143856932图片 -
树莓派开启个人热点(二)解决网速慢问题 前言 为了在方便树莓派联网的同时让其他设备也能上网,就有了将树莓派作为软路由的想法,经过在网上各种搜索后不断折腾,最终也实现了这一目的。有同样需求的可参照下文 {% link 树莓派开启个人热点,Mstzf,https://blog.teohzy.com/post/startAP/index.html %} 一番配置下来确实成功开启了个人热点,但是网速和稳定性一直不是很理想 问题原因 hostapd配置文件网络协议没有设置正确 hostapd v2.9 和 树莓派4B都已经可以支持WIFI5,而我之前的配置还在使用上个世纪的iee802.11a协议 解决办法 修改以下hostapd配置文件即可 # vim /etc/hostapd/hostapd.conf将原配置文件删除,替换为新的 interface=wlan0 driver=nl80211 ssid=AP-Pi4 hw_mode=a channel=0 ieee80211n=1 ieee80211ac=1 ieee80211ax=1 ieee80211d=1 ieee80211h=1 country_code=CN auth_algs=1 wpa=2 wpa_passphrase=123456789 wpa_key_mgmt=WPA-PSK WPA-PSK-SHA256 rsn_pairwise=CCMP macaddr_acl=0 wmm_enabled=1 wmm_ac_bk_cwmin=4 wmm_ac_bk_cwmax=10 wmm_ac_bk_aifs=7 wmm_ac_bk_txop_limit=0 wmm_ac_bk_acm=0 wmm_ac_be_aifs=3 wmm_ac_be_cwmin=4 wmm_ac_be_cwmax=10 wmm_ac_be_txop_limit=0 wmm_ac_be_acm=0 wmm_ac_vi_aifs=2 wmm_ac_vi_cwmin=3 wmm_ac_vi_cwmax=4 wmm_ac_vi_txop_limit=94 wmm_ac_vi_acm=0 wmm_ac_vo_aifs=2 wmm_ac_vo_cwmin=2 wmm_ac_vo_cwmax=3 wmm_ac_vo_txop_limit=47 wmm_ac_vo_acm=0 he_su_beamformer=1 he_su_beamformee=1 he_mu_beamformer=1 he_bss_color=5 he_default_pe_duration=0 he_basic_mcs_nss_set=2 he_oper_centr_freq_seg0_idx=0 require_ht=1 he_su_beamformee=1 he_su_beamformer=1 he_bss_color=3 he_twt_required=1 vht_capab=[SHORT-GI-80][RX-STBC1][TX-STBC][SU-BEAMFORMER][SU-BEAMFORMEE]重启hostapd # sudo systemctl start hostapd -
树莓派开启个人热点 更新软件 $sudo apt update $sudo apt upgrade安装并配置hostapd服务 安装hostapd $sudo apt install hostapd $sudo systemctl stop hostapd配置hostapd 编辑/etc/hostapd/hostapd.conf文件,如果不存在这个文件可以直接新建一个。 $sudo vim /etc/hostapd/hostapd.confinterface=wlan0 #bridge=br0 #无线驱动n180211 driver=nl80211 logger_syslog=-1 logger_syslog_level=2 logger_stdout=-1 logger_stdout_level=2 ##### IEEE 802.11 related configuration ####################################### #热点名字,可根据需要自行更改 ssid=AP-Pi4 utf8_ssid=1 # ISO/IEC 3166-1 标准的国家代码,用于设置监管域。根据需要设置,按照哪个国家来操作设备。 # 这可以限制可用的频道和发射功率。 #country_code=CN # 是否启用 IEEE 802.11d,0 禁用(默认),1 启用。 # 需要正确设置 country_code 才能使 IEEE 802.11d 正常工作。 #ieee80211d=1 # 是否启用 IEEE 802.11h,0 禁用(默认),1 启用。 # 这将启用雷达探测和 DFS 支持,如果可用话。 #ieee80211h=1 # 添加 Power Constraint element 到 Beacon 和 Probe Response frames 中去。 #local_pwr_constraint=5 # 该选项仅在 ieee80211h=1 选项并且已经配置 local_pwr_constraint 选项时可用。 #spectrum_mgmt_required=1 # 设置无线模式需要硬件支持 #a = IEEE 802.11a, #b = IEEE 802.11b, g #= IEEE 802.11g, #ad = IEEE 802.11ad (60 GHz) # hw_mode=a 或 hw_mode=g 选项也与 IEEE 802.11n 一起使用来设置波段。 # 当使用 ACS 时(看下文 channel parameter ),可以使用特殊的选项值 hw_mode=any ,说明可以使用任何可用的波段,该值当前仅在驱动使用了 offloaded ACS 的情况下有效。 # 默认: hw_mode=b hw_mode=g # 注意有些设备不使用这个选项,而是需要在 iwconfig 中另外配置。 # 如果编译的时候启用了 CONFIG_ACS 选项。通过设置 channel=acs_survey 或 channel=0,这样 hostapd 可以在运行时基于 ACS survey 算法自动选择合适的信道。 # 有些设备仅支持最大为11频道,有些支持最大为13频道,可以通过iw list 查看。 # 另外启用 ht_capab 将影响可用的频道数 channel=6 # ACS tuning - 信道自动选择 # 参考:http://wireless.kernel.org/en/users/Documentation/acs # 信道自动选择,有助于选择更好的信道,但是会增加启动时间,一般不需要修改。 # 可以通过设置下面选项自定义 ACS survey 算法。 # 默认:acs_num_scans=5 acs_chan_bias=1:0.8 6:0.8 11:0.8 #acs_num_scans=40 #acs_chan_bias=1:0.8 6:0.8 11:0.8 # 默认允许所有信道 #chanlist=100 104 108 112 116 #chanlist=1 6 11-13 # beacon 间隔 (默认: 100; 范围 15到65535) #beacon_int=100 #dtim_period=1 # 默认且最大值为2007个列表 #max_num_sta=255 #rts_threshold=2347 #fragm_threshold=2346 #supported_rates=10 20 55 110 60 90 120 180 240 360 480 540 #basic_rates=10 20 #basic_rates=10 20 55 110 #basic_rates=60 120 240 # 用命令:iw list 查看无线网卡是否有“short preamble supported”。 # 0 禁用,1 启用,无线网卡支持的话可以启用以改善网络性能。 #preamble=1 # 无线MAC地址过滤 # 此选项要求 driver=hostap 或 driver=nl80211 # 0 = 接受所有连接,仅拒绝 deny 列表中的连接 # 1 = 拒绝所有连接,仅接受 accept 列表中的连接 # 2 = 使用外部 RADIUS 服务器 (还是会优先查找 accept/deny 列表) # 简单一点的话,可以将两个列表设置为同一个文件,仅由 macaddr_acl 来控制允许或拒绝 macaddr_acl=0 accept_mac_file=/etc/hostapd/hostapd.accept deny_mac_file=/etc/hostapd/hostapd.deny # 身份验证算法,1 开放系统认证,2 共享密钥认证(需要 WEP),3 两者 auth_algs=3 # 是否广播,0 广播SSID,1 不广播SSID(发送空SSID,即长度为0的SSID), # 2 忽略广播 SSID 的探测请求,跟1类似,但是兼容某些不支持空SSID的设备 #ignore_broadcast_ssid=0 #vendor_elements=dd0411223301 # 启用WMM wmm_enabled=1 # # WMM-PS Unscheduled Automatic Power Save Delivery [U-APSD] # Enable this flag if U-APSD supported outside hostapd (eg., Firmware/driver) #uapsd_advertisement_enabled=1 # # Low priority / AC_BK = background #wmm_ac_bk_cwmin=4 #wmm_ac_bk_cwmax=10 #wmm_ac_bk_aifs=7 #wmm_ac_bk_txop_limit=0 #wmm_ac_bk_acm=0 # Note: for IEEE 802.11b mode: cWmin=5 cWmax=10 # # Normal priority / AC_BE = best effort #wmm_ac_be_aifs=3 #wmm_ac_be_cwmin=4 #wmm_ac_be_cwmax=10 #wmm_ac_be_txop_limit=0 #wmm_ac_be_acm=0 # Note: for IEEE 802.11b mode: cWmin=5 cWmax=7 # # High priority / AC_VI = video #wmm_ac_vi_aifs=2 #wmm_ac_vi_cwmin=3 #wmm_ac_vi_cwmax=4 #wmm_ac_vi_txop_limit=94 #wmm_ac_vi_acm=0 # Note: for IEEE 802.11b mode: cWmin=4 cWmax=5 txop_limit=188 # # Highest priority / AC_VO = voice #wmm_ac_vo_aifs=2 #wmm_ac_vo_cwmin=2 #wmm_ac_vo_cwmax=3 #wmm_ac_vo_txop_limit=47 #wmm_ac_vo_acm=0 # Note: for IEEE 802.11b mode: cWmin=3 cWmax=4 burst=102 # 检测客户端不活动超时,是否在线间隔时间,默认每5分钟检测客户端是否在线 # 站点不活动限制,默认5分钟 #ap_max_inactivity=300 # 默认禁用,设置为1,说明只要客户在5分钟内没有活动就断线,即使客户端仍然在AP信号的范围内, #如果客户端过多可以启用来提高带机量。 #skip_inactivity_poll=0 # 对于过度的传输失败或其他连接丢失的情况下,断开连接,这并不适合所有设备 #disassoc_low_ack=1 # 最大允许侦听间隔,默认65535,即不限制 (how many Beacon periods STAs are allowed to remain asleep) #max_listen_interval=100 # WDS(4-address frame)模式,仅在 driver=nl80211 的情况下支持 #wds_sta=1 # 仅在设置了bridge= 时有效,默认情况下,例如当设置了bridge=br0,那么wds_bridge=br0。 # 当然也可以手动指定为wds_bridge=XXXXX。 #wds_bridge=wds-br0 # Start the AP with beaconing disabled by default.没明白是什么意思。 #start_disabled=0 # AP隔离,1启用,0禁用。默认不隔离。 #ap_isolate=1 #bss_load_update_period=50 # 用于测试的 #bss_load_test=12:80:20000 ##### IEEE 802.11n related configuration ###################################### # 启用80211n,你也将需要启用WMM来使用全部HT功能。 ieee80211n=1 # [HT40-]或[HT40+]没有设置的话将只工作在20MHz, # [HT40-]对应可使用的频道为5-13 # [HT40+]对应可使用的频道为1-7(欧洲标准为1-9) # 当多径效应不是很严重时,用户可以将该间隔配置为[SHORT-GI-20][SHORT-GI-40] # 个人理解,如果不上天馈系统的话可以启用[SHORT-GI-20][SHORT-GI-40],前提是硬件支持。 #ht_capab=[LDPC][HT40-][HT40+][SHORT-GI-20][SHORT-GI-40][SMPS-DYNAMIC][GF][TX-STBC][RX-STBC123][DELAYED-BA][MAX-AMSDU-7935][DSSS_CCK-40][40-INTOLERANT][LSIG-TXOP-PROT] # intel Wireless-N 105 (rev c4) 网卡支持的选项 ht_capab=[HT40-][SHORT-GI-20][SHORT-GI-40][DSSS_CCK-40][40-INTOLERANT][GF] # Atheros AR9271 网卡支持的选项 #ht_capab=[HT40-][SHORT-GI-20][SHORT-GI-40][DSSS_CCK-40][40-INTOLERANT][RX-STBC1] #ht_capab=[HT40-][SHORT-GI-20][SHORT-GI-40][DSSS_CCK-40] #ht_capab=[HT40-][SHORT-GI-20][SHORT-GI-40] #ht_capab=[HT40+][DSSS_CCK-40][40-INTOLERANT] # 强制要求客户端使用HT PHY,不使用就拒绝。 #require_ht=0 # 间隔时间(秒) #obss_interval=5 ##### WPA/IEEE 802.11i configuration ########################################## # 1 wpa,2 wpa2, 3 两者。 新的设备可以设置为2,仅使用wpa2版本。 wpa=2 # 指定密码,ASCII码或密码字符。 #wpa_psk=0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef #密码设置 wpa_passphrase=12345678 # 使用密码文件,可以跟客户端MAC地址绑定设置不同的密码,比较实用。 wpa_psk_file=/etc/hostapd/hostapd.wpa_psk # 是否使用验证服务器,0 禁用(默认),1 可用,2 强制使用(其他方式将拒绝) #wpa_psk_radius=0 # 设置密钥管理算法WPA-PSK WPA-EAP或两者 wpa_key_mgmt=WPA-PSK # 设置加密算法,CCMP就是AES,不推荐使用TKIP,除非设备不支持。 wpa_pairwise=CCMP # 默认情况下rsn_pairwise自动设置为wpa_pairwise的值,当然也可以手动指定。 #rsn_pairwise=CCMP #wpa_group_rekey=600 #wpa_strict_rekey=1 #wpa_gmk_rekey=86400 #wpa_ptk_rekey=600 # 预认证 #rsn_preauth=1 #rsn_preauth_interfaces=wlp2s0 br0 enp3s0 #peerkey=1 # 80211w支持,0 禁用(默认),1 可选,2 强制使用(其他方式将拒绝) 有些网卡不支持 #ieee80211w=1 # AES-128-CMAC(默认) BIP-GMAC-128 BIP-GMAC-256 BIP-CMAC-256 四种 # 一般通用设备都支持AES-128-CMAC,其他的不一定 #group_mgmt_cipher=AES-128-CMAC #assoc_sa_query_max_timeout=1000 #assoc_sa_query_retry_timeout=201 #disable_pmksa_caching=0 #okc=1 #sae_anti_clogging_threshold=5 #sae_groups=19 20 21 25 26 ##### IEEE 802.11r configuration ############################################## # Wi-Fi无线漫游标准 #mobility_domain=a1b2 #r0_key_lifetime=10000 #r1_key_holder=000102030405 #reassociation_deadline=1000 #pmk_r1_push=1 ##### Neighbor table ########################################################## #ap_table_max_size=255 #ap_table_expiration_time=3600 ##### IEEE 802.11v-2011 ####################################################### # Wi-Fi节能版 #time_advertisement=2 #time_zone=CST8 # 下面三项有些网卡不支持 #wnm_sleep_mode=1 #bss_transition=1 #proxy_arp=1为了便于使用,将注释去除 (所用协议较老,请参照最新版) interface=wlan0 driver=nl80211 #修改名字 ssid=AP-Pi4 utf8_ssid=1 hw_mode=g channel=7 ieee80211n=1 macaddr_acl=0 auth_algs=1 wmm_enabled=0 wpa=2 #密码设置 wpa_passphrase=12345678 wpa_key_mgmt=WPA-PSK wpa_pairwise=CCMP ssid: WiFi 名称,8~64 个字符,最好用英文字母,不要出现特殊字符 hw_mode: WiFi 网络模式,一般填 g 即可,设备支持的话可以填 a 启用 5G 频段: a = IEEE 802.11a (5 GHz) b = IEEE 802.11b (2.4 GHz) g = IEEE 802.11g (2.4 GHz) channel: 信道编号。如果上面配置了 hw_mode=g 使用 2.4G 频段,则一般填 7 即可。如果配置了 5G 频段,则信道编号有所不同,具体参考:无线局域网信道列表 - 维基百科,自由的百科全书 (wikipedia.org) wpa_passphrase: WiFi 密码,最好用英文加数字,不要出现特殊字符 最新版配置文件 interface=wlan0 driver=nl80211 ssid=AP-Pi4 hw_mode=a channel=0 ieee80211n=1 ieee80211ac=1 ieee80211ax=1 ieee80211d=1 ieee80211h=1 country_code=CN auth_algs=1 wpa=2 wpa_passphrase=123456789 wpa_key_mgmt=WPA-PSK WPA-PSK-SHA256 rsn_pairwise=CCMP macaddr_acl=0 wmm_enabled=1 wmm_ac_bk_cwmin=4 wmm_ac_bk_cwmax=10 wmm_ac_bk_aifs=7 wmm_ac_bk_txop_limit=0 wmm_ac_bk_acm=0 wmm_ac_be_aifs=3 wmm_ac_be_cwmin=4 wmm_ac_be_cwmax=10 wmm_ac_be_txop_limit=0 wmm_ac_be_acm=0 wmm_ac_vi_aifs=2 wmm_ac_vi_cwmin=3 wmm_ac_vi_cwmax=4 wmm_ac_vi_txop_limit=94 wmm_ac_vi_acm=0 wmm_ac_vo_aifs=2 wmm_ac_vo_cwmin=2 wmm_ac_vo_cwmax=3 wmm_ac_vo_txop_limit=47 wmm_ac_vo_acm=0 he_su_beamformer=1 he_su_beamformee=1 he_mu_beamformer=1 he_bss_color=5 he_default_pe_duration=0 he_basic_mcs_nss_set=2 he_oper_centr_freq_seg0_idx=0 require_ht=1 he_su_beamformee=1 he_su_beamformer=1 he_bss_color=3 he_twt_required=1 vht_capab=[SHORT-GI-80][RX-STBC1][TX-STBC][SU-BEAMFORMER][SU-BEAMFORMEE]编辑/etc/default/hostapd文件,将DAEMON_CONF前面的注释去掉,并加上/etc/hostapd/hostapd.conf image-20220208150739117图片 $sudo vim /etc/default/hostapd DAEMON_CONF="/etc/hostapd/hostapd.conf"保存退出后启动hostapd $sudo systemctl unmask hostapd $sudo systemctl enable hostapd $sudo systemctl start hostapdimage-20220208153101418图片 可以看到热点已经开启成功,但是还没有分配IP不能上网。 配置wlan0静态IP 让wlan0的IP地址设置成静态的,然后在通过DHCP同态的去给连接设备分配IP $sudo apt install dhcpcd $sudo vim /etc/dhcpcd.conf在文件最后添加 interface wlan0 static ip_address=192.168.4.1/24 nohook wpa_supplicant保存退出,重启dhcpcd服务: $sudo systemctl restart dhcpcd查看wlan0的IP地址:ifconfig ,可以发现,wlan0的IP已经改变为之前设置的地址 image-20220209160315594图片 安装并配置dnsmasq服务 Dnsmasq 提供 DNS 缓存和 DHCP 服务功能。作为域名解析服务器(DNS),dnsmasq可以通过缓存 DNS 请求来提高对访问过的网址的连接速度。作为DHCP 服务器,dnsmasq 可以用于为局域网电脑分配内网ip地址和提供路由。DNS和DHCP两个功能可以同时或分别单独实现。dnsmasq轻量且易配置,适用于个人用户或少于50台主机的网络。此外它还自带了一个 PXE 服务器。 安装dnsmasq服务 $ sudo apt install dnsmasq $ sudo systemctl stop dnsmasq配置dnsmasq 编辑/etc/dnsmasq.conf文件,将里面的内容删除或者注释掉。 sudo vim /etc/dnsmasq.conf #添加新内容 interface=wlan0 dhcp-range=192.168.4.2,192.168.4.20,255.255.255.0,24h #dhcp 服务会给客户端分配 192.168.4.2 到 192.168.4.20 的 IP 空间,并设置24 小时租期。 #重启dnsmasq服务 $sudo systemctl restart dnsmasq配置完后连接到热点已经自动分配到了一个IP地址,但是还不能上网 image-20220209162149776图片 配置IP转发 编辑 /etc/sysctl.conf 系统配置文件,将 net.ipv4.ip_forward=1 前面的注释去掉。 $sudo vim /etc/sysctl.conf #net.ipv4.ip_forward=1 #将前面的 # 号删除image-20220209162842756图片 修改防火墙规则 安装iptables apt install iptables$sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE $sudo iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT $sudo iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT ##若要通过热点建立NAS开启以下防火墙规则 #sudo iptables -A INPUT -p tcp --dport 139 -j ACCEPT #sudo iptables -A OUTPUT -p tcp --sport 139 -j ACCEPT #sudo iptables -A INPUT -p tcp --dport 445 -j ACCEPT #sudo iptables -A OUTPUT -p tcp --sport 445 -j ACCEPT 为了避免每次重启后都要重新配置,将防火墙规则写入开机启动项 将防火墙规则写入文件 $sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"编辑/etc/rc.local,将iptables-restore < /etc/iptables.ipv4.nat加到exit 0前面。 $sudo vim /etc/rc.local #加在exit 0前面 iptables-restore < /etc/iptables.ipv4.nat 若执行后出现:sh: 1: iptables-save: not found 要先安装iptables $sudo apt install iptablesimage-20220209163455762图片 保存退出后重启树莓派:sudo reboot。 网络测试 经过一段时间的测试,能够正常访问互联网,网速也还可以,但是在流量较大时会间歇性断开连接,上传速率也有些异常,目前还不清楚是什么原因造成。(已解决) image-20220209185439101图片 常见问题修复 网络慢问题分析及解决办法 {% link 树莓派开启个人热点(二)解决网速慢问题,Mstzf,https://blog.teohzy.com/post/startAP2/index.html %} 设置hostapd开机自启失败解决办法 可能原因:NetworkManager占用wlan0导致启动失败 解决办法:禁用 NetworkManager 控制 wlan0 创建一个 NetworkManager 的配置文件 sudo nano /etc/NetworkManager/conf.d/no-wlan0.conf 编辑配置文件 [keyfile] unmanaged-devices=interface-name:wlan0 重启NetworkManager sudo systemctl restart NetworkManager