近日笔者在使用群晖NAS的v2rayA时遇到了时间同步不正确导致的无法正常使用的问题,导致emby无法刮削。虽然不知道原因,但也是个老问题了,版本很旧,而且用的是第三方软件市场的docker,现在docker也不能裸连获取了。下面是解决经验:
- 重新安装v2rayA
- 配置docker版的emby。
参考网站:
sjtuross/syno-iptables: Some missing iptables modules for Synology
群晖 DSM 7.2 为 Container Manager(docker)设置代理_群晖docker设置代理-CSDN博客
v2rayA
由v2rayA的官方文档可见,群晖并没有特别适配的版本,所以采用通用的二进制文件进行安装。既然裸连也无法从github上拉取文件,我们在电脑上下好传到NAS上。此外,下面的安装内容实则和文档略有不同。
拷贝v2rayA和xray
1 2 3 4cp v2raya_linux_x64 /usr/local/bin/v2raya cp xray /usr/local/bin/ chmod +x /usr/local/bin/v2raya chmod +x /usr/local/bin/xray拷贝xray自带的GFWList代理规则文件:
geoip.dat和geosite.dat1 2 3cd /usr/local/share mkdir xray cp .../g* xray修改
service配置文件1sudo vi /etc/systemd/system/v2raya.service内容由ChatGPT结合官方文档生成:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16[Unit] Description=v2rayA Service After=network.target [Service] Type=simple User=root Environment="V2RAYA_CONFIG=/usr/local/etc/v2raya" Environment="V2RAYA_LOG_FILE=/tmp/v2raya.log" Environment="XRAY_LOCATION_ASSET=/usr/local/share/xray" ExecStart=/usr/local/bin/v2raya --passcheckroot Restart=on-failure LimitNOFILE=1000000 [Install] WantedBy=multi-user.target激活v2rayA,根据官方文档,采用服务的形式运行
1 2sudo systemctl start v2raya sudo systemctl status v2raya配置开机自启。理论上这步之后配置完毕,笔者又顺便解决了群晖用不了透明代理的问题
1 2sudo systemctl enable v2raya sudo systemctl is-enabled v2raya激活透明代理
arch kernel iptables version system model platform version apollolake 4.4.180+ v1.8.3 DS918+ 7.0.1-42218 apollolake 4.4.59+ v1.6.0 DS918+ 6.2.3-25426 broadwell 3.10.105 v1.6.0 DS3617xs 6.2.3-25426 bromolow 3.10.105 v1.6.0 DS3615xs 6.2.3-25426 geminilake 4.4.180+ v1.8.3 DS920+ 7.1-42661 geminilake 4.4.302+ v1.8.3 DS220+ 7.2-64570 由于群晖系统的原因,先根据型号确定架构,然后从github仓库中下好的模块中选出适配机器的文件(比如笔者的DS224是geminilake)
上传相应的ko模块至
/lib/modules/,上传相应的so模块至/usr/lib/iptables/,即可。运行
sudo -i之后再运行以下insmod命令尝试加载ko内核模块。由于模块互相有依赖性,需按一定顺序加载1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21insmod /lib/modules/nfnetlink.ko insmod /lib/modules/ip_set.ko insmod /lib/modules/ip_set_hash_ip.ko insmod /lib/modules/xt_set.ko insmod /lib/modules/ip_set_hash_net.ko insmod /lib/modules/xt_mark.ko insmod /lib/modules/xt_connmark.ko insmod /lib/modules/xt_comment.ko insmod /lib/modules/xt_TPROXY.ko insmod /lib/modules/xt_socket.ko insmod /lib/modules/iptable_mangle.ko insmod /lib/modules/textsearch.ko insmod /lib/modules/ts_bm.ko insmod /lib/modules/xt_string.ko insmod /lib/modules/nf_nat_ipv6.ko insmod /lib/modules/nf_nat_masquerade_ipv6.ko insmod /lib/modules/ip6t_MASQUERADE.ko insmod /lib/modules/ip6table_nat.ko insmod /lib/modules/ip6table_raw.ko insmod /lib/modules/ip6table_mangle.ko但是系统重启后,模块可能需要重新加载。而笔者不再使用透明代理,所以没再研究。
Emby
在配置好v2rayA后,即使采用了改配置文件的办法,emby的流量仍不能成功地通过v2rayA来走,各种修改配置ip后无果,于是自然想到是docker变成本机服务导致的。
在v2rayA上多次修改配置后,终于发现开启透明代理解决问题,同时也解决了连接不上Docker仓库的问题,但更大的问题是启用透明代理会使外网访问全部失败(亏好内网还能连接)。“透明代理”我想可以理解为“全局代理”。
Docker(Container Manager)单独设置代理的问题详见前言链接。
在“映像”中选中emby并运行,在“存储空间设置”中加入媒体库的路径,在“环境”中加入三个环境变量,“网络”中选择
host模式:1 2 3HTTP_PROXY = http://127.0.0.1:20171 HTTPS_PROXY = http://127.0.0.1:20171 NO_PROXY = localhost,127.0.0.1完成基本设置,安装好之前的动漫相关的插件,刮削成功。