1.环境说明

上网:电信光猫+tplink路由器(电信送的)
群晖:DSM 7.1.1-42962 Update 2
域名服务商:腾讯云

2.光猫设置

2.1 获取光猫超级用户密码

拨打电信10000号

2.2 修改光猫为桥接模式

3.路由器设置

3.1 路由器拨号上网

用管理员身份登录 TP-LINK 路由器(一般登录页面地址是 http://192.168.1.1);
进入:路由设置->上网设置,上网方式选择“宽带拨号上网”,填好之前记录的宽带账号和密码,点击“连接”按钮

3.2 开启路由器IPv6支持

点击“IPv6"设置——按下图选择”功能“及”wan口连接类型“——勾选”复用IPv4拨号链路“——点击”链接“——若设置正确,黑框部分会显示相关信息。

备注:并非所有路由器都支持IPv6,若路由器不支持,则需要更换支持的路由器。

4.群晖IPv6设置

4.1 查看群晖IPv6地址

“控制面板”——“网络”——“网络界面”——选中“局域网1(已联机)”,点击“编辑”——“IPv6”——确认下:是否“自动”获取。

4.2 测试连通性

打开cmd窗口,ping群晖的IPv6地址
比如群晖界面查看到的地址格式是:240e:aaa:eee:1111::1000/128
ping的时候“/128”去掉,直接ping:240e:aaa:eee:1111::1000

到这一步,可以实现以下功能:
1、内网范围内,IPv6地址访问群晖;
2、内网范围内,手机端"DS File“、“DS video”等软件,通过IPv6方式登录

5.腾讯云域名解析

5.1 申请域名

申请步骤略

5.2 创建API密钥

登录:腾讯云-密钥控制台
记录下ID和Token信息。

5.3 域名解析

登录到:腾讯云-域名控制台,点击“添加记录”

记录类型选择“AAAA”,这个格式指向一个IPv6地址:


1.主机记录可以自定义:假设申请的域名为abc123.xyz,这边加上www,那么解析的地址就是:www.abc123.xyz
2.录入群晖NAS的IPv6地址。

![请添加图片描述](https://img-blog.csdnimg.cn/1968509fab884d338101500545b2f8a5.png
点击红框内的“开始解析”

此时,我们应该就可以直接通过访问域名的方式,来访问我们的NAS了。

6 群晖DDNS设置-无需设置

“控制面板”——“外部访问”——“DDNS”——点击“新增”

特别说明:ipv6方式不需要在群晖中设置此项,从上图可以看到,群晖中DDNS界面的外部地址只有IPv4地址,没有IPv6的选项。所以此处的设置对ipv6访问无用。

7 通过脚本定时将NAS的IPV6地址同步至腾讯云DNS

此处内容参考了博主“FlySkyIce”的文章:“利用shell脚本,实现腾讯云DNSPod进行DDNS动态域名解析ipv6地址”,在此深表感谢!
文章地址:https://blog.csdn.net/weixin_43978546/article/details/113222378

脚本全文如下:

#!/usr/bin/bash
dnspod_ddnsipv6_id="API_KEY_ID" #【API_id】将引号内容修改为获取的API的ID
dnspod_ddnsipv6_token="API_KEY_TOKEN" #【API_token】将引号内容修改为获取的API的token
dnspod_ddnsipv6_ttl="600" # 【ttl时间】解析记录在 DNS 服务器缓存的生存时间,默认600(s/秒)
dnspod_ddnsipv6_domain='替换自己所购买的域名' #【已注册域名】引号里改成自己注册的域名
dnspod_ddnsipv6_subdomain='替换为想要的名字' #【二级域名】将引号内容修改为自己想要的名字,需要符合域名规范,附常用的规范
local_net="eth0" # 【网络适配器】 默认为eth0,如果你的公网ipv6地址不在eth0上,需要修改为对应的网络适配器
# 常用的规范【二级域名】
# 【www】 常见主机记录,将域名解析为 www.test.com
# 【@】   直接解析主域名 test.com
# 【*】   泛解析,匹配其他所有域名 *.test.com# 举例
# 在腾讯云注册域名,登陆DNSPOD,在【我的账号】的【账号中心】中,有【密钥管理】
# 点击创建密钥即可创建一个API
# 如果你在腾讯云注册域名叫【test.com】
# 那么【dnspod_ddnsipv6_domain】后面就填【test.com】
# 然后根据常用的规范/自己想要的名字在【dnspod_ddnsipv6_subdomain】填入自己需要的名字
# 现假设为【file】,那么在【dnspod_ddnsipv6_subdomain】填入:"file",你的访问地址为【file.test.com】
if [ "$dnspod_ddnsipv6_record" = "@" ]
thendnspod_ddnsipv6_name=$dnspod_ddnsipv6_domain
elsednspod_ddnsipv6_name=$dnspod_ddnsipv6_subdomain.$dnspod_ddnsipv6_domain
fidie () {echo "Error: unable to find [public IPv6 address], please use the 'ip addr' command or query the network panel of the system to check the network card, and fill in the name of the network card with the IPv6 address in the 'local_net' position in the command file." >&2echo "IP地址提取错误: 在指定的网络适配器上[$local_net]找不到<公网IPv6地址>(不是fe80开头),请使用'ip addr'命令或在系统的网络面板查询有公网IP的网络适配器,然后在脚本的[local_net]中用填写网络适配器的名称。" >&2exit
}ipv6_list=`ip addr show $local_net | grep "inet6.*global" | awk '{print $2}' | awk -F"/" '{print $1}'` || diefor ipv6 in ${ipv6_list[@]}
doif [[ "$ipv6" =~ ^fe80.* ]]thencontinueelseecho select IP: $ipv6 >&1breakfi
doneif [ "$ipv6" == "" ] || [[ "$ipv6" =~ ^fe80.* ]]
thendie
fidns_server_info=`nslookup -query=AAAA $dnspod_ddnsipv6_name 2>&1`dns_server_ipv6=`echo "$dns_server_info" | grep 'address ' | awk '{print $NF}'`
if [ "$dns_server_ipv6" = "" ]
thendns_server_ipv6=`echo "$dns_server_info" | grep 'Address: ' | awk '{print $NF}'`
fiif [ "$?" -eq "0" ]
thenecho "DNS server IP: $dns_server_ipv6" >&1if [ "$ipv6" = "$dns_server_ipv6" ]thenecho "The address is the same as the DNS server." >&1fiunset dnspod_ddnsipv6_record_id
elsednspod_ddnsipv6_record_id="1"
fisend_request() {local type="$1"local data="login_token=$dnspod_ddnsipv6_id,$dnspod_ddnsipv6_token&domain=$dnspod_ddnsipv6_domain&sub_domain=$dnspod_ddnsipv6_subdomain$2"return_info=`curl -X POST "https://dnsapi.cn/$type" -d "$data" 2> /dev/null`
}query_recordid() {send_request "Record.List" ""
}update_record() {send_request "Record.Modify" "&record_type=AAAA&record_line=默认&ttl=$dnspod_ddnsipv6_ttl&value=$ipv6&record_id=$dnspod_ddnsipv6_record_id"
}add_record() {send_request "Record.Create" "&record_type=AAAA&record_line=默认&ttl=$dnspod_ddnsipv6_ttl&value=$ipv6"
}if [ "$dnspod_ddnsipv6_record_id" = "" ]
thenecho "seem exists, try update." >&1query_recordidcode=`echo $return_info  | awk -F \"code\":\" '{print $2}' | awk -F \",\"message\" '{print $1}'`echo "return code $code" >&1if [ "$code" = "1" ]thendnspod_ddnsipv6_record_id=`echo $return_info | awk -F \"records\":.{\"id\":\" '{print $2}' | awk -F \",\"ttl\" '{print $1}'`update_recordecho "update sucessful" >&1elseecho "error code return, domain not exists, try add." >&1add_recordecho "add sucessful." >&1fi
elseecho "domain not exists, try add."add_recordecho "add sucessful" >&1
fi

7.1 脚本使用方法

根据自身实际情况,修改脚本第2-7行,文件命名为dnspod.sh,然后通过群晖"File Station"上传脚本至/volume2/homes/admin目录下,或者其他目录。
通过ssh工具,ssh到群晖后台系统下,并进入到脚本所在目录,执行如下命令:

sed -i 's/\r//g' dnspod.sh
bash dnspod.sh

执行结果:

查看脚本有没有执行报错。
如果没有报错,脚本会立即将当前的ipv6地址,同步至腾讯云域名解析界面的“记录值”里面。
如果“记录值”没有修改,或者新增加了一条记录,说明脚本设置错误,返回修改。

验证脚本:可以手工修改腾讯云网页上的“记录值”,此处的IPv6地址,然后重新运行一下dnspod.sh脚本,确认此处地址是否变更正确。

定时执行脚本

群晖——控制面板——任务计划——点击“新增”——计划的任务——用户定义的脚本
在弹窗中点击“计划”——设置一下脚本执行的频次
点击“任务设置”——用户定义的脚本,复制进如下命令:

bash /volume2/homes/admin/dnspod.sh

本文结束。

群晖设置公网ipv6方式域名解析访问相关推荐

  1. 玩转群晖NAS——实现IPV6访问并部署动态域名解析程序(Golang)

    目录 玩转群晖NAS--实现IPV6访问并部署动态域名解析程序 相关API文档 修改光猫为桥接模式并通过路由器拨号上网 注册域名 获取AccessKey 编写动态域名解析脚本 将代码编译成linux上 ...

  2. 群晖NAS通过IPV6设置域名解析

    群晖NAS通过IPV6设置域名解析 为了更好的浏览体验,欢迎光顾勤奋的凯尔森同学个人博客http://www.huerpu.cc:7000 现在都2022年了,不会还有小伙伴追着运营商死乞白赖地要公网 ...

  3. 群晖NAS公网访问(IP+DNSPOD+桥接+端口转发+DDNS+WebDAV)

    群晖NAS公网访问 (IP+DNSPOD+桥接+端口转发+DDNS+WebDAV) 文章更新一版,结果审核不过,只能转载了: https://www.cnblogs.com/nomil9/articl ...

  4. 解决黑群晖切换网络环境后无法访问的问题

    问题启始:给我的老笔记本搭了一个黑群晖5.2版本,但是换了网络环境之后,无法访问nas页面.随即想到使用两台笔记本搭建局域网的方式安全地解决. 所需工具: 1.一台连上wifi的笔记本(称为笔记本A) ...

  5. 群晖设置腾讯云ddns显示认证失败的两种解决办法【实测第二种成功了】

    群晖腾讯云ddns显示认证失败 背景: 问题: 前提条件 解决办法一:群晖自带的ddns解析 步骤1:获取 API 密钥信息 步骤2:群晖(Synology)NAS 配置 DDNS 解决办法二:利用D ...

  6. 群晖搭建服务器(外网访问+开机自启动)

    白群晖,基本没用dsm系统,只是用putty终端写的命令搭建的服务器,现在记一下流程把. 1:开机注册,不谈了. 2:配置内网,也简单,不谈了,去官网看技术支持手册 3:配置外网,去nat123注册账 ...

  7. 群晖设置流量控制后进不去系统

    1.背景 由于最近nas一直偷跑科学上网流量,想找找真凶,于是在控制面板中设置了流量控制策略10KB/s,于是乎保存之后刷新就再也进不去系统了,尝试了各种办法,无济于事. 一度想过按reset按钮直接 ...

  8. 群晖 设置 php 服务器,群晖NAS服务器iSCSI管理器配置连接及使用说明

    群晖目前已经开始测试新版 DSM 系统及全新的 iSCSI 管理器,新版管理器不论是功能还是性能均有大幅提升. iSCSI 管理器可以让我们非常方便的挂载存储块进行远程连接,当然最大的优点是可以让我们 ...

  9. 套件端口 群晖_群晖NAS安装teamviwer套件,桌面版远程访问群晖设置教程

    1.首先进去群晖套件中心找到teamviwer并进行安装 2.安装打开后的界面如下:your ID,password,remote terminal 远程访问端口默认是关闭 3.打开teamviwer ...

最新文章

  1. Java为什么print显示不完全,read-eval-print-loop – 在Java 9上,为什么System.getenv()的输出在jshell中不完整?...
  2. python培训比较好的机构-上海python培训比较好的机构
  3. Hash特征编码在推荐系统的应用
  4. 均分纸牌pascal程序
  5. 学Python从业前景如何?工作机会多吗?
  6. codeforces 922E
  7. 如何确保SAP OData服务的返回结构为JSON格式
  8. MYSQL中只知表名查询属于哪个SCHEMA
  9. 【转载】6种.net分布式缓存解决方案
  10. 为什么现在很多公司和员工签订了合同之后都不给员工一份?
  11. 【李宏毅2020 ML/DL】补充:Ensemble: Bagging, Boosting, Adaboost, Gradient Boosting, Stacking
  12. 字符串相加和valueof_Java字符串valueOf()示例
  13. android高仿ios11系统,安卓仿ios11桌面全套文件
  14. java excel 2007兼容包_Microsoft Office 2007兼容包
  15. 《C程序设计语言》笔记 目录
  16. 易地推拓客分享:内容获客是最稳定的获客方式之一
  17. 应届生面试自我介绍该怎么说?
  18. 16 通道 65MSPS 14 bit 直流耦合 AD 采集卡/ FMC 子卡
  19. c语言用fopen打开txt,C语言fopen不能打开.txt文件
  20. c语言怎么让行末没有空格,新人提问:如何将输出时每行最后一个空格删除

热门文章

  1. 汽车SoC安全故障的自动识别(下):案例展示和指标分析
  2. C语言练习——逆序输出数字
  3. 华视电子web读取身份证信息
  4. SAP MD04详解
  5. 【STM8】PWM 捕获实战:占空比和频率(TIM2)
  6. 中南大学复试上机:1009: 安全路径
  7. 如何看懂Elastic解决方案与Gartner的魔力象限
  8. 2020年4月各编程语言占比及各语言创始人发量情况
  9. 【过关斩将】面试官:小伙子你都有哪些业余爱好?
  10. wifi和服务器之间通信协议,安卓和wifi通信协议