一般家庭高清播放网络环境都是由几个组成:
电视机、高清播放器、NAS等,但要达成这些条件还是需要一些投入。通过实践,将原有的一些设备充分利用来打造一个使用方便的高清播放网络及存储环境。具体方式:
1、利用电视机+app的方式,做出海报墙效果,这里使用的app 是novaplayer,可以非常方便的进行刮削,形成自己的海报墙;
2、利用网盘资源存储海量4K大片,无需下载,直接播放,这里使用的alist,将网盘资源以webdav协议传输给电视里边安装的novaplayer;
3、利用光猫USB口连接硬盘作为本地存储,存放私有的视频在电视上播放。
通过这种方式就可以完成一个低成本高清播放网络及存储环境。
这里由几个问题要要解决:
1、要通过联网不畅解决网络刮削失败的问题;
2、alist 无法在电视上安装,只能安装在其他地方;
3、本地在光猫上挂接的硬盘要能正常工作;
通过自己实践解决了上面几个问题,运行正常
设备:普通Android电视、路由器 红米AX6(已root)、光猫华为HG8145C
电视上安装novaplayer、路由器安装 alist &防DNS污染联网刮削不畅解决工具(你懂的)、光猫华为HG8145C接硬盘。在整个过程中遇到的坑及解决办法
第一坑:存储空间解决:
家里有目前用的光猫很老:华为HG8145C,有一个USB2.0接口,可以实现samba V1.0协议共享,测试用U盘共享可行,但用家里老旧的300G USB移动硬盘出现问题,解决办法是用一条双头USB线,其中一口外接5V电源供电,接光猫的USB口将1脚用胶带贴上,防止外接电源对光猫USB芯片产生影响。经过改造后可以用电脑等设备方便的访问(需要安装samba V1.0协议,否则无法访问)
第二坑:AX6路由拨号的情况下如何访问光猫:
需要修改路由的network、firewall文件
登录到路由器后,编辑网络配置文件:
vi /etc/config/network
找到 config interface 'wan' 部分,添加一个新的接口配置,使其与光猫 LAN 同网段,下面的这段都是要新加上去的:
config interface 'modem'
option proto 'static'
option ifname 'eth1'
option ipaddr '192.168.1.2'
option netmask '255.255.255.0'
注意:其中 ifname 要与 wan 接口一致,我插的路由的1口,ipaddr 设置为与光猫同网段的静态 IP 地址1.2,确保这个地址不被连接光猫本身和其他连接设备占用;
配置防火墙,编辑防火墙配置文件:
vi /etc/config/firewall
在 config zone 部分,找到 wan 区域,添加新接口:config zone
config zone
option name 'wan'
list network 'wan'
list network 'wan6'
list network 'modem'
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option masq '1'
option mtu_fix '1'
这一段中只需增加 list network 'modem' 这一行,其他的不用修改;
reboot 重启路由,这时候可以在LAN端访问光猫上的samba资源了
第三坑:实现AX6 官方固件 访问 samba设备
在这个问题上走了很多弯路,查了很多帖子都说可以用openwrt CIFS Client ,然后直接挂载samba,按照openwrt 的官方说明可以安装,像这样:
opkg install kmod-fs-cifs kmod-nls-base
opkg install kmod-nls-utf8 kmod-crypto-hmac kmod-crypto-md5 kmod-crypto-misc cifsmount
但实际情况安装失败,问题在于没有合适的源去安装,AX6官方固件是是基于openwrt 18.06 snapshot 版本开发的,core版本是4.4.60,openwrt 18.06源中没有AX6 IPQ807X的内核文件,安装新的snapshot内核也不兼容
陷入僵局.....这时候采用命令,发现了samba36-client
opkg update
opkg list | grep samba
samba36-client - 3.6.25-12 - Samba 3.6 SMB/CIFS client
发现此是一个实用程序,在没有CIFS时候也是一个不错的选择,安装.....
了解其中命令,发现还能用,随即编写了一段启动脚本,在/tmp 运行23M多的 alist 3.36 测试成功!具体操作如下:
vi /etc/init.d/alist_init
#!/bin/sh /etc/rc.common
# Copyright (C) 2006 OpenWrt.org
START=98
start() {
mkdir /tmp/alist
cd /tmp/alist
smbclient //192.168.1.1/AX6_Add-ins -U ax6%12345678 -c 'get alist_upx_336'
mv alist_upx_336 alist
chmod +x alist
cd /data/alist
/tmp/alist/./alist server >> /dev/null 2>&1 &
}
stop() {
cd /data/alist
killall alist
rm -r /tmp/alist
}
上面脚本中192.168.1.1 光猫的IP地址;
AX6_Add-ins 光猫U盘中的共享目录---根据自己设置情况修改;
ax6%12345678 ax6为共享目录的用户名 12345678是密码 ----根据自己设置情况修改
alist_upx_336 是用upx制作的alist bin压缩文件
:wq 保存退出,执行:
chmod 755 /etc/init.d/alist_init
/etc/init.d/alist_init enable
sync
reboot
搞定!可以正常访问了。虽然说smbclient没有cifs挂接那么方便,但是也确实解决了外界文件交互问题,带来了很多便捷
使用的是openwrt官方源
vi /etc/opkg/distfeeds.conf
将里边的内容全部删除,替换为:
src/gz openwrt_base http://downloads.openwrt.org/releases/18.06.9/packages/aarch64_cortex-a53/base
src/gz openwrt_luci http://downloads.openwrt.org/releases/18.06.9/packages/aarch64_cortex-a53/luci
src/gz openwrt_packages http://downloads.openwrt.org/releases/18.06.9/packages/aarch64_cortex-a53/packages
src/gz openwrt_routing http://downloads.openwrt.org/releases/18.06.9/packages/aarch64_cortex-a53/routing
自问自答:
1、为什么要用如此简陋的设备组建?答:设备多了费电,故障点也很增多,尽可能做最简单;
2、光猫USB口对移动硬盘寿命影响大吗?答:实测在移动硬盘没有收到被访问请求过一段时间(大约20-30分钟)会休眠,所以移动硬盘不会一直工作,影响应该不大。这和光猫、移动硬盘本身有关系,可以观察一下实际情况来确定;
3、为什么要光猫桥接后由路由器拨号,如果光猫拨号后面LAN的设备就可以直接访问光猫了,非要用路由拨号?答:部分LAN设备需要公网IP V6地址,这样方便些,同时减轻光猫负担;
4、为什么要在路由/tmp (内存)中运行应用?答:AX6只有可怜的20M可用空间,一个用UPX压缩过的alist3.18的文件都要13M,再安装其他的空间就捉襟见肘,所以只能在/tmp上运行。但在/tmp运行有一个很大的问题是:一旦路由断电或重启则/tmp的数据会全部丢失,必须通过手段从别的地方拉取过来,用smbclient就是为了解决这个问题,当然如果能装 kmod-fs-cifs,用mount挂载会更方便。
5、在/tmp运行程序对路由稳定性会有影响吗?答:肯定有,就看路由上其他应用对内存的占用情况,要根据实际情况确认能否长期正常运行。