k2 中继

曾经在路由器跑分 && 刷机 后日谈 及 几个加速器使用情况收集中提到过

刷个 padavan 在家当非单独子网的无线中继好了,加速器识别到家中的华硕主路由器,让华硕来加速,这个就仅仅弥补 xbox 无线拉跨的问题。

今天就谈谈中继的问题。

padavan

参考文章:老毛子Padavan固件(华硕固件)无线中继设置以及自动切换脚本中继 - 哔哩哔哩

打开中继

padavan 界面经过几次调整,现在的中继菜单项在高级设置(记点进去而不是在它本身的下拉菜单项) -> 无线 2.4 GHz/无线 5 Ghz -> 无线桥接中。

需要做说明的就是其中的无线 AP 工作模式和无线 AP-Client 角色。

  • AP 工作模式。分为 AP(禁用桥接)、WDS桥接(禁用AP)、WDS中继(桥接+AP)、APCliet(禁用AP)、APClient(APClient+AP) 五种。

    AP(禁用桥接)为默认不使用桥接时的模式,而 WDS中继(桥接+AP)、APClient(APClient+AP) 是在剩下两种上开启 AP(无线信号)的模式,所以我们在这两种中间选一种就行了。

    WDS (注意不要和那个有漏洞的 WPS 功能混淆了)需要在被中继的路由上开启相关功能,ap 则不需要,本文我们选择后者。另外 WDS 中继还有升级版 —— 被称作 mesh(听起来熟悉多了吧,这两年各大厂都在吹这玩意)。

  • 无线 AP-Client 角色。分为 LAN bridge 和 WAN(Wireless ISP)两种。简单来说,前者是网桥,后者是路由。之前用极路由 2 做 xbox 中继加速的时候,加速器在极路由上安装,所以是路由模式(极路由的中继也只有路由模式可选);此处我们用 K2 做加速,但加速器在主路由(ac86u)上安装,那么就得用网桥模式。

之后只要点开上级 SSID 搜索并选主路由的 SSID,输好密码,其他保持默认就行。

网桥中继关闭 dhcp 及调整网段

但如果选择网桥中继,还需要做一些其他的设置:

  • 内部网络(LAN) -> DHCP 服务器,关闭「启用 DHCP 服务器」的开关,因为主路由的 DHCP 会和中继路由的 DHCP 冲突。
  • 内部网络(LAN)-> 内网设置 -> ip 地址,填入一个 ip 地址,格式为 192.168.x.y。x 和 y 的地址原则上随意,但 x 最好在自己常中继的设备的网段中,y 要避免和自己常中继设备网段设备中的设备 ip 冲突。打个比方,自己主路由的网关是 192.168.111.1,且通过查询主路由管理界面发现自己没有 ip 为 192.168.111.2 的设备,那么就可以把这个地址设置为 192.168.111.2。

打开中继后进入中继路由管理界面

成功中继后,路由器有可能就不能直接用原来的 ip 地址进入管理界面了。有两种情况:

  1. 按上面所说的中继路由内部网络 ip 在主路由网段内。那么此时先尝试访问之前我们填的 ip 地址。如果访问不到,说明中继路由被主路由重新分配了 ip 地址。我们需要一些方法「探测」到中继路由在网段内的 ip 地址:

    • 通过主路由 web 管理中的设备管理界面(比如下面这张图最顶上那个就是 K2,但其实这个地址完全不对)

    • windows 的 arp -a 命令(这个命令只能显示内网有多少设备但不显示具体设备名)或其他一些嗅探工具

    • android 的 pingtools (推荐)或其他的一些嗅探工具

  2. 按上面所说的中继路由内部网络 ip 在不在主路由网段内。比如之前我说的,带 xbox 出门去同学家,同学的路由器刚好也是能加速的,那我也可以带 k2 去中继,但此时开机后你会发现因为没开 dhcp 连上的设备无法获得相应网段的 ip 地址自然访问不到中继路由的 web 界面了。两种解决方法。

    • 通过有线方式,路由器 wan 口连接其他有线路由器的 lan 口,自己的手机 / pc 连上接着中继路由的路由器然后使用「中继路由内部网络 ip 在主路由网段内」的几种方法就能找到中继路由的新 ip;

    • 手动设置 ip。以 windows 为例,连上中继路由器后,右击任务栏的右侧的网络图标,选择“打开网络和 Internet 设置”,点击更改适配器选项,找到自己当前网卡的适配器,双击打开,进入属性,双击 Internet 协议版本 4,设置为使用下面的 ip 地址。ip 地址具体设置,还是以上面中继路由 ip 设置为的 192.168.111.2 为例,此处 ip 可填 192.168.111.x,子网掩码 255.255.255.0,网关 192.168.111.x,这里两个 x 填啥都可以,无所谓,目的只是为了最后让机子和路由器在同一网段中。设置好后确定,等一阵子打开 192.168.111.2 就是中继路由的管理界面了。

      如果是安卓也是相同的改法,甚至更简单,这里就不再复述了(不过安卓需要在连接前就手动指定 ip 和网关,否则就会一直卡在获取 ip 地址这一步连不上 wifi,另外连接前可能要先关掉流量,有的机子判断 wifi 无法上网时还会继续跑流量,导致中继这边 web 打不开)。

      修改完中继参数后记得再把系统这个 ip 设置改回自动获得。另外一点,设置好中继后有可能在主路由中看到中继路由,但因为网段不一样,所以是没法直接访问的,除非去改中继路由的内网 ip 地址。可拿回家又要再改,没必要。

自动切换被中继路由

因为中继路由我只在自己家和我同学家使用,每次换地方设置中继都要折腾一边,有没有自动切换的方法?当然有。

就在中继页面的底部,可以编辑 ap_script,按照说明,在自动切换中继信号处写两条规则就行了。写完后点应用然后重启路由。注意!不要直接拔电源重启,而是按页面顶部的重启键重启,因为后者重启时会检测配置是否保存了,而前者有可能重启后你发现刚写的配置没了。

最后一点。在系统管理 -> 操作模式处,也可以设置路由模式为无线接入点。

随后进行无线中继的话就会固定使用 LAN bridge无线 AP-Client 角色。

但使用这个模式会导致 ap_script 脚本失效(日志中显示连接了然后又断开再显示无法连接),和无线路由器模式相比没有优势(唯一算优势的地方,就是路由器模式下 LAN bridge 就算连上网了指示灯也是红的,而无线接入点模式下连上网灯是黄的,也就是正常的)。


(21.2.6 更新) 灯的问题属于 hiboy padavan 独有问题。自编译 hanwckf/rt-n56u: Padavan 中继模式灯颜色正常,但自编译又没有自切换中继信号的功能了。

另外 padavan 这么中继问题不小。。。过了几天拿到我朋友家,发现中继没有正常工作,不仅如此,用任何方法 web 管理界面都进不去了(包括访问我们修改过的内部网络 ip,通过有线接到别人的路由下等方法),甚至 pingtools 都探测不到中继路由的 ip,只得重置,感觉 padavan 不靠谱。

(21.2.10 更新) 之前中继的时候用的是 newifi Y1S 附赠的 12V 1.5a 电源。后续买了一个 ppd 的 n1,送了一个 12v 1.5a 的电源,意外发现有时用 Y1S 电源时中继失败但换用 n1 电源就可以中继成功,看来电源稳定性对中继是有影响的(联想的几个硬件相对斐讯那算是「偷工减料」了),这个现象在后面的 asus 固件中继中又出现了一次。

(21.4.3 更新) 用着用着发现一个神秘问题:我把路由器拿到同学家,发现还是分配不出 ip。手动修改电脑 ip 进入 web 管理界面后,发现日志中 padavan 路由已经识别到我同学家的主路由了,而且上面那个无线桥接页面的各项配置也自动被修改了,但就是连不上。我想了想,再次拔线重启 padavan,这回就连上了。回到家换成连接家中的主路由,同样是这个现象,要重启两次。

openwrt(21.2.6 更新)

padavan 不太行,那就换用 openwrt 吧。

安装插件

openwrt 的中继和自动切换热点需要加入两个 luci 插件:luci-proto-relayluci-app-travelmate,可以自己用 ssh 的 opkg 命令安装,我的选择是在编译过程中添加,避免自己用 opkg 安装时出现依赖问题,luci-proto-relay 在 LuCI -> Protocols 下;luci-app-travelmate 在 LuCI -> Applications 下,不懂的编译的同学可以参考这篇文章。吐槽一句,k2 要编译成功还得多精简几个东西(比如 ipv6 啊,usb 驱动啊),8m 的 rom 太拮据了。。。

另外 travelmate 有两个前身。

一个叫 auto-ap,参考

另一个叫 luci-app-autorepeater,参考 peter-tank/luci-app-autorepeater: Helps you turn your router as automatic repeater, by join scanned wireless station from ssid or bssid.

在最新的 openwrt R21.2.1 版本中,这两个插件已均不生效(但后来我尝试刷入旧版 openwrt 这俩东西也没成功生效过。。。)

配置 travelmate

先配置自动切换中继路由的功能。在服务 -> travelmate 处,默认的未配置情况下这里是 Interface Wizard 页面,需要在 Create Uplink interface 处把默认的 trm_wwan 改为自己的无线 wifi 中继接口。

默认为 wwan,改好后确定保存,即可进入真正的配置界面。

转到 Wireless Stations 处。此处的扫描 radio0 是扫描 5g 信号,radio1 则是扫描 2.4g 信号。通过扫描,把需要中继的信号都加进去,调整好顺序。

如果说目前受限于地理位置,无法通过扫描添加未来要自动切换的被中继信号呢?可以通过 Advanced -> Edit Wireless Configuration,在下面的代码编辑器最后一行下面添加

1
2
3
4
5
6
7
8
config wifi-iface
option network 'wwan'
option device 'radio0'
option mode 'sta'
option ssid '[被中继信号ssid]'
option encryption 'psk2'
option key '[被中继信号密码]'
option disabled '1'

最后回到总览。启用 Enable travelmate,建议关闭 Captive Portal Detection(出门在外,可能会中继外面的 wifi 或自己的手机热点,信号没那么稳定,再开这个选项切来切去体验就会变差),最后保存并应用。

配置中继桥

参考文章:

说到这里,使用 openwrt 有个好处:可以配置完所有功能再应用。padavan 配置网桥的话,如果顺序没有安排好,先配置关闭 dhcp 后还得手动调整自己机子的 ip 地址才能返回 web 管理界面;openwrt 则可以一次配置完后再去获取当前网段下中继路由的 ip。

  1. 调整 wwan 的防火墙类型。在网络 -> 接口中找到 wwan,选择修改,在配置 -> 防火墙区域中把区域从 wan 调到 lan,并保存。

  2. 新建中继桥。新增一个接口,新接口协议选择「中继桥」(须安装 luci-proto-relay 才会有这个)。

    提交后修改「网络间中继」,勾选 lan 和 wwan。然后同样将这个中继桥的防火墙区域指向 lan,保存。(这样设置其实还不行,但我卖一个关子,待会在 bug 那里说)

  3. 修改 lan 接口。和 padavan 不同,这里设置的 lan ip 必须不在被中继路由子网内,比如被中继路由网关 ip 是 192.168.100.1,这里就不能填 192.168.100.2 之类的,可以填 192.168.101.1。勾选 dhcp 中的「忽略此接口」。此时可以保存并应用,必要时重启路由。

bug

这么一通配置完了,发现几个问题:

  1. 上不去网,因为 ip 没下发,看来是 dhcp 的包没从被中继路由那边传过来。

  2. 手动配置网关和 ip 后, windows 10 的网络连接显示从无连接变成了已连接。但几乎所有程序都还连不上网,除了浏览器,原因是浏览器我挂上了 cfw,我的 cfw 开起了 dns 服务。用 nslookup 检测的话,会报错 dns。也就是 dns 的包也没传过来。

  3. 时不时网络卡顿。

第二点,可通过修改中继桥的本地 ipv4 地址解决。需要修改成中继路由在主路由中的 ip,可从总览 -> 网络处获取。

但一和三就麻烦了,参考文章中也列出了该种 bug:

上面这段说明里面的 kmod-trelay,可以参考 Howto kmod-trelay - Installing and Using OpenWrt / Network and Wireless Configuration - OpenWrt Forum。但我实验了几天,没成功,而且为了 dhcp 预计会导致两个更大的问题:

  1. 只能用于无线中继转有线。起码无线连不上。参考文章中要给 wwan 改 mac,改成连接到中继路由设备的 mac,我用笔记本无线连接后改成笔记本无线网卡的 mac,一重启路由,发现笔记本找不到中继路由发的 5g 信号,估计是 wwan 拿的笔记本 mac 走的 5g 中继,笔记本也通过路由发送的 5g 连接路由器,两个 mac 冲突了。
  2. 因为第一点,导致只能中继一个设备,因为路由只有一个网卡,只能改一个 mac。

要配置网桥,移动地点后不能直接中继还得进 web 管理界面改网桥地址,这就太麻烦了。

还有诸如以下的麻烦:

  1. 不能直接从 web 看在线了多少设备(曾经在线过的设备也会显示在在线列表中,而且不显示是否离线)。可以通过 ssh 命令 ip neigh | grep REACHABLE
  2. 可能会有某个有线网口失效。
  3. 使用开源驱动导致 k2 的 pa+lna 信号放大芯片不生效,信号差一点。

不过我也发现两个优势:

  1. 手动修改 ip 连上中继并能正常上网后,仍然可以通过 lan ip 进入 web 管理界面。其他系统做不到这点,因为 lan ip 和中继路由不在一个网段,其他系统想进去 web 界面得手动修改到 lan ip 的网段;padavan 可以设置 lan ip 到中继路由的网段,但移动地点以后多半又不在同一个网段了,还是不如 openwrt 方便;
  2. 可以同时使用网桥中继和 WISP 中继。比如以下的方案——新开一个 wwan2.4 接口和 lan2 接口,lan2 和 wwan2.4 接口接起来,lan2 开启 dhcp,wwan2.4 和 2.4g 无线接起来,就可以达成连接 2.4g 进入相对稳定而方便的 WISP 中继,连接 5g 并手动设置 ip 进入网桥中继。有线一般走 lan,也就是网桥中继,这大家也可以自己设置,就不详细阐述了。另外从 2.4g 无法进入 ssh,因为在系统 -> 管理权处 dropbear 只给了 lan 接口,可以多开一个给 lan2 接口,或者设置为未指定。

看来 openwrt 也不太行。。。

转了一圈,试过了高铬,发现除了有个检测在线 qq 的功能,并没有其他优势,中继里也没有中继桥功能可用。

然后发现了带有 pa+lna 驱动的华硕固件,刷进去发现还不错。

asus 中继(21.2.7 更新)

K2 ASUS_AC1200HP自动编译版 - 斐讯无线路由器以及其它斐迅网络设备 - 恩山无线论坛 - Powered by Discuz!

第一次连接,就可以选择中继模式。这里的中继模式就直接是网桥(中继桥)模式了。

华硕的固件比较傲娇,成功中继后在被中继路由的管理界面看不到中继路由 ip,使用其他方法(比如 pingtools)也找不到。得使用华硕自己的软件 ASUS Device Discovery。这个软件在苹果端 app store 和安卓端 google play 也有对应平台的移动端。虽说得多装个软件吧,但使用起来比用 arp 探测的几个方法要方便可靠多了:打开软件就能找到设备,点击配置就直接跳到 web 管理界面。

asus 固件没有自动切换中继功能,但手动切换中继比 padavan 方便多了。找不到中继信号的 asus k2 应该会把自己的 ip 自动设回 192.168.1.1,直接访问就行,不成功再用上面介绍的 app 找到管理 ip 并进入。点击主页的重新搜寻即可重新进入中继设置界面。

此时不点击自动设置无线就可以使用之前设置的无线密码连接中继路由。

当然进不去中继路由管理界面还有一种可能就是用了不可靠的电源。之前我换到同学家使用不仅打不开中继界面,连无线信号和联网状态也断断续续,把 Y1S 的电源换成 n1 原装电源解决。另一次供电不足甚至造成了无线 loopback,在主路由 web 中一瞬显示中继路由下挂了 30 多个设备。。。

我感觉网桥中继模式应该比较吃供电来着。


相比 padavan 另一个好评的地方是,灯颜色对了(

网桥中继除了有供电上的毛病,有时候设备第一次链接中继路由会发现第一时间上不去网,其实是通过中继路由一时半会拿不到主路由 dhcp 分配的 ip 地址。(主路由你快点!给主路由倒一杯卡布奇诺)

如果有多余的路由器,下面这个方案才是最合适的,集速度稳定网桥中继于一身,甚至就算供电不太稳使用起来依旧没什么问题。

集客 ap 中继(21.3.1 更新)

参考文章:

集客 ap 和普通网桥中继原理略有不同。集客 ap 需要通过有线方式挂一个路由器在主路由下,这个挂在主路由下的路由叫做 ac 面板。而真正的中继路由被称为 ap,ap 能通过各种方式和 ac 完成配对,完成配对后的 ac 和 ap,迁移环境后无需再次配对——也就是说,只要我在家里配置好 ac 和 ap,带到同学家,只要把 ac 挂到他的路由器上,ap 无论放在那里,只要一插电,过一会就能用了。因为 ac 面板有处理能力,dhcp 的速度和中继的稳定性也优于直接中继。另外 ap 除了可以通过无线配对,也能通过有线配对,被称为有线/无线回程。

记得我在 padavan 那边提到的 WDS 么?集客 ap 此处实现的功能便是 mesh 的一部分,WDS 这里也可以使用额外的两台路由完成中继,mesh 和 WDS 的区别在于,mesh 的管理功能和稳定性都要更强;不过 WDS 有一定泛用性,有的时候支持某两种不同品牌 / 系统的路由。但类似于 asus,使用 wds 需要进入两边的路由 web 界面把各自的 mac 添加进去;openwrt 还需要像上面网桥中继教程那样在中继路由上手动设置被中继路由的网关与 ip,跟 mesh 即插即用相比差了不是一点点。

集客 ap 下载地址:文件管理

页面中集客 AP_MTK_MIPS 是 ap,集客微路由_MTK 是 ac 面板。但 ap 中实际上带有微 ac,可以带最多 16 台 ap,(22.09.03更新) 且 ac 并不支持我们待会要用的无线 mesh 回程功能,只支持有线 ac。

所以我们下两个 ap 就好了,这样两个路由都可以胜任 ac / 中继 ap。我多出来的路由是极路由 2 和 newifi Y1S,这两个都没带 pa+lna,所以虽然处理器相同但要下的固件和 k2 的固件是不一样的,k2 下 AP230EP,另外两个路由应该下 AP230IP,我尝试给极路由 2 用 AP230EP,结果无线 mesh 回程失效,只剩有线回程可用。

进入管理界面

  1. 第一次配对需要先把两个路由都通过网线接入同一个局域网。可以把 ac / 中继 ap 路由都接入主路由中;也可以把 ac / 中继 ap 的其中一个插到主路由上,另一个插到中继 ap / ac 上。但必须有一个路由接到主路由上,否则微 ap 中 -> ap 列表中不会显示任何内容。

  2. 接着可以通过三种方法进入管理界面:

    • 在中继 ap / ac 已连接到被中继路由(主路由)的情况下,连接到主路由,通过 arp 或者主路由 web 界面(详情见上文)找到挂在主路由下的 ip 并进入;
    • 手动修改连接设备的 ip,ip 地址修改为 6.6.6.1,子网掩码 255.0.0.0。然后连接到 ac / 中继 ap 发出的节点,节点名为 GECOOSAP-XXXX,浏览器输入 6.6.6.6 进入;
    • 在中继 ap / ac 未连接到被中继路由(主路由)的情况下,按下路由的 reset 键,过一会会出现一个 SOS_XXXX(值得一提的是,同一个设备这里的 XXXX 和第二个方法中 GECOOSAP-XXXX 这一串里的 XXXX 是一样的字符串,刚开始开起了多个设备但不知道设备对应的节点名称是什么,可以用这个方法来确定) 的节点,默认 wifi 密码为 88888888,由于没有连上主路由,所以中继 ap / ac 会打开自己的 dhcp,因此不需要和上面那个方法一样手动修改连接设备的 ip,直接输入 6.6.6.6 进入即可。

    第三点划去的部分是因为新版固件在检测到连接不上网络时就会自动释放 sos 节点,并且原来ac / 中继 ap 发出的节点末尾会增加一个感叹号。

    进入成功后使用默认密码 admin 登录。

配置

参考:200块的无缝组网体验堪比1699mesh套装?斐讯K2T无线路由KVR组网实战_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili

  1. 在 ac 和中继 ap 系统管理 -> 基本设置中设置好格子的设备名称,将自动重启设为 0 天,修改密码。

  2. 进入 ac 的无线管理 -> ssid 设置中,设置好相应的 2.4g / 5g 无线配置。

  3. 进入 ac 的微 ap -> ap 列表,这里应该会显示 ac 和所有中继 ap 的设备名单,在这里我勾选上网络里的唯一一台中继 ap,选择克隆 -> 克隆无线配置。当然此处也可以根据当前的网络环境自己调成各个节点的信道,不过因为我可能要带出门,各个地点的网络环境都不同所以就保持自动好了。

无线 mesh 回程

  1. 此时在 ap 列表中,直接点击 ap 一栏的超链接就能进入相应设备的 web 管理界面了。

  2. 在 ac 端 -> mesh 设置,开启 mesh,角色选择主 mesh,配对标识自己设置,待会在子 mesh 处要填一样的。射频选 5g。

  3. 从 ap 列表中进入 ap 中继端,在上面所述同样的地方开启 mesh,设置基本一致,除了角色需要选择为子 mesh。

  4. 拔掉子 mesh 端的网线,过一会子 mesh 就会通过无线连接上主 mesh 了。在子 mesh 上能看到无线回程变为在线状态:

    主 mesh 这边:


集客 ap 几个中继路由可以选择不同的信道这点是其他中继做不到的。

风传集客 ap 中继能不受有线网口速度影响,我试了一下,是假的,中继后 speedtest 网速最高高不过百兆(几个中继路由都只有百兆口)。

除了需要用两台设备,缺点还有这么几个:

  1. k2 灯颜色不对,全程红灯;

  2. 设备间使用的加密没得选。参考文章中有提到:

    1. 问:相比用过的其他固件,我想设置加密方式为 WPA2,不用WPA,2.4G协议能不能只802n, 802b/g兼容关掉,类似这种选项能否开放出来?
      答:集客AP定们是工程级,在功能满足的情况下更多是要考虑降低安装和维护成本,尽量做到即插即用,加密方式目前只使用的最安全的。