BLOG
Enjoy when you can, and endure when you must.
香蕉派(BPI)的 OpenWrt 之旅

最近一小段时间事情还挺多的,工作、学习,外加折腾我的香蕉派。回想前段时间去的 CES Asia 2016,看了一圈,说实话有点小失望。首先是感觉令人期待的 VR 在现场体验之后发现确实还不怎么成熟,离心理预期有较大差距。另外就是各种所谓的“智能”设备,多是传统设备 + 一块芯片 + WIFI 联网 + APP 管控的模式,说实话并未带来太多的新意。而且基于目前互联网的大环境,这些东西还是让众多的消费者只是停留在远观这一步。

当然,虽说说的有些悲观,但整体说来还是有很多看点和非常有趣的东西,有这样的机会瞧一瞧开开眼,还是很难能可贵的。下面来一张 INTEL 展台的照片,是有那么几分酷炫霸气,充满科技感!

既然这样,作为爱折腾的我来说,感觉还是自己瞎搞搞更靠谱一些。那第一步当然就是想到先让家里掌管互联网出入口的路由器重新武装一下。如今的互联网可处处都是坑,不想办法自己填一填,还真是不太好过。这就说回了开篇提到的香蕉派。话说选择他还真有一番故事。

一直想要折腾下路由器,虽说如今市场上的中高端家用路由器功能已经越来越强大了,但从实质上来讲,我觉得他们解决的很多是易用性的问题,真正在功能性上,确实也称不上强大,并不能真正满足我的需求。而且路由器自身现在也越来越不纯洁了,各种隐私泄露的曝光此起彼伏,真是不忍直视啊。都说互联网没有什么隐私可言,但就脚跟前这一环节,还是值得去重视一下。于是就想到用一个开源系统来定制需求 —— OpenWrt 就此闪亮登场。OpenWrt 目前已经支持市面上众多路由器,不过我觉得就路由器本身的硬件而言,其局限性还是很大,不利于后期拓展,所以就此 PASS 掉。怎么办呢?拿台 PC 当服务器?太大没地方,还有些浪费,也 PASS 掉。那还有一个中规中矩的设备 —— 开源开发板。

开发板这玩意儿目前真是不少,而首当其冲的还是要数树莓派。在研究之后发现一个问题,就是网卡。在最新的树莓派 3B 上板载的网卡也只是百兆的,这对于应对百兆宽带来说确实有点力不从心。还有一个问题是 USB。树莓派本身并不是专门来当路由器玩的,并没有配备多网口,必须通过 USB 来至少扩充一个网卡,但这里也恰恰有一个坑就是树莓派网卡和 USB 是共用总线的,在带宽需求上就很成问题。基于此,树莓派又 PASS 掉了。最终经过一番搜寻后将目光聚焦到了香蕉派身上并最终选择了 M1+,来欣赏下参数和板子。

怎么样!还是挺靠谱的。还有一点更重要的就是目前 BPI M1+ 也得到了 OpenWrt 官方的支持,这非常关键。

接下来还有一段痛苦的历程,就是编译。虽说 OpenWrt 得到了官方的支持,但官方并未提供现成的 Image 供直接刷写。如果要求不高,可以到 Banana Pi 官网下载提供的几个版本,网上也有一些开发者编译出来的成品。还有一个比较严重的问题就是没有对应的 SDK 和 ipk 库,这样会导致后期安装或编译软件成问题。就此我还是决定自己编译一个 OpenWrt,而且是最大化编译以得到一个专属的 ipk 库,这样才用着舒心。于是把最新 Release 版本的源码拉取下来,就开始准备编译了。如果你也有兴趣,可以参考一下这两篇 wiki:

开始我是在自己的 Ubuntu 上编译的,不过因为在编译过程中会下载大量依赖包的源码,而且来自于国外网站,因此慢和无法连接的问题接连不断,让我非常郁闷。就在这时,我头脑里冒出一个想法,到阿里云上买一个按量计费的 ECS 并选择国外的节点,这就可以解决这个问题。而且 VPS 提供商一般入口带宽都比较高,也可以有一个可观的下载速度。事实证明这方法果然奏效,整个编译过程耗费了好几个小时,而花费不过几块钱而已,总体来说还是非常划算的。成果如下:

得到了 img 文件之后,事情就非常顺利了。只需要刷入 SD 卡,插入香蕉派,通电启动,然后就可以开心的玩耍了。就像这样:

其实利用开发板来玩还有一个优势就是具有非常多的拓展口,可以实现一些额外的功能。比如香蕉派具有 SATA 接口,可以挂接硬盘且有一个相对理想的速度,然后利用 aria2 来做下载机,再通过 samba、dlna 等服务进行共享;还可以用 GPIO 口拓展如温度传感器这样的设备来实现有趣的功能,或者加个摄像头做个监控什么的。这才是我选择开发板的终极目的。

还有一点值得一提的是香蕉派有一个路由器开源开发板 R1,芯片和 M1/M1+ 一致,这个可就相当有资格了。不过价格上有些小贵(至少对于 M1+ 来说)。

到目前为止,第一阶段目标完成,折腾仍将继续…

COMMENTS
LEAVE COMMNT