最近单位的老路由器已经感觉不行了,虽然它工作了好久其实还挺稳定的,但是我觉得它不行了。

就找了台“老破旧”电脑来做新的软路由,配置如下:

Screenshot-20200618103614-1598x1068.png

折腾了快俩星期,感觉终于稳定了,并且在这个软路由上实现了“负载均衡”,“科学上网”,“广告过滤”等,不过遇到了很多坑,在此总结一下。

搭建配置软路由

建立一个软路由其实挺简单的,找个电脑,把对应的 OpenWRT 系统装进去就行了。目前有的系统主要还是 Lean 与 LEDE X64 之类的,不过我个人还是推荐用 LEDE X64,虽然小 Bug 很多,但是大功能还是没什么问题的。

http://firmware.koolshare.cn/LEDE_X64_fw867/

安装的方式就是下载镜像,直接写入硬盘。推荐用 Ubuntu Live CD 来写,更快速一点。

写完后启动成功,软路由基本就 OK 了。

当然我这个软路由是准备实现“3Wan”口的,一个台式机的默认网卡肯定是不够的,于是我插了俩网卡,一个 PCIE 16X 的 4 口网卡,一个 PCIE 的单口网卡,还有一个机器自带的网卡,一共是 6 个网口。一般来说 LEDE X64 启动后会识别你的网口,只是默认没有启动而已。

Screenshot-20200618085355-1926x582.png

你可以在“接口”里面手动添加 Wan 口,把防火墙区域设置为 Wan 的组里,就可以了。

当然,这个“自动识别网口”是需要 Linux 系统本身识别的,并不需要特别的驱动,毕竟 Linux 是内核驱动。当然如果你的网卡品牌过于奇特,那就会识别不到了,总体来说还是推荐 Intel 的。


负载均衡

默认的 LEDE X64 是可以实现负载均衡的,首先你需要设置三个 Wan 口的连接方式,我们这里是静态 IP 分配,如果你是多拨的话也要设置好。

还有一点是一定要设置好“网关跃点”,这个相当于给 Wan 口编号了。不设置这个很可能导致负载均衡失效。

Screenshot-20200618105440-934x836.png

接着是在 Koolshare 的软件中心里安装“根据策略负载均衡”,并且装模作样的设置一番。之所以说“装模作样“是因为这个设置屁用都没有,我们需要的是这个插件生成的路由表。

Screenshot-20200618085413-2038x1576.png

然后就可以进入 LEDE X64 自带的 mwan3 负载均衡里进行设置了,这个设置方法很多,不过最后的策略是需要自己选择的,譬如我这个线路,三个 Wan 口,分别对应”联通“,”移动“,”电信“三根线路,于是我就根据前面那个傻逼插件生成的路由表选择,对三根线路进行分流即可。

Screenshot-20200618084946-1296x728.png

至此分流后基本就没什么问题了,但是很多人都会吐槽 mwan3 有 bug,动不动就说 wan 口掉线了,你是一个 wan 口还好,但多 wan 口就会产生莫名其妙的麻烦。

这个问题我也看了,但是我发现原因似乎并不是 mwan3 本身,而是它的”端口在线检测机制“:ping 的太频繁了, 要求太高了。

Screenshot-20200618085006-1066x1602.png

我们把检测端口的 Ping 值要求放宽就行了,譬如每一分钟 Ping 一次,超时 10 次才算掉线,基本上就会很稳了。


科学上网相关

如何在 LEDE X64 上科学上网其实网上教程很多了,不过目前这个科学上网插件 Bug 太多,需要手动修改,我之前已经魔改过里面的脚本才能满足自己的需求。而且脚本里还有 DNS 无法转发的 Bug 等等,这些都需要各位大佬上网自己搜索解决,我就不再废话了。

Screenshot-20200618085403-2240x1450.png

最新的 Koolshare 版本也屏蔽了科学上网的安装包,但是根据查询 github 的修改记录,只需要把脚本里的关键词检测删掉就可以了。

科学上网经常会遇到打开国内网站解析到国外的情况,大多数都是有 CDN 的大网站,譬如京东淘宝百度微博之类的,可以在 DNS 的白名单列表里加入对应的域名,记得要加入

*.baidu.com

而不是

baidu.com

前者才有效,而且你也可以加入:

*.xunyou.mobi

因为加入这个可以避免你王者荣耀掉线。


总之这次折腾软路由还是挺满意的,至少配置到位了,也可以实现三个 Wan 口负载均衡。当然软路由还有一个要求就是记得在 Bios 里设置为”通电保存开机状态“,实现一通电就自动开机的设定,避免突然断电重启后路由还要手动开机的尴尬。