家庭网络、多媒体设备DIY

一、音乐服务器——树莓派做数字转盘DIY

树莓派身板虽小,任务不能太轻巧,看网上有用来实现音乐网络播放器功能,USB口控制解码器。
树莓派安装volumio2和LCD小屏,做无损音乐数字转盘
有时间学习一下,争取早日实现用手机控制播放高品质音乐,不要浪费了我的好音箱。

别折腾什么路由器了,还是树莓派做网播简单易行
[pc-fi软件] 树莓派MoodeAudio系统教程(一)MoodeAudio系统安装

二、视频服务器——视频娱乐机顶盒选择与DIY

虽说电视都是android智能操作系统的了,但是还是离不开各种android盒子:IPTV、小米盒子。小米盒子的主要缺点是广告太多,视频清晰度差。
解决广告骚扰,有一种方法是在路由器端屏蔽,例如:屏蔽小米电视的开关机广告。我在小宝版梅林固件中,将防火墙里增加了小米广告网址屏蔽,然而没有任何效果。看来还是需要通过自己监控并添加广告网址解决。
多媒体盒子还可以自己DIY原生android系统的盒子,需要在网上找一些教程。我觉得这可以做成一门生意。

用树莓派代替小米盒子:也给自己一个买树莓派3B的理由哈。

三、云笔记——树莓派用leanote实现私有云:笔记、文件

搭建一个自己的云笔记,很酷的想法!
上网查看,有一款开源的国产软件leanote,而且支持思维导图,虽然目前不支持android,但支持微信。有时间在我的渣树莓一代上搭一个。

$sudo apt-get install mongodb #安装mongodb
$sudo /etc/init.d/mongodb start #设置mongodb服务随系统启动
安装mongodb时的提示......
The following NEW packages will be installed: #新安装的软件包
libboost-atomic1.55.0 libboost-dev libboost-filesystem1.55.0
libboost-program-options1.55.0 libboost-system1.55.0 libboost-thread1.55.0
libboost1.55-dev libpcap0.8 libpcrecpp0 libsnappy1 libv8-3.14.5 mongodb
mongodb-clients mongodb-dev mongodb-server
0 upgraded, 15 newly installed, 0 to remove and 69 not upgraded.
Need to get 21.9 MB of archives.
After this operation, 212 MB of additional disk space will be used.
......
Adding user mongodb to group mongodb #添加了mongodb用户和组
Done
《万万没有想到》作者使用[Tiddlywiki](https://zh.wikipedia.org/wiki/Tiddlywiki)来做自己的科研笔记 参考网页: [在树莓派上安装leanote](http://www.cnblogs.com/noright/p/install-leanote-on-raspberry-pi.html) [leanote binary installation on Mac and Linux (En)](https://github.com/leanote/leanote/wiki/leanote-binary-installation-on-Mac-and-Linux-(En)) ### 四、云存储服务器 #### 1、用QNAP NAS做云存储:没有nextcloud应用 #### 2、nextcloud,据说比owncloud好? 可以在VPS上实现,也可以在自己家里的服务器实现,用docker,就可以在一台服务器上跑多个应用了。先参考如下教程安装试试: [Nextcloud on Raspberry Pi 3 Setup](https://gist.github.com/morschesholz/b88fb9608aff7bd43027b265c16d461b) | [How to Install NextCloud on CentOS 7](https://www.vultr.com/docs/how-to-install-nextcloud-on-centos-7) | [How to Install Nextcloud with Nginx and PHP7-FPM on CentOS 7](https://www.howtoforge.com/tutorial/how-to-install-nextcloud-with-nginx-and-php-fpm-on-centos-7/) #### 3、在树莓派用owncloud实现 树莓派系统是安装在tf卡上的,这是一种不可靠的,易损坏的介质。而且tf卡容量有限,所以,使用网络存储,比如内网的NAS或移动硬盘,就是更安全、更易于扩充的选择。 目前我有两种选择,一种是在刷了梅林固件的路由器上挂移动硬盘,另一种是在树莓派上实现云存储。
sudo apt-get install php5-gd php5-curl
cd /var/www/html
sudo wget https://download.owncloud.org/community/owncloud-9.1.4.tar.bz2
sudo tar -jxvf owncloud-9.1.4.tar.bz2
cd owncloud
sudo mkdir data
sudo chown -R www-data:www-data data
sudo chown -R www-data:www-data config #为啥config、apps目录显示带底色?
sudo chown -R www-data:www-data apps
在chrome浏览器中输入地址`https://www.greydesign.tk/owncloud`进入配置界面,输入root:j2 会提示`SQLite将被作为数据库使用`,出现错误界面:
504 Gateway Time-out
nginx/1.6.2
刷新,网页自动变变成了`https://www.greydesign.tk/owncloud/index.php/login`,并提示错误:
404 Not Found
nginx/1.6.2

4、梅林固件路由器挂U盘实现ftp服务

梅林下iPhone自动备份照片、视频

5、梅林固件安装btsync

安装&resilio(btsync)太消耗内存

参考网页

在树莓派上建立owncloud网盘
树莓派搭建ownCloud
树莓派Raspberry Pi安装ownCloud搭建私有云服务器 树莓派安装nextcloud个人私有云服务器
使用Docker+Seafile搭建私有云存储
部署Seafile搭建自己的网盘

五、路由器、NAS服务器——选择与DIY

路由器是最重要的家电,不能受制于厂商。

当前网络已经融入到生活的血脉中,家庭上网的路由器就是一件可以提升生活品质的宝贝了。我在用的是Netgear R7000路由器,京东优惠699买的。
路由器品牌、价格众多,市场销量最大的应该是百元设备,那些千元级的路由器凭啥值那个价钱呢?通过Netgear R7000和小米路由器Pro(以下简称Pro)的比较,了解一下吧。
首先是硬件配置比较:

目前WiFi是802.11.ac,分为两种标准:SU-MIMO和MU-MIMO。R7000支持SU-MIMO,有三根天线(著名的华硕AC68U也是三根天线),Pro支持MU-MIMO,有四根天线。这说明R7000不如Pro吗?
QoS支持,R7000和Pro都支持,似乎R7000官方固件最新版才支持智能QoS,梅林版本不支持,也就是不能针对设备设置上传、下载带宽?问题:如何配置优化?
其次是软件配置比较:
购买路由器,很重要的一点是能够刷梅林的固件,好处是可以摆脱官方路由的种种限制,自定义shadowsock服务等。Netgear R7000与华硕AC68U虽然硬件配置过时了一些,但由于有多种固件可以配置,一直属于强烈推荐的设备。
我一直信奉的规则就是:没有好的软件支持,再好的硬件也是行尸走肉,早扔早清爽。目前我不太了解小米路由器的情况,如果不能刷梅林固件,我是不会考虑的。还有,听说小米路由器禁止SSH?那就是垃圾了!
关于梅林固件,目前我用的是小宝版本,但是一直担心有后门,梅林固件只有小宝的好用吗?如何刷官方的梅林,是不是很多设置需要自己配置啊?
当然,软件自由对最高的还是自己DIY路由器,软路由是不是终极解决方案,兼做多媒体服务器啥的是不是很好啊?

1、梅林固件

下一步工作:

1、小宝梅林固件开启ss-server,为何无法访问?

2、梅林固件的Qos功能,可以查看目前的上网情况,需要进一步了解,比如白天设置了带宽限制,能不能在晚上取消限制呢?

3、哪个是梅林官网?支持中文吗?
梅林固件是被华硕官方认可的,梅林HGG以及梅林小宝固件没有被官方认可。

大部分的梅林用户根本不知道 asus-merlin,只知道 koolshare 的版本。明明是 GPL,koolshare 却不遵守。况且路由器作为网关,应该非常注重安全性,koolshare 的怎么会有这么多人用,而且 koolshare 也不怕 RMerlin 告它们?

华硕官固,原版梅林,梅林HGG,及梅林小宝 之间关系 | Asuswrt-merlin基本操作

路由器刷小宝梅林固件,打造私人网络世界

京东促销Netgear R7000路由器,看评论能刷梅林,就下手买了。后来才知道,在树莓派上也可以安装shadowsocks client,以后有时间再试试。
梅林固件占用的端口有:
8080:远程管理;
8081:Download master
8081:Cloud Disk
我怎么知道这几个端口的?我想把8080 Web interface改成8081、8082时,梅林提醒我的:)
为了网络安全,通过远程访问路由器,还是开启https吧,http采用明码传输,想想都恐怖!
具体设置菜单在系统管理中查找,web service改为HTTPS即可,缺省为8443端口。
目前刷的是小宝梅林固件,根据大陆软件一切从疑的原则,小宝固件难免有后门,以后刷原版梅林固件吧。
需要补充新买的路由器刷小宝固件的具体操作步骤!
小宝梅林固件升版,有时要求:清除路由器配置、格式化jffs分区,可以参考如下教程:
[简明网件R7000刷梅林固件教程](http://k162.space/r7000/)
【系统管理 --> 恢复/导出/上传设置页面】点击恢复按钮;
【系统管理 --> 固件升级】选择梅林固件,点上传,就会开始升级了;
【系统管理 --> 系统设置】,勾选两项JFFS2为“是”
如果找不到路由器ip,可以通过“http://router.asus.com”访问。

2、在路由器上添加usb存储设备

路由器是Netgear R7000,先用U盘试一下,熟悉了以后,再挂USB移动硬盘。
把一个16G Sandisk U盘插在路由器USB 3.0接口上,在路由器管理界面就能查看到USB 3.0设备,还不知道如何测试存取速度是否达到3.0的标准,看网上的文章,似乎有个设置,可以有效提高存取速度。为保证长期使用的兼容性,也需要将U盘格式化为与路由器系统一致的linux分区,而不是采用原来的Windows FAT32分区。

3、OpenVPN,寻找回家的路(失败!)

为啥用OpenVPN?为了充分利用家里的路由器设置,愉快上网。进一步,也可以在家里浏览公司的内网,实现家与办公室的互联互通。

具体配置很简单,在梅林固件中有VPN---OpenVPN Server选项,打开之后,简单配置,就可以构建安全回家的路!
高级配置中,除少数项目,基本采用默认参数:

接口类型:TUN
通信协议:TCP
Server Port:1194
Username/Password Authentication:是
仅用户名 / 密码验证:是
附加 HMAC 验证:停用
Auth digest:default
VPN 子网 / 子网掩码:10.8.0.0 255.255.255.0
轮询间隔:0
允许客户端访问 LAN:是
允许客户端访问互联网:是
响应 DNS:是
广告 DNS 至客户端:否
加密密码:Defautl
压缩:智慧调整
TLS 重协调时间:-1
Global Log verbosity:3
管理客户端专项:否

用户名称与密码中添加用户名与密码,因为管理客户端专项没有打开,管理员admin不需要设置密码。应用本页设置后,导出 OpenVPN 设置文件,由于Server instanceClient1,所以配置文件名是client1.opvn,这个文件可以分发给用户。

打开手机OpenVPN客户端,导入配置文件,就可以通过家里的服务端上网了,非常惊喜的是youtube都能顺畅使用。想实现手机连接自家服务器不使用手机流量,还需要加入免流代码,这是利用了联通免流量服务的漏洞实现的,比如抓取网易云音乐的免流通讯端口,这种非法的事情就算了,不需要进一步研究了。

在公司配置OpenVPN客户端,就可以通过家里的路由器上网了,上网自由度与在家里一样的哦。兴冲冲到办公室装上OpenVPN客户端,导入配置文件,结果连接失败!初步估计了一下,估计和多年前的那个windows路由有关系。参考网址:
Windows系统怎么添加路由表?
公司网络环境实现不同的网段相互访问怎么解决?

4、其他

其实树莓派比刷了梅林固件的路由器性能强,拓展性更好,这是下一步的研究方向。由于配置起来麻烦,需要懂很多Linux以及网络知识。

外网为啥ping不通我的路由器

在公司ping自己的路由器域名,显示请求超时timeout,在路由器管理界面中,将树莓派通过DMZ暴露出来,就ping通了,延时大约4ms,非常不错。
问题来了,ping是请求路由器的哪个端口?查看我的路由器防火墙设置,响应ping要求选项是否,应该是把网络层的ICMP关闭了。而TCP/UDP以及端口是传输层的,和ping关系不大。
参考文章:
PING需要利用到哪些端口?

学习linux知识,为以后搭建自己的的强大路由器做准备:利用Openwrt制作一台树莓派路由器
如何进行路由器性能测试:

Testspeed

为何Q啥的开关是啥意思?