本文涉及的产品、硬件、技术
1.Openwrt:一种可以让普通路由器逆袭的系统,让你买到的从100到1000不等的某些型号路由器瞬间成为拥有各种牛逼哄哄、金光闪闪的几K价位的企业级路由。
2.smb、ftp协议:就是一种协议,不同的系统平台,不同的设备之间进行文件传输、共享的一种东西。
3.ext格式:就是linux系统下的一种文件系统,windows下一般是FAT32和NTFS。
4.能折腾的路由器:就是能刷第三方系统(ddwrt,openwrt,tomato等等)的路由器,现在市面上挺多的,淘宝关键字openwrt或者ddwrt,低端的有国产的华为、tplink,高端的有华硕、思科等,价格从50到1000不等。
5.ssh工具:mac下用 终端、iterm2,windows下的puffy都OK。
写在前面
我家现在有一台式机、三笔记本(一台mac,两台pc),自用android手机一台,mac在我卧室连着显示器用,一台笔记本在客厅电视机旁边,由于工作原因,经常需要在mac和pc之间进行文件传输(从几G的电影文件到大量的几K的小文件),2012 年底,花了136在京东买了一台销量第一的 Tp-link 841n,虽号称 300M「极速速率」,结果到手之后郁闷不已,一个是穿墙衰退太严重,二是传输速度太慢且不稳定(在中间用了另外一个路由器中继的情况下,只有几百K到1M/s不到速度),无法满足使用需求。
加上自己平时喜欢看电影,经常会用旋风或者迅雷离线,有时候只能用客厅的笔记本整夜开机下
载,耗电不说,对笔记本本身也不好。另外,有时候自己看电影是在卧室的mac前,有时候是在客厅,由于路由器传输速率不行,不管是从客厅的pc通过局域网读取卧室的mac还是从mac读取客厅的pc,看720P高清mkv格式的电影时不时出现卡顿现象。
经过自己搜索和实践,这几天终于解决了上述的大部分问题,由此原创此文,说一说自己的解决方案,另外也提供给大家参考。
基本路由器设置:
0.系统成本:
硬件:a.路由器 259 元 b.3.5寸外接硬盘盒+台式机淘汰下来的硬盘(原来就有)
时间:由于自己第一次接触,弄错了一些东西,折腾了差不多一整天( 10h+),相信如果再来,1-2个小时可以搞定。
1.选购路由器
该套系统使用的是基于 openwrt 的解决方案(全部利用可行的现存方案,免得自己另外折腾),我现在用的是目前300价位以下性价比最高的「水星MW4530R」,8M内存版在卓越和易迅都259,淘宝上有非官方改 16m 内存的版本出售(308元),8M的有点小了,推荐16M的(这个内存类似电脑上的硬盘,空间越大,装软件也可以越多,折腾空间越大)。理论上,只要支持openwrt并且内存空间足够的路由器均可以,大家可以根据自己的情况酌情购买。300元以下依旧推荐MW4530r,双频2.4G+5G(5G支持ipad和macbook,可以达到300M速率,否则在2.4G下貌似只能到144M速率),带USB(必需!外接移动硬盘或者U盘),3天线(感觉没什么差别),另外一个很重要的是,
由于4530r性价比高,折腾这款路由器的人也多,所以比较容易找到此款路由的解决方案。
至于其他的路由设备,可以参考发烧毒物「 Chiphell 论坛」的资料,可以去看看专注于无线与路由器的「恩山论坛」和「 openwrt中文论坛 」比较热门的设备有思科的E3000,华硕的N16等,网件的也不错。
2.安装Openwrt系统
MW4530安装 openwrt 系统比较简单,下载好 openwrt 的固件文件,直接登录原厂固件的管理界面 192.168.1.1 升级就好。MW4530目前可用的openwrt版本比较多,大家可以根据自己的需求挑选。刷机方法请参考《水星Mercury MW4530R刷Openwrt及刷TP4310/4300/原厂固件的方法》比较热门的有 Hadx 编译的系列固件《OpenWrt For 4530R ARIA2 Transmission 脱机 Samba 挂载 U-BOOT 可写 》,我安装的是2013.1.26号更新的35298固件。
3.挂载USB硬盘
我就是在挂载USB硬盘这里遇到了点问题,才搞得十分蛋疼,由于 openwrt 属于linux系统,虽说也可以读取windows常见的 fat32 或者 ntfs 格式的硬盘,可是读取效率较低,建议先格式化成ext3或者ext4格式,当然,用简单的方法,在widnows下可以直接用 paragon partition manager 或者 Acronis Disk Director Suite 进行格式化,我使用的是Acronis(我分享到了百度网盘,点击可下载)。格式化完成后,将硬盘盒(或者U盘)通过USB连接路由器,稍等10秒左右,在 Openwrt 管理「系统>挂载点」界面,不出意外,可以看到USB已经成功挂载。
挂载点可以理解成USB外接硬盘映射到openwrt文件系统中的哪个位置,比如说,以我为例,我将外接硬盘映射到/usb/sda1 这里,点击「保存&应用」按钮后重启,这时候,如果我用 sftp 登录192.168.1.1,可以看到在 openwrt 系统根目录下,已经有了usb/sda1 这层文件了,对应的就是外接硬盘。
4.开启Samba网络共享
在USB已经挂载成功的情况下,接着登录「服务>网络共享」设置界面,此部分,请参考《samba设置密码,给如我一样的小白一个启示》和《简单介绍一下samba 添加用户密码的方法》,记得要开启root用户访问权限(在这里有一个建议,路由器设置密码后,其后的所有帐号都设置成root 密码admin,免得自己忘记,这一部分可能会遇到问题,根据自己的情况,搜索相关设置。
5.测试PC&Mac访问
此时,刷新一下你的电脑(PC上查看网上邻居),不出意外,可以看到多出来一个网络设备 OpenWrt(对应的就是网络共享里设置的主机名),如果没有显示,在mac下可以打开Finder,前往服务器(快捷键 command+k),输入地址 smb://192.168.1.1 ,用帐号root ,密码admin进行登录。
至此,不管你用的是 mac 还是 pc,iphone 还是 android,只要支持 smb 或者 sftp(也可以在 openwrt 中另外安装 Ftp 服务器),均可以通过访问「smb://192.168.1.1」,root帐号登录来访问连接在路由器上的外接硬盘了,可以直接进行上传、下载、删除操作。
Aria2 迅雷离线下载
这款 openwrt 固件自带 Aria2 应用,aria2 是Linux 下一个不错的高速下载工具,支持BT,磁力下载。这部分可以参考Chiphell的这篇《【DSM高阶篇】-安装aria2实现迅雷离线(更新完美版)》,虽说不是同一个系统,可是核心步骤和操作是相同的。
a.登录「服务>Aria2下载工具」,开启Aria2,设置下载目录(前面你设置的外接硬盘目录,我的就是/usb/sda1/Download
b.登录Aria2界面
登录「192.168.1.1/aria2 」,就是aira2的界面了,在这里我更加推荐使用Aria2而不是Transmission(BT),热门资源通过迅雷离线更加之快。下图就是Aria2的界面,十分简洁
c.设置迅雷离线直接推送
在这里我们使用的是Chrome浏览器(猎豹浏览器,360极速浏览器等相同内核浏览器的也支持),安装「迅雷离线助手」插件(可以方便的把迅雷离线的下载地址导出到aria2/aria2-rpc/wget/IDM/Orbit,支持YAAW。)接着,登录迅雷离线的网页,点击右上角设置。如图设置,在Aria.Json.prc.path输入「 http://192.168.1.1:6800/jsonrpc 」
d.测试迅雷离线直接推送到路由器下载
这时,选择你离线空间里的文件,点击按钮「取回本地」或者上面的「批量导出」,选择YAAW(不是Aria2,我也纳闷为什么),这时会提示「添加中……到YAAW界面查看是否添加成功」,此时,登录aira2的界面,可以发现该任务正在下载了,达到满速(我4M宽带,稳定在500K+)。
至此,已经完成了「路由器NAS+迅雷离线+共享」的三大核心功能了,现在你就可以,在网页端迅雷离线直接按两下按钮,就自动推送到路由器的Aria2进行下载,下载完成后,所有可以访问该路由器的设备,均可以通过smb或者sftp直接读取路由器外接硬盘中的所有文件。
以我这两天实际体验,十分方便,在卧室mac隔两堵墙访问客厅路由器,传输速度稳定在2M/s(意味着720P文件没有卡顿),手机通过ES文件浏览器,也可以直接通过访问smb://192.168.1.1读取路由器中的视频并且通过android的媒体播放器播放。
Android文件同步到路由器
如果以上功能都搞定了,这个android文件同步到路由器硬盘,就是一个补充了。原理很简单,找一个支持smb或者sftp的app,指定手机某个文件夹(一般都是相册所在文件夹)自动同步到smb
路径。
有人可能说,既然有了icloud,豌豆荚、小米也都有相应的云相册, 弄这个还有什么意义?在我看来,主要还是速度和安全,相比上传同步到icloud或者小米等云相册(家庭ADSL上传速率太慢了),本地wifi直接备份到路由器硬盘,更加方便。同时,一旦要在电脑上处理手机文件,就不用再用什么USB数据线拷贝或者其他传输工具了。
在这里,推荐android用户使用FtpSyncX这个软件。设置方法很简单,
1.add server(添加服务器),选择SMB格式(sftp或者ftp也可),设置好地址(192.168.1.1),登录帐号(root)密码(admin).
2.添加好服务器,设置好要同步的两端文件夹,Local Diectory对应的是手机上的文件夹(一般我就要同步照片文件夹),Remote directory对应的就是路由器外接硬盘的文件夹(可以直接新建一个:我新建了一个小米相册),接下来的remote<=>local几个选项,分别对应的是手机同步到路由器(双向),手机同步到路由器(单向),路由器同步到手机(单向),可以勾选 Synchroniz only new file(只同步新增的文件),另外勾选上WIFI ONLY吧,要不小心爆流量。.
因篇幅问题不能全部显示,请点此查看更多更全内容