群晖折腾记1—群晖NAS使用docker中的ddns-go,DDNS阿里云ali实现Ipv6访问

news/2024/10/31 8:24:04/

群晖折腾记1—群晖NAS使用docker中的ddns-go,DDNS阿里云ali实现Ipv6访问

  • 前置条件
  • 科普时间
  • 具体步骤
    • 1. 域名购买
    • 2. 获取AccessKey ID和Secret
    • 3. 获取免费SSL证书
    • 4. 在docker中运行ddns-go
    • 6.设置反向代理

前置条件

1、移动宽带只有IPv6公网地址,若你的宽带为电信或联通,它们都可以申请到公网IPv4地址,不需要这么复杂。
2、主路由为小米AX9000(虽然是定制OpenWrt系统,但是固件真的很辣鸡,已开启SSH),若你的路由器为其它系统,可以参考思路。
3、路由器拨号,怎么设置光猫桥接自己去找教程。
3、域名,可以使用免费的群晖二级域名、也可以购买一级域名,使用群晖自带的二级域名进行DDNS有很多教程,不再讲
参考文章:设置群晖DDNS+IPV6远程访问

科普时间

现在对IPv4和IPv6做一些简单的说明,便于大家理解。一般来说在家庭网络IPv4环境中,只有路由器能获得到公网地址,外网设备想要访问到内部服务,都需要通过端口转发来进行。
举个例子就是打某个公司前台电话,由前台帮你转接到你想找的部门的分机。而IPv6环境下,局域网中每一台设备都有独立的公网地址。同样的例子,现在找这个公司的某个部门,不用再拨前台转分机,因为他们公布了每个部门的独立号码,可以直接拨打。

基于以上情况,如果你之前是使用IPv4环境,通过端口转发访问内网,需要切换到IPv6环境,那么一定要理解上面那段话,因为在IPv6中不再有端口转发这事儿了。
IPv6的环境下是没有端口转发这件事的,所以路由器的DDNS只能解决域名和路由器IPv6地址的绑定关系。NAS有独立的IPv6地址,它也需要单独部署DDNS来完成这件事。台式机如果需要直接使用系统自带的远程连接,也可以设置独立的DDNS,这里也不展开。

当然你想实现用一个DDNS来访问局域网内的其他IPV6设备也可以,就需要用到反向代理,上面的参考文章中也有说明,对于DMS6.0版本可以参考,我后文会以DMS7.1作为例子设置反向代理,以达到访问局域网其他设备的目的。

具体步骤

1. 域名购买

在阿里云购买域名阿里云域名购买,需要实名,对于注册和购买步骤略,建议直接买十年的,经济实惠。

2. 获取AccessKey ID和Secret

进入域名控制台阿里云域名控制台
获取Accesskey
点击创建,记录AccessKey IDSecret
如下图所示:在这里插入图片描述

3. 获取免费SSL证书

来进行HTTPS访问,略,如果嫌麻烦可以先忽略这步,以后的文章会单独讲,后面会补链接

4. 在docker中运行ddns-go

ps:至于笔者为什么不在路由器中使用ddns,是因为笔者技术小白而且想使用小米官方固件,不想刷openwrt,
小米辣鸡固件好像涉及到外网无法访问WEB页面而且还要后面设置反代,对于萌新的我(主要是不想折腾)不友好,所以
这就导致了我只能用群晖Nas了,反正Nas接了UPS,都是24小时开机,DDNS可以实时解析Ipv6公网地址,问题不大,
实际测试 设置了ddns和反代后,在Nas始终运行(有Ups)和路由器断电断网后并重新拨号,等待10分钟后(等ddns加载域名缓存),可以正常使用外网访问NAS和局域网的其他设备了

对于如何操作安装ddns-go这篇文章已经很清楚了,推荐一个好用的公网DDNS神器“DDNS-GO”(2022年6月22日更新)

注意:在ddns-go的“Domains”处填写需要解析的域名也可以是二级域名,比如我买了XXX.com作为我的域名,也可以在domains处设置成nas.XXX.com,这样每次访问可以使用nas.XXX.com:5000进行访问Nas,5000是nas的web登录的http的端口,后期使用https登录的话需要根据自己设置的nas的web登录的https端口进行调整登录,(啰里啰唆的,应该说的挺明白了吧)

5.愉快玩耍,如果还是无法连接说明阿里云还没有缓存过来,稍等10分钟即可
使用带ipv6的设备访问nas.XXX.com:5000
http(s)://ddns中设置的域名:端口号),就可以看到群晖的登陆页啦~
如果无法通过域名访问nas
可以直接使用nas的IPv6网络访问
测试到底是Nas本身的问题还是ddns缓存还未加载的问题
方法详解:
怎么查看你的Nas ipv6地址,在这里插入图片描述
记得使用Ipv6设备访问,比如手机等(现在大部分的手机运营商都支持ipv6了吧)

在手机浏览器打开,别忘了ip地址前后带中括号

[Nas的IPv6地址]:5000

端口5000是Nas设置的http的web登录端口,默认是5000,如果不能打开就是nas或者路由器的防火墙的问题。
目前遇到一个比较坑的就是手机版谷歌浏览器不知道为什么有时候会打不开,使用无痕浏览后就能正常打开了

如果这个可以打开但是使用域名打不开,那就是ddns的问题

6.设置反向代理

使用反向代理访问局域网内的其他设备,比如路由器等见后面的文章。后期会加上链接


http://www.ppmy.cn/news/170724.html

相关文章

05Javascript运算符

1、运算符 运算符(operator)也称为操作符,是用于实现赋值,比较和执行算法等功能的符号。 2、算数运算符 2.1 概念 算数运算使用的符号,用于执行两个变量或值得算术运算。 2.2 类型 加减乘除和取余(%&…

ECMAScript 5 - JavaScript 5

ECMAScript 5 - JavaScript 5 1. ECMAScript 5 是什么 ECMAScript 5 也被称为 ES5 和 ECMAScript 2009。 本章介绍 ES5 的一些最重要的特性。 2. ECMAScript 5 的新特性 “use strict” 指令String.prototype.trim()Array.isArray()Array.prototype.forEach()Array.protot…

JavaScript之E6语法

一.ES6相关概念 1.什么是ES6 ES6, 全称 ECMAScript 6.0 ,是 JavaScript 的下一个版本标准,2015.06 发版。 ES6 主要是为了解决 ES5 的先天不足,比如 JavaScript 里并没有类的概念, ECMAScript 6 目前基本成为业界标…

20.JavaScript6

一、什么是 JavaScript 1.概述 JavaScript 是一门世界上最流行的脚本语言(相当于浏览器解释) 一个合格的后端人员必须要精通 JavaScript ECMAScript : 往往被称为 JavaScript 或 Jscript ,它可以理解为是 JavaScript的一个标准…

JavaScriptES6

ES5高级ES6广域学习 学习笔记 面向对象的编程语言(OOP) 什么是面向对象的编程语言? • 一切皆对象,对象的模板是类,类的实例是对象(当然js中没有类的概念,class只是语法糖) • 对象中有属性、方法,属性的…

JavaScript(ES5)

JavaScript(ES5) 基础数据类型 Number、String、Boolean、undefined、object、Null Number JavaScript 只有一种数字类型。数字可以带小数点,也可以不带: let x134.00; //使用小数点来写 let x234; //不使用小数…

JavaScript 62 JavaScript 版本 62.6 ECMAScript 2018

JavaScript 文章目录 JavaScript62 JavaScript 版本62.6 ECMAScript 201862.6.1 ECMAScript 2018 中的新特性62.6.2 JavaScript 异步迭代62.6.3 JavaScript Promise.finally62.6.4 JavaScript 对象 Rest 属性62.6.5 新的 JavaScript RegExp 特性 62 JavaScript 版本 62.6 ECMA…

JavaScriptES6(三)

一、函数 1、函数形参的默认值:在很多情况下,需要在使用函数的时候给定默认参数,在ES5标准中一般会这样写: function fun(name,age,cb){name typeof(name ! undefined)?name: 张三age typeof(age ! undefined)?age: 20cb typeof(cb ! undefined)?…