OpenWrt中继桥

概述

家里只有一个路由器在客厅里,由于房型原因,卧室的信号不太理想。卧室门内部又是钢板结构,关上门以后信号更差,手机设备连接路由的wifi信号就时断时续的,偶尔需要用手机连接家中的设备,所以在想有没有办法扩展路由信号的覆盖范围,而又不会产生新的子网的方法。

解决办法

解决办法有三种:
可以通过WDS路由解决,但是前提就是主路由和从路由都要选择WDS模式,家中的路由根本不是一个品牌的,所以这个方案作罢。
可以通过电力猫中继路由信号,这种方式也可以实现WIFI信号的扩展,但是需要购买新的电力猫设备才可以。
通过OpenWrt的中继桥方式解决

  1. OpenWrt的中继桥通过relyd程序实现网络数据的转发。需要OpenWrt路由器内安装relaydluci-proto-relay两个软件包。
  2. 主路由器(假设ESSID为AP1),已经可以正常访问网络,并且已经设置了WIFI网络(不需要开启WDS模式)
  3. 从路由器(假设为AP2),网络-无线-radio0-扫描,搜索主路由AP1的WIFI网络进行连接。
    原教程写的不要覆盖原AP,但是在我的配置中,不覆盖原配置在后来手动删除原配置的时候,会连带把新配置一起删除,所以可以两种方式都试一下,看看是否受影响。
    信道和加密方式OpenWrt会自动判断,如果是隐藏SSID的WIFI网络,就需要手动输入这些信息了,只要可以连接上主路由的网络就可以了。
  4. 修改网络配置文件 /etc/config/network
config interface 'loopback'
                 option ifname 'lo'
                 option proto 'static'
                 option ipaddr '127.0.0.1'
                 option netmask '255.0.0.0'

config interface 'lan'
          option ifname 'eth0'
                 option type 'bridge'
                 option proto 'static'
                 option netmask '255.255.255.0'
                 option ipaddr '192.168.1.80'   #设置从路由IP地址

config interface 'stabridge'     #添加中继桥
                 option proto 'relay'
                 option network 'lan wwan'

config interface 'wwan'
          option proto 'dhcp'

  1. 修改DHCP配置文件/etc/config/dhcp(只添加一行,其他内容不变)
config dhcp lan
        option interface        lan
        option start            100
        option limit            150
        option leasetime        12h
        option ignore 1          #添加这一行,禁用lan的dhcp功能

  1. 修改防火墙配置文件/etc/config/firewall
    里面lan规则如下(添加wwan为lan规则并且允许forward):
config zone
        option name 'lan'
        option input 'ACCEPT'
        option output 'ACCEPT'
        option forward 'ACCEPT'       #修改前为REJECT
        option network 'lan wwan'     #添加了wwan
  1. 重启路由器
reboot

如果希望实现WIFI信号无缝漫游,可以把两个路由的SSID、加密方式以及密码设置成一样的即可。

参考资料

https://www.right.com.cn/forum/forum.php?mod=viewthread&tid=207897&page=1
https://www.right.com.cn/FORUM/thread-190115-1-1.html
https://www.right.com.cn/forum/thread-78291-1-1.html
https://blog.cavebeat.org/2012/08/openwrt-bridge-with-relayd-pseudobridge/