关于我
~一个热爱火影的业余小提琴玩家~
Joynaruto

软路由初体验

原因

我家的网络环境原来是两台硬路由组成:一台华硕ac88u做主路由,另加上华硕ac68u做ap配合无线信号覆盖。其中作为ap的ac68u刷了官方系统,而作为主路由的ac88u则刷入了Merlin系统,顺利出了国,家中设备无需安装App只要连上路由则自动出国,然而在大流量出国(YouTube或者Netflix的4k视频或者Play store的集中更新等)的情况下,路由cpu的负载一下子就飙到99%,而且我VPS的带宽也完全没跑满。在这个情况下,我决定折腾软路由 :-P

开始折腾

虚拟机安装

一开始,我选择在黑裙中通过虚拟机的方式安装,因为cpu是跑满带宽的关键,所以虚拟机硬件方面我给出了4个cpu768m内存的配置,系统方面我选择Koolsharelede(一直想看看他家的酷软中心 :idea: )开始安装:

  • 这里下载系统镜像
  • 打开群晖中虚拟机的映像选项卡,新增并上传刚下载的系统镜像
  • 在套件的虚拟机选项卡中,导入刚上传的镜像,跟着提示完成操作,开始跑马
  • 待代码跑完,安装完成
  • 修改/etc/config/network的默认IP网段为自己的网段
  • 打开浏览器,输入刚设置的IP地址即可进入路由后台

一番设置过后,这个在虚拟机中的软路由已经成功接入我家的网络系统,因为我不太想让折腾影响到我日常使用,所以这里就把他作为网关服务器(旁路由)来使用。不得不说一直期待的酷软中心真的挺强大的,数量比Merlin的插件中心多了很多,安装和卸载也十分方便,好评!最后怀着激动的心态出国跑了个步,速度从原来的60Mbps升到了150Mbps左右,然而还是没跑满我家的带宽,后台显示我cpu占用又飙到到99%(= =。。。) 可想而知,我这虚拟机性能确实比硬路由强,但由于虚拟化带来的性能损失还是很严重的,速度虽然有很大的提升,然而还是没能跑满带宽,于是开始便开始想在物理机上安装软路由 :oops:

物理机安装

在虚拟机测试下来的速度提升给了我继续折腾的动力,于是我想了下家里的闲置设备,最终选择使用那台当时为了在单位远程而和大帝一起组装的小型PC

由于只有一个千兆网口,外加不想影响日常使用,我依然将他作为一台网关服务器使用。这次系统方面我打算使用Openwrt来做一个尝试,原因有二:一是Openwrt开源易扩展;二是koolsharelede系统的软件中心虽然很强大,但看下来我实际用的到的不多,比如像Aira2Transmission以及其他网盘类的服务,我更倾向于自己手动搭建,毕竟我有既有Nas又有VPS。而这台PC只要做好本职的路由工作就行,开始安装:

  • 用U盘制作一个PE镜像,在里面放入系统镜像和写盘工具physdiskwrite
  • 通过U盘启动后进入PE系统,用Diskgenius删除待写入的PC盘下所有分区
  • 管理员运行cmd,输入U盘的盘符进入路径,通过physdiskwrite -u 镜像名称.img命令刷入系统镜像
  • 待代码跑完,安装完成
  • 修改/etc/config/network的默认IP网段为自己的网段
  • 打开浏览器,输入刚设置的IP地址即可进入路由后台

安装完成进入后台,一番常规设置后即可正常使用。第一件事当然还是出国,跑了一下测速网站结果为320Mbps,相较刚才在虚拟机下的150Mbps提升了两倍,意料之外情理之中地跑满了我家的带宽,看下后台cpu的负载,只有25%上下,轻轻松松!YouTube4k秒载的根本不是一个爽字所能表达的;Play store的下载更新简直就是秒下,和在酷市场等国内应用市场更新无差 :idea:

其他设置(重要)

坑1

最后还要修改下防火墙配置,我一开始没配置防火墙导致一个很迷的现象:我设置的是网关服务器(旁路由)模式,PC端等有线网络访问YouTube等其他外网速度很快,但手机平板等移动端访问YouTube速度极不稳定(对,只有移动端访问YouTube有问题,移动端访问Netflix以及所有其他外网都没问题),具体症状为只有在刚连上无线几分钟甚至几十秒表象良好,一旦切视频或者调进度立马卡住,我尝试过等待加载,结果就是转了很久来一句和服务器失联,爬了好多帖子都没结果直到看到了这篇帖子,感谢”jaymytao”提供的思路,具体配置如下:

#若Openwrt为主路由,则在"防火墙-->自定义规则"中添加
iptables -t nat -I POSTROUTING -o pppoe-wan -jMASQUERADE
#若Openwrt为旁路由,则在"防火墙-->自定义规则"中添加
iptables -t nat -I POSTROUTING -j MASQUERADE    //开启网卡混杂模式(允许任意流向的数据包)

配置完成后,所有移动端在访问YouTube的时候终于可以秒开了,看着状态栏中的23m/s,舒坦了 :idea:


坑2(坑1的第二天更新)

刚配置好的网络第二天立马给我看颜色(汗)。第二天上班的时候,突然发现我无法通过DDNS启用远程桌面来连接我的电脑,期初还以为是远程出了问题,但当我连接PPTP回去之后通过局域网IP地址仍然无法连接的时候,我就想到了昨晚配置的防火墙规则,于是乎标注了规则后发现秒连 :cry: 果然是防火墙规则的锅 :cry: 无奈只好先把远程电脑的网关和DNS设成主路由,再去掉注释,勉强度过了一天= =。。回家后各种爬贴,深入了解了下iptable的原理和用法以及这条规则的意思后,发现我现在是默认局域网内所有设备都强制走网关服务器才导致的问题,那岂不是只要指定相应端口走网关服务器而电脑保持原来设规则之前的状态不就好了么,试了下后果然成功了,指定端口号的规则如下:

#若想要指定的wifi设备IP地址为10.10.10.5
iptables -t nat -I POSTROUTING -s 10.10.10.5 -j MASQUERADE   //-s为指定源地址参数

这波配置完后,终于·舒·服·了·

最后

这波折腾中又学到了挺多有趣的玩意儿,特别是看到最后速度的大幅提升还是很爽的,至此我已经感受不到Q的存在了,因为都是内外速度一个样,都是满速23333


最后附上跑步图2333

发表回复

textsms
account_circle
email

Joynaruto

软路由初体验
原因 我家的网络环境原来是两台硬路由组成:一台华硕ac88u做主路由,另加上华硕ac68u做ap配合无线信号覆盖。其中作为ap的ac68u刷了官方系统,而作为主路由的ac88u则刷入了Merlin系统,顺…
扫描二维码继续阅读
2020-04-09