
无线中继有多种方式都能达到要求,但是每种都有细微的功能差距,如果只是家用,其实更推荐买个好点的路由器,现在一个好的路由器基本能覆盖几百平的空间范围,如果钢筋混凝土多的话,可能效果会差点,但是100平的房子肯定是没问题的,但如果你家很大,甚至上下楼好几层,采用有线、无线mesh会比较好,总的来说中继这种技术方案会慢慢成为过去式的,了解一下就好。
参考文章:
https://www.redoc.top/article/857-OpenWrt%20%E8%BF%9B%E9%98%B6%E6%95%99%E7%A8%8B%E4%B9%8B%E6%97%A0%E7%BA%BF%E4%B8%AD%E7%BB%A7%E9%85%8D%E7%BD%AE%E6%8C%87%E5%8D%97
https://www.right.com.cn/FORUM/thread-190115-1-1.html
https://www.right.com.cn/FORUM/thread-207897-1-1.html
在openwrt中,wds中继是一种非常好用的方式,因为只要上级主路由和本机都支持wds协议,就能非常轻松地把多个设备变成同一网络环境下的一组设备,它们有着共同的网关,共同的ssid,共同的加密方式等等,当终端接入网络中时,统一由主路由去分配IP地址,这样管理起来也会变得很方便。
设置方式:
通过扫描获取当前环境下的WiFi列表,找到你自己的主路由的WiFi
填写必要信息,例如密码、新接口的名称等,点击保存
此时可以通过网页右上方的“未提交的配置”来查看要提交的动作,作为开发者的话,你可以记录下来这些UCI命令,以确认它具体是需要配置什么,理论上来说应该包含wireless、network、firewall三大部分的配置,有可能会更多,记录下来是个不错的选择
选择连接方式为客户端WDS,这样就可以通过WDS去连接上级路由了,但是大前提是上级路由的WiFi工作在WDS模式下,否则就是不行的,现在市场上的路由器很多都没有这个配置项,不太懂为什么,但是能理解,毕竟是为了自家产品链的发展,把通用的协议删除,也没问题,这也就是为什么各个手机厂商有那么多互不兼容的充电协议,很无语但没办法。
保存后依然在“未提交的配置”中能看到具体的配置项
最后可以保存并应用,在配置都正确的情况下,你的本机设备就能连接上级WiFi并上网了,此时你可以在网页上查看上网状态,也可以在终端中使用命令ifconfig、ping等命令确认连接状态和上网状态
有的时候需要你手动在接口设置中关闭DHCP和配置当前网络的一个固定IP,具体情况具体分析
这种方式比较通用,任何品牌厂商、任何型号的设备应该都是没问题的(目前还没遇到过不能行的设备),这种方式可以理解为把设备当做终端接入上级路由,自身不需要其他的配置,DHCP、IP等都不需要配置,直接在扫描周边WiFi后选择主路由的WiFi接入即可,按照提示配置密码、接口名、加密方式等即可,注意,这里的接入方式需要选择普通的客户端方式,不要选择选择WDS的方式,在配置完成后,保存并提交即可连接至上级路由了。这种通用的中继方式也有一些特点:
使用本机的DHCP服务给连接至本机设备的终端分配IP地址,主路由不参与
连接不同从路由的终端会处于不同的网段中,因为它们的网关是不同的
无法从主路由管理
通用、应用广泛
这种方法用的相对比较少了,因为第二种方法已经很好用了,只是有一点点的局限,但是对于家用网络而言,由于配置简单快捷、稳定性高,也可以忽略其所带来的那一点点的局限性。
那假如你既想连接任意品牌的路由器,又想让网络设备处于同一网络环境下,该怎么办呢?此时就可以使用中继桥了。
menuconfig中勾选relayd编译进包内(网页安装luci-proto-relay亦可)
关闭本机设备的DHCP服务
扫描加入主路由的WiFi时,配置接口协议时选择中继桥(relay bridge),连接上级WiFi的接口设为LAN防火墙
其他正常填完配置后,回到接口页,编辑刚才新建的接口
把接口关联接口选择“lan”和连接上级WiFi的接口,默认为“wwan”,其他的不需要选中
检查防火墙中的配置,中继桥接口是否都设为允许了
/etc/config/wireless:配置连接上级WiFi和配置本机设备的WiFi
/etc/config/nerwork:配置中继桥、连接上级WiFi的接口
/etc/config/firewall:配置lan口、wan口、新建接口的防火墙
源码中的mac80211.sh:在函数detect_mac80211中,可以把部分WiFi配置直接配置好
源码中的firewall.config:可以直接把防火墙配置好
源码中的dhcp.conf:可以直接在这里关闭DHCP服务,但是关闭后,只能通过固定IP连接本机设备登陆网页后台管理界面了
源码中的network:可以直接配置好中继桥接口和连接上级WiFi的接口
config zone
option name 'lan'
list network 'lan'
list network 'wwan' //这是连接上级WiFi的接口
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'ACCEPT'
config interface 'relaybridge' //这是中继桥接口
option proto 'relay' //这是中继桥协议
list network 'lan' //需要包含两个接口,一个lan
list network 'wwan' //一个连接上级WiFi的接口wwan
config interface 'wwan' //这是连接上级WiFi的接口
option proto 'dhcp' //通过dhcp协议获取上级路由给本机设备分配的IP
config wifi-iface 'default_radio0' //这是本机设备的WiFi配置
option device 'radio0' //使用的哪个网卡
option network 'lan' //使用的哪个接口
option mode 'ap' //使用的什么工作模式,这是正常的路由模式
option ssid 'testwifi' //本机设备向外广播的WiFi
option encryption 'psk2' //本机设备WiFi的加密方式
option key 'testwifi' //本机设备WiFi的密码
//如果ssid、encryption、key都与上级主路由WiFi相同,可以实现无缝漫游
config wifi-iface 'repeater' //这是连接上级WiFi的中继配置
option device 'radio0' //使用的哪张网卡接入的上级主路由WiFi
option network 'wwan' //连接上级WiFi使用的接口
option mode 'sta' // 工作模式,这是客户端模式
option ssid 'testwifi' //上级WiFi的ssid
option encryption 'psk2' //上级WiFi的加密方式
option key 'testwifi' //上级WiFi的密码
option disabled '0' //配置是否启用,0:启用,1:禁用
config dhcp 'lan' //lan接口的dhcp配置信息
option interface 'lan'
option start '100' //起始地址
option limit '150' //可分配的地址数量
option leasetime '12h' //租期时间
option ignore '1' //是否忽略该接口的DHCP服务