OpenWRT 连接 802.1x WiFi 并中继


部分公共无线网络采用 802.1x 认证 (WPA-Enterprise),除了电脑/手机外鲜有设备支持,游戏主机、打印机、智能家居等设备均无法连接

部分路由器支持无线中继功能,而原厂固件通常不支持连接 802.1x 认证的 WiFi,此时可以考虑刷入 OpenWRT 路由器操作系统

OpenWRT 默认不支持 802.1x 认证,需要卸载内置的精简版 wpad 再安装全功能版本

opkg update

opkg download wpad-openssl
# 卸载 wpad-basic-xxx (不同 OpenWRT 版本内置的包不同)
opkg remove wpad-basic-xxx

opkg install wpad-openssl

安装 Travelmate(一套使用 NAT 的无线热点配置脚本)

opkg update

opkg install luci-app-travelmate

部分公共无线网络还在使用过时的 TLS 协议完成 802.1x 认证过程,使用 OpenWRT 默认的配置无法连接,需要修改 /lib/netifd/hostapd.sh 这个脚本

wpa_supplicant_add_network() {
    case "$auth_type" in
        eap|eap2|eap192)
            case "$eap_type" in
                fast|peap|ttls)
+                   append network_data "phase1=\"allow_unsafe_renegotiation=1\"" "$N$T"
                    append network_data "phase2=\"$phase2proto$auth\"" "$N$T"

至此,在 Travelmate 中添加公共无线网络,输入账号密码,勾选“使用系统证书”,然后在 网络 - 无线 中启用该公共无线网络即可