NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

2024-09-22 10:55:15 94点赞 913收藏 52评论

大家好,这里是Cherry,喜爱折腾、捡垃圾、玩数码,热衷于分享NAS、docker玩耍经验~

前言

在上一篇文章里,我利用dockge实现了海康R1 NAS对docker compose的支持,并在文末示范了如何使用dockge来部署lucky。

有很多小伙伴对dockge不感冒,而是留言问如何通过海康R1自带的docker界面部署lucky,因此cherry就再来说说lucky部署和使用技巧。

那为什么我们需要在海康R1上部署lucky服务呢?这是因为海康R1目前暂未提供WEBUI管理页面,而系统里也没有提供反代、DDNS等服务,如果我们在R1上折腾docker后,很多服务会没有办法通过互联网访问,多少就有点不方便了。

因此通过第三方的lucky项目来实现海康R1上的DDNS、web服务,可以有效提高我们对NAS的管理和应用能力。

关于公网IP与DDNS

在正式开始前,先介绍一下公网IP的相关知识。

目前公网IP主要分为IPv4和IPv6,一般家庭宽带需要我们自行和运营商联系,要求他们开通IPv4或者IPv6业务,其中IPv4相对会困难一点,IPv6的话目前包括移动在内的主要运营商都会给了。

一旦我们获取了公网IP,就可以通过IP直接连接到NAS上,但是运营商给的IP地址是我们俗称的动态IP地址,平均过个2、3天就会自动变化,如果我们一直都采用IP地址来访问NAS的话,就需要手动去调整,特别麻烦。

而DDNS的目的就是将变化的动态IP映射到一个不变的域名地址上,这样我们就可以通过访问固定的域名来实现NAS访问。而反代的目的也是将局域网内的某一个端口进行变化,通过不同的二级域名+同一个端口来实现不同业务的访问。

Lucky主要功能介绍:

- 端口转发

- 动态域名(DDNS)

- Web服务

- Stun内网穿透

- 网络唤醒

- 计划任务

- ACME自动证书

- 网络存储


一、系统部署

开始项目部署前,我们先从网盘下载相关的工具,包括容器镜像。

夸克分享「lucky」

链接:pan.quark.cn/s/96affc23f543

如果网络不好的,建议选择导入功能,把网盘下载的镜像导入进去。

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

如果网络OK,或者给docker功能配置了镜像库的(如1panel),比如下面这个操作,可以自行下载镜像。

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

在docker页面搜索gdy666/lucky,别下错其它版本了。

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

接着,在【镜像管理】里选择lucky镜像,点击【创建容器】。

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

存储空间】:左侧的存储路径可自定义,右侧的装置路径/goodluck不可更改,并把类型选择为读写。

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

【环境】:lucky的使用建议使用host模式,所以直接在环境变量里设置,大家照抄就行。

# 网络设置为host

--net=host

# 重启策略

--restart=always

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

因为采用了host模式,所以没办法通过容器管理进入,查看日志可以看到webui端口是16601,因此我们在浏览器输入http(s)://NAS-ip:16601就可以了。

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

二、系统使用

使用默认账号密码666/666登陆系统

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

初次登录以后建议大家设置一下安全内容,毕竟lucky上的设置会暴露我们全部的网络信息。这里建议关闭外网访问,设置安全入口,并且修改管理员账号密码

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

1、DDNS

DDNS服务目的是将我们的家宽可变的公网IP地址,转变为固定的域名地址,方便我们更好的访问NAS中的服务。要使用DDNS服务,务必确认自己的家庭宽带已经申请到了公网IPv4,IPv6地址,否则该功能是无法使用的。

尤其海康存储R1的管理页面是没有webui的,所以我们DDNS配置更多是为docker内的容器服务的。

这里以阿里云为例,我们首先要去阿里云购买域名,并且申请Acesskey。

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

配置基本上是无脑的,只需要填入对应域名服务商的密钥就可以了。下面建议IPv4、IPv6都通过接口获取,然后在域名列表处,每一行填入一个域名,可以是二级的,也可以是多级的。

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

2、Web服务

web服务其实就是我们通常指的反代功能,当然也包括302重定向、URL转跳、文件服务、文本输出等内容,但是我们都用不上,所以这里就重点介绍反代功能。

比如大家比较需要的,就是将【不同二级域名+同个端口】反代到不同的服务上的做法。

第一步,添加外部入口,首先打开【Web服务】-【添加Web服务规则】,默认的监听端口是16666,建议大家都修改一下;如果需要使用https服务的化,则需要打开TLS,否则默认关闭。

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

第二步,设置不同子规律,点击规则最下方的【添加子规则】,服务类型选择反向代理,前端地址改为【项目+域名】的二级域名模式,后端地址改成局域网内的实际应用地址。

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

这是我设置的不同容器应用的二级域名,只需要访问蓝色区域的外网地址就可以对应访问局域网内的容器服务了,而且全网只开放了16666这一个端口,十分安全。

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

除了ddns和web反代外,lucky还提供了如端口转发、stun内穿、网络唤醒、网络存储、SSL/TLS证书等服务,这些服务在海康存储R1中其实都用不大上,感兴趣的朋友可以从官方学习一下这些功能如何使用,所以这里就不一一介绍了。

写在最后

在lucky之外,如ddns-go、nginx proxy manager、nginx webui等项目都可以实现文章中的主要功能,但这些项目都有一个核心问题,那就是我们必须拥有公网IP。

如果没有公网IP,往往意味着无法使用IPv4、IPv6进行DDNS和反代!但是依旧有很多朋友,是无法获取到公网地址的,包括校园网、企业多层NAT后地址等,这个时候我们就要换一种方式来实现NAS和客户端之间的访问了,没错,就是异地组网和内网穿透服务。

下一期,我们介绍如何在海康存储R1上安装最经典的异地组网工具-tailscale。

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起
52评论

  • 精彩
  • 最新
  • 我在路由器上安装的,ddns个ssl都好使,就是反向代理不灵,感觉访问请求就没走lucky,本地电脑装的caddy就没问题,不知道为什么。路由器没开防火墙

    校验提示文案

    提交
    这个要贴图看咯 这样也说不清

    校验提示文案

    提交
    我用的群晖套件的lucky,ddns配置好了,但是ssl好像没用,所以我就用lucky申请完手动加到群晖里。反代也没搞好最后还是换回了群晖自带的反代 [黑线] [黑线] [黑线] [黑线]

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 借问一下:我家里的电信宽带有动态公网,店里的电信宽带是大内网,好像还不能IPV6访问。两地都装爱快,并且手头有两个阿里域名,目前家里已实现外网域名访问。有什么免费方案能解决店里的群晖公网访问,或者用家里的公网给店里做代理服务。

    校验提示文案

    提交
    去搜索引擎找一下 smargate,利用的是闲置安卓机+手机卡,你这种情况估计只能这样

    校验提示文案

    提交
    就是中转的模式

    校验提示文案

    提交
    还有4条回复
    收起所有回复
  • 这个安全性怎么样呢?

    校验提示文案

    提交
    安全都是相对的,本质就是反代

    校验提示文案

    提交
    收起所有回复
  • pve安装虚拟机后 dockge安装,ipv6ddns解析无误,能获取ipv6地址,用域名访问不了。是否跟pve安装有关,还是网络问题

    校验提示文案

    提交
    1、你访问的地方有没有ipv6,v6只有v6能访问。2、有无开放端口?

    校验提示文案

    提交
    设置好后别管了,第二天就可以访问了,别问我是怎么知道的,我就是设置无误,当时硬是访问不了,第二天就ok了

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 请问怎么样才能把端口号也去掉呢?

    校验提示文案

    提交
    端口要80或者443,要企业宽带或者vps

    校验提示文案

    提交
    你平时访问得网站地址看起来没有端口,实际是80或者443端口,只是浏览器把默认的端口忽略了,显的简洁一点。

    校验提示文案

    提交
    还有7条回复
    收起所有回复
  • 请问,怎么访问虚拟机里多个系统呀?只有一个系统时候绑定域名后,里面的应用直接域名加端口就能访问。如果多个系统,还要分别访问里面的应用,怎么设置呢,还是只能一个一个的做端口映射?

    校验提示文案

    提交
    不同ip分开做就行了

    校验提示文案

    提交
    只有一个公网IP和域名,怎么分开做呀?我能想到的方法就只能一个一个的IP+端口做映射 [晕] 。我现在是主系统用公网+域名,别的系统用tailscale [喜极而泣]

    校验提示文案

    提交
    收起所有回复
  • 安装的群晖套件版lucky,不能监听1024一下端口怎么破

    校验提示文案

    提交
    rpc要用端口转发吧

    校验提示文案

    提交
    收起所有回复
  • 这个是不是必须要有公网ip才能实现

    校验提示文案

    提交
    反代理论上是的,远程访问的话stun打洞是穿透的解决方案

    校验提示文案

    提交
    收起所有回复
  • 我都是纯nginx配置手工配 用上web服务去管理反而容易遇到服务各种问题更浪费时间

    校验提示文案

    提交
    nginx webui适合你

    校验提示文案

    提交
    收起所有回复
  • 分享链接没了去别的地方下什么版本也不知道了怎么办

    校验提示文案

    提交
    一样啊 latest的就行了

    校验提示文案

    提交
    请问 环境变量全照着设置了 但是都变成hostname了 公网有了nasip也访问不了 [高兴]

    校验提示文案

    提交
    收起所有回复
  • 向大神学习

    校验提示文案

    提交
  • 请教 lucky怎么反代home assistant

    校验提示文案

    提交
    代理啥都一样流程啊,第二步写要代理的内网地址就行

    校验提示文案

    提交
    这个需要在homeassistant的配置文件中写几行代码

    校验提示文案

    提交
    还有3条回复
    收起所有回复
  • 联通不允许这么做

    校验提示文案

    提交
    我就是联通啊,没问题

    校验提示文案

    提交
    收起所有回复
  • 请教一下。ftp可以设置吗?

    校验提示文案

    提交
  • 闭源。。

    校验提示文案

    提交
  • 如何利用lucky实现海康R1的外网访问?

    校验提示文案

    提交
  • 现在可以从哪里申请免费的ddns域名吗

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
913
扫一下,分享更方便,购买更轻松