条条大路通罗马

先前的几个内网穿透的方案都不太靠谱,配置困难,实际还要受VPS速率的制约。

放弃在自家部署Seafile没过一会就看到BTSync这个东东,现已更名为Resilio。

原理大抵上就是通过p2p的方式使2台客户机进行配对和文件交换,看了一圈官网的业界惯例 Features 吹逼,老实说我也没感觉出这样的方案优秀在哪里,不过无需公网 ip 对我而言倒是冲击性的诱惑。

配置方式比较友好,没有十分详细的文档(不需要),大概是个能看懂英文的普通用户都能照着说明配置就完毕。并且很贴心地特地仅为 linux 提供了 webui 而不是像其他平台那样使用 gui ,产品经理一看就知道是会玩的。。设计理念是无需服务器,所有文件都在客户机之间流通( P2P 特色),但其实考虑到云的应用场景,一台 7*24 小时在线的客户机还是必要的(那还叫客户机吗)。

文件的同步方式跟其他云服务大同小异,由于不再有固定的服务机,所以客户机与伪客户机(服务机)之间的连接通过密码 /二维码 /链接进行。这倒也不是很麻烦。

云同步也没啥好多说的,老生常谈的问题,私有云因为需要纠结的事情比较少所以更没啥好说的(受限网络环境也就那样了)

速度方面的话,等下去公司再装个同步客户端跑一圈同步就分享了。不过我家是移动,公司是联通,对实际速度十分担忧。

整体来说比较满意,比较遗憾的是由于不是专业的协同云,所以没有喜闻乐见的历史记录归档功能。

费用方面,免费版基本完全满足我的需求,试用了下官方提供的 30 天 pro 版试用,感觉主要的新机能就是选择性同步。选择性同步乍眼看起来大概比较适合老司机开车,办公场景也许也用,但似乎又完全没必要为了它多掏银子(尽管 pro 也并不贵)。


实测在公司同步家中的文件夹速度在100kb/s~2mb/s之间来回浮动,并且有较长时间能维持在2mb/s。考虑到文件的松散性,实际连续读取速率应该是能吃满我家的20M上传的。移动跟联通之间的互联倒是比我想象中的好不少。

原定分别在家中的PC、NAS、手机、公司的PC四个设备上配置了Resilio——家里的PC负责将一些不支持存档云同步的游戏的存档和一些必须要保存在本地硬盘的重要数据同步到NAS中;NAS则冲当核心节点接受和发放来自所有关联设备的数据,由于NAS本身也是客户机,所以输出的是目录就是linux原始目录,因此完全可以将Transmission啊Aria2之类的下载目录一起共享出去以便不时之需,这点传统云方案是做不到的;手机端负责同步相册和异地设备配对;最后公司的PC接受来自NAS分享的工作文档。

但是手机端的相册同步被人告知似乎无法实现后台同步,原因是iOS的后台同步只仅支持http的方式,然后想起家里拿来做备份盘和无线AP的小米1支持自动同步iOS相册。于是相册同步的问题算是曲线救国完成了。

而公司的PC端尽管临时表现比较出色,在我完成对公司Seafile服务动态解析后也决定弃用了。毕竟文档协作还是Seafile这样的方案更出色些,BTSync在数据可靠性上总让人觉得放不下心来。

在撤去2个设备后BTSync瞬间沦为一个内网自动备份的工具,但是这又有什么关系,同步工具那么多,并没有哪个方案与BTSync相比有压倒性优势不是?更何况BTSync实际上仍能解决关键时刻的那些“我愿以为不需要在外面访问”的数据需求,所以私有云方案大概也就这样告一段落了。

顺带一提的是,原先还很担心处理不好nginx反代seafile的fastcgi端口的事情,后来才想起80端口本来就给狗逼ISP封锁了,横竖都是要加端口号的,还反代个毛啦,直接做DDNS就完事了。

至此,不出意外的话有关云的折腾应该都结束了。

私有云计划破产

在NAS界总觉得有一股奇怪的风气,那就是不部署私有云出门都不好意思跟别人说自己是NAS用户。

连我自己也总是难以按捺住“不建云就无法充分利用它”的想法,尽管它其实早已在局域网里发挥着重要的位置。

我没有在产生这个想法之初就动手是因为内网IP的问题,移动公网IP据说可以掏钱买,反正免费的途径(比如投诉)基本没什么用。但买IP大抵是不会买的,一方面买IP会让移动网的性价比丧失殆尽;另一方面,我再昏头也知道即便私有云通车后体验也仅仅是“能用”,我为何不把这钱拿去购买带宽大线路通常的付费云服务?

重要的是免费云其实并不难用,至少在大部分消费级的场景中它都不比搭在自宅那惨兮兮的网络下的私有云差。所以本着生命在于折腾的原则姑且还是尝试了下内网穿透的办法。

目前成熟的开源穿透的方案据我所知有ngrok和frp,前者听闻存在内存bug,吓得我当场想起了我那乞丐级主机只有512M。后者似乎知名度比较差,但是中文文档非常齐全,配置过程也很简单。所以,走起。

云方案分别尝试了大名鼎鼎的owncloud和国产精锐seafile。最后因为历史记录这个功能选择了seafile,历史记录有啥用就不需要我说了,反正是用过就再也回不去的那种。

穿透的部署还是比较方便,照着官方给的文档布拉布拉抄抄改改就通了,seafile的部署也一点都不麻烦,依然照着文档布拉布拉布拉。

然后问题出现了,配置完后能正常访问seafile的webgui,却无法下载和同步文件。回去看了下文档的其他配置项发现seafile是由前后端2个不同的端口协同工作的。于是这些就尴尬了,frp只能反代一对http(s)端口。

但是办法总是有的,比如通过frp的路由方式将每个端口映射成同端口下的不同的地址,但是最终失败了。

要说为什么失败的话,大概是因为触及了我知识的盲区吧。

由于frp本身是正常运作的,所以仍有其他办法可以一试,比如现在内网用nginx将所有端口通过fastcgi代理到Seahub上,最后仅仅穿透Seahub的端口。看起来比上面的办法要优雅的多,但是最终失败了。

要说为什么失败的话,大概是因为触及了我知识的盲区吧。

内网穿透比较麻烦的时候要同时操作内外网2台服务器,同时操作2台机的问题在于容易梦游,比如我今天打开博客的时候发现域名被指向了apache的示例页面,我当场就是一个大写懵逼,我什么时候在这台机装过apache了。

所以要说为什么失败的话,除了触及知识盲区外还有个原因可能是因为我在梦游吧。

但我尽量不愿这么想,毕竟这可是新希望(New Hope)。本身一件停滞不前的事情出现转机是件令人兴奋的事情,可我也不傻啊,穿透成功了它还是个带宽只有10M(上传瓶颈)的半残云啊,我干嘛那么兴奋地去做一件然并卵的事情。

所以内网穿透做云的事还是搁一搁吧,也许有朝一日拿到公网ip还会本着聊胜于无的态度去搭一下。

当然整件事情也并不是徒劳的,因为Seafile除了仍然十分好用外,还提供了Seadrive这个程序用于远程挂载。挂载后可以像是Samba那样直接对网盘进行操作。当然这种挂载方式本质还是同步,区别是Seadrive仅将读取的文件缓存在本地以应对带宽压力和本地存储压力。

而早前我为了给公司每台电脑省一块HDD和若干U盘的钱(我真是好人)而搭的NAS使用的CIFS一直都面临着权限混乱和数据安全性(指恶意删除和误删)的问题。Seadrive刚好成为绝佳的局域网协同办公方案,并且还有Seafile的权限管理和历史功能的加成,再也不担心同事恶意删我文件了(尽管并没发生过)。

并且公司本身有公网ip,但由于带宽和刚需性不强暂时还没有做DDNS。而家里文件经过几番对比和需求衡量(Webdav+History)也改用坚果云这种第三方服务进行解决了。

这个故事告诉我们,找到切合需求的产品着实是一件令人兴奋的事,但多数时候我们还是无法正确认清自己的需求,有时候即便认清也无法让“想要”这个心情迎合需求。所以解决办法就是去折腾吧,折腾累了自然就安分了。

在Ubuntu Desktop 16.04上使用Bose QuietComfort 35

QC35的蓝牙配对很奇怪,经常会莫名其妙连接不上设备。(可能是买到了假QC35)

实际上一旦配对成功后表现就比较稳定,蓝牙耳机除了能帮助你在出门时摆脱耳机线的纠缠外,也是深夜追剧看电影避免扰民的一个好帮手。

而实际使用发现支持蓝牙的安卓设备(盒子、电视)均能较好的配对和使用,但客厅Htpc的Ubuntu却怎么也无法识别这个耳机(可以成功配对,但音频设备菜单无法显示的耳机的项目)

四处Google了一下,发现有同样或类似问题者较多,遂简单搬运一下。

打开ubuntu的Terminal

cd /etc/bluetooth/

手动新建一个配置文件

sudo vim audio.conf

加入如下配置

[General]
Disable=Socket
Disable=Headset
Enable=Media,Source,Sink,Gateway
AutoConnect=true
load-module module-switch-on-connect

接着同目录下的main.conf

sudo vim main.conf

分别找到并修改以下参数

# Restricts all controllers to the specified transport. Default value
# is "dual", i.e. both BR/EDR and LE enabled (when supported by the HW).
# Possible values: "dual", "bredr", "le"
ControllerMode = bredr

注意去掉前面的注释符#
还有这个

# AutoEnable defines option to enable all controllers when they are found. 
# This includes adapters present on start as well as adapters that are plugged 
# in later on. Defaults to 'false'. 
AutoEnable=true

保存并退出,接着重启。

重启后先别忙着配对,将耳机的开关键向右长拨10秒钟(即切换设备的那个方向)直至出现语音提示蓝牙设备已清空。

重新将手机与耳机进行连击(在app下进行操作可能更保守一些,此步骤可能非必需)

接着按照app的流程与ubuntu进行配对,然后就能看到可爱的耳机选项了。

2017-03-01 13-12-00屏幕截图

EdgeRouterX 救砖记

作为网件牌电磁炉的脑残粉,与这只堪称小钢炮的路由器邂逅大抵是多亏了我家那只能塞下几根牙签的小弱电箱(惨痛的教训)

要说2016年最让我觉得魂被勾了去的两件电子设备的话,一个是HP的MSGEN8,另一个就是这台ER-X了。

u=162775860,3211149166&fm=23&gp=0

就是这个家伙了。

倾心GEN8的原因有很多,例如它有无可挑剔的外形,惊为天人的拆卸设计,以及看到就硬了的应有尽有的主板接口。

而对ER-X的喜爱大部分来自于它的小巧,拥有5个千兆端口,2个poe端口任凭捣鼓和折腾,基于debian使得它在软件层面拥有无限可能性,图形管理系统EdgeOS的UI设计也是非常合我口味,再放一张图吧。

snipaste_20170217_212652

然而就是这么一枚值得我如此五毛的路由器它刚摆脱砖头的命运。

为什么呢?

因为绳命在于折腾啊。

作为一名墙内焦虑症患者,路由器到手要做的第一件事必然是部署科学上网,然而因为某些原因(移动的锅,日后再提这个事)无法成功,最后迁怒于无辜的EdgeOS将系统换成了熟悉的OPENWRT(此过程不可逆),便这样用了一个月。

后来也因为openwrt出现了同样的问题才知道一开始的失败并不是系统的锅。于是越想越后悔,又不愿意就为了一个系统再买一只一模一样的摆家里,最后破罐子破摔使用了莫名其妙的暴力刷机法终于成了一只只能亮起5盏灯的电砖头。

前2天恰巧看到官方论坛有热心人士给我指了条路,便马上淘宝买TTL线尝试救转。过程基本按照给的教程(也是篇救砖记!)依样画葫芦,所以下文只针对遇到的一些奇怪问题做详细描述。 Continue reading “EdgeRouterX 救砖记”

移动宽带二周体验

以前家里只覆盖了电信,所以一直以来我都是电信的用户。

从最初的1M小水管到后来100M,10年左右的样子带宽提升了100倍,虽然每个月缴纳的费用并没有少,但回想起140kb/s彻夜下载魔兽世界的日子,倒也有那么一点欣慰。

新家很诡异地只接入了电信和移动(也许有联通但是并没有在电梯里看到他家的牛皮藓),也不知道是因为以前太有钱还是现在太苦逼,电信200+一个月的费用已经膈应我很久了,于是很轻易就向移动低了头。

于是跑到移动营业厅办理,办完被告知要送我一年的网络电视服务需要交100快押金,我自然是强烈的反对。僵持了五分钟,对方一脸为难地建议我把这“垃圾”放家里保存一年再拿过去退订,我也因为“现在不要当心将来翻脸要你赔”这样的威胁欣然接受了提议。

接着是带着光猫去电信营业厅办理销号,受理人员先是吐槽了下我跟身份证长的不像,我一脸????,接着她告诉我还有个电视机顶盒没有还,我????。想起移动那边才交完电视盒子的押金,对于这个从来没见到的孩子,我当场就说了:没了。随后就是被告知要赔200块,我问押金呢,她说没有这种东西。

赔钱肯定是不可能的,我就说你先帮把宽带停了,我回去再找找。营业员冷笑道:你这是融合套餐只能申请停机保号,一个月60。我当时就装了个逼说回去问下公司律师,临走前营业员还不忘好心地提醒我话费是每天都在扣的,我真是谢谢你们这些好心人了。

后来也确实给律师发了微信问了一问,律师建议先打10000号询问一下,结果在收拾东西的时候最终还是找到了这个全新盒装未拆封价值两百块的小玩意。

认真回想一下的话,当时的我心里想着还有千千万万的无知群众的钱包在被电信绑架勒索,简直恨不得买一箱机顶盒跑电信大楼门口烧了。而在我找到机顶盒的那一瞬间,我的怒火马上就灭了。是的,我比起知情和买卖自由之类的权益,我还是更关心那两百块,我感到很惭愧。

退完业务后,我对电信的好感度从0分降到了负无穷,但是天下乌鸦一般黑,移动黑到什么程度还得用过才知道。

先是普通用户最关心的带宽部分 Continue reading “移动宽带二周体验”