还是和上一篇文章一样,直接进入主题好了。
明确需求
首先你要想好,你准备拿他来干什么。
其实软路由的种类不多,但也不算少,目前比较公认(但实际上我不这么认为)的玩法是ROS用来拨号,做规则,iKuai用来多拨,叠加,负载均衡,Openwrt用来科学。但实际上你单独地用Openwrt来搞,抛开IPV6来看,其实也能搞起来,而且反而维护更加简单。我最开始用软路由是用的win虚拟海蜘蛛,用来单线多拨,那时候家里的带宽是20M,因为ROS和iKuai我基本上没用过,所以下面的所有内容除非专门指出,否则全部都指的是Openwrt。
从需求上来说,软路由在国内那基本上就是科学,如果你不要科学的话,使用软路由的动力就会大大的降低,但实际上软路由能做的事情还有很多,比如更加丰富和简便的管理、监控功能,依赖插件可以获得去广告、DNS加速、应用控流、更多的ddns服务、更多的内网穿透服务等等功能,除此以外因为Openwrt基本上就是个完整的Linux,你还可以在上面干很多的事情,比如跑Docker,跑下载,搭建个媒体服务器啥的。所以你对家里的网络设置要求比较高的话,软路由是值得花一点时间去关注的。
有很多朋友一看到软路由这三个字就觉得很复杂,很难搞,这句话倒退回十几年应该是成立的,因为那个时候相关的资料确实比较少,但是现在各种保姆及的教程很多,虽然质量良莠不齐,但是这一块的门槛确实可以说是大大的降低了。
所以如果你看到这里还有一点兴趣的话,不妨继续看下去,我打算分享一下我在软路由这一方面的一些不太成熟的看法,如果你现在正在用或者正打算用软路由的话,接下来的内容应该能对你有所帮助。
1.性能
这个需要辩证地去看。
关于性能,笔者一直都认为够用就好
其实关于这一块的争论挺多的,在大多数情况下,X86的软路由性能肯定大大优于arm,但实际上你真的不一定用得上,因为你得考虑到你的基础带宽。如果你家里的带宽就100M,像是N1,R2S这些arm设备就可以直接拿来用,甚至性能已经溢出了很多很多很多了。现在网上相关的资料也不是特别难查,N1跑科学上500M是没啥大问题的,R2S就更没问题了,这类设备直接拿来给500M以下的带宽用不存在性能不够的问题,而且还能带来很多好处,那就是刷机相对来说比X86的要方便或者说简单一些,N1稍微折腾点,原生固件需要降一下级,然后就随便找个U盘直接把img写进去插好就能用了,R2S则是直接写TF卡,相对来说更加的友好一些。另外,功耗也十分的低,虽然说现在X86的功耗也不高,但是和满载就只有几瓦的arm设备比起来,还是有不少差距的。
甚至你刚开始玩软路由的话,都不需要额外的添加设备,你可以在电脑上虚拟一个Openwrt出来跑,你也可以直接写到U盘里直接引导起来跑,先找找感觉,觉得不错了,再去考虑要不他要专门搞个设备来跑软路由的事情。
性能这个事情想要展开来讲明白是很难的,因为软路由本身能*事情太多了,没法给出几个统一的最优解,现在很多人还在争论软路由需要几个网口才够用才还用,别的地方就更多了。
2.需要简单了解的其他知识
其实就是简单的网络(局域网)知识。这一块也没法展开来讲,但是你也不需要了解到网络的层数、具体的协议这些,我简单提炼一些出来,针对绝大多数的家庭用户,知道下面这些概念就差不多可以开搞了,为了便于理解,描述不会太准确(防杠):
NAT简单来说就是通过转换,把局域网的数据送到互联网,再把互联网反馈回来的数据转换以后送到局域网内所对应的设备。我们现在使用的(硬)路由器有个重要的功能,就是用来做NAT转发的,它有专门的芯片来负责这个事情,所以从效率上来说,硬路由在NAT上面比软路由强很多(指数级的),而软路由的NAT,则需要用CPU去算,很依赖于CPU的算力。简单来看,你就把它理解成播放视频硬解和软解的区别好了。
PPPoE也就是拨号这个操作(协议)是你能连入互联网的最关键点,也是绝大多数家庭用户上网所需要的操作,所以你要记住你PPPoE所需要的账号和密码。路由器通过PPPoE获得公网IP(便于理解10开头的也算是公网),再通过NAT使得内网的数据出去,公网的数据回来。