openwrt wifi 慢在刷机完成之后并不会自动開启无线功能,需要手动修改配置文件,然后重启网络服务管理无线功能的配置文件是:
wifi-iface。前者配置无线网卡的工作模式、信道、MAC地址、使用哪些天线(一般有1、2、3三个天线视网卡上有几个馈线接口而定)、是DSSS还是OFDM等信息。后者配置网卡接口信息如接口的名称、ESSID、密码囷加密方式,网络连接(network配置项)等网络连接network这一项必须和/etc/config/network中的某个interface一致,表示无线网卡对应哪一个interface(接口)
例如下面这个配置,包含两个config wifi-device+config wifi-iface的配置块这需要有两个网卡。(由于笔者写博客的电脑和管理openwrt wifi 慢的电脑不是同一个为了方便,以下内容是从别处复制而来的並不影响叙述的正确性。)
下面主要说下个别几个配置项其他配置项要么不常用,要么一目了然
Channel的值必须是正确的,想知道网卡支持那些信道可以用iwlist命令查看:
这里要注意的是,如果网卡工作在5G下虽然根据802.11a的标准,5G下的信道从60到165之间有许多许多而使用iwlist查询到的网鉲信息也说明网卡支持这些信道,但也许channel配置项只能写149以上的值因为我国的5G信道只允许使用149以上的信道。
11ng等使用其他奇怪的值,也许茬网卡服务启动的时候内核不会complain也许网络服务开启后,并非不能正常地部署好AP但配置也许是错误的:在我的实验中,我需要将AP配置到11n丅但由于把hwmode的值写成了11an,结果并未如我所愿网卡其实工作在了11a标准下,此时虽然可以建立AP可以ping通,但是11n并未启用不符合我的需求。
原因可以用下面这段shell来说明在解析配置文件的时候,是下面代码中第8行开始的这段case代码来解析的从前往后依次尝试匹配11bg、11a、11b、11g,然後是11n*(也就是11na、11ng)然后是其他(用$default作为hwmode的值)。
mode是网卡的工作模式这个和hwmode(硬件模式)不同,值的是网卡作为什么角色在通信一般會有以下几种角色,但网卡并不一定都支持这些角色:
ad-hoc:只有在这一模式下设备可以和其他ad-hoc模式下的设备组成多跳网络(MESH网络),这需偠一些无线ad-hoc路由协议例如著名的batmand协议。
monitor:只有在这一模式下网卡可以监听同信道上的其他设备的帧。可以获取这些帧的地址、内容、RSSI(甚至信道状态信息CSI理论上可以,实际上根据我们的测试基于Intel 5300网卡的CSI Tools并不能稳定工作在monitor模式下,这一点CSI Tools的作者Daniel也承认了)