栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

通过IPv6实现外网访问群晖7.0.1系统

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

通过IPv6实现外网访问群晖7.0.1系统

一、前言

由于IPv4资源有限,家庭宽带无法获取到固定的公网IPv4地址(动态的公网IP地址也无法得到),因此使用IPv6来访问我们家庭局域网中的NAS设备。

二、准备工作 (一)检查家庭宽带是否支持IPv6

打开浏览器,输入网址 https://www.test-ipv6.com/ 。若得到如下结果,就说明你的家庭宽带支持IPv6,然后我们去注册域名就可以了。

若得到的结果是不支持IPv6,就需要检查路由器或者光猫是否开启了IPv6。实在不行可以联系宽带维修师傅来帮忙检查一下。

(二)准备域名

推荐阿里云购买并注册域名,点击域名注册进行跳转。

(三)下载 aliddns.sh 文件

点击下载文件 提取码: 5sv3

aliddns.sh文件的作用就是当NAS的IPv6地址重新分配之后,通知阿里云重新解析域名,将新的IPv6地址与域名重新绑定在一起。

三、实际操作 (一)配置 aliddns.sh 文件

点击下载文件 提取码: 5sv3

1. 配置AccessKeyId、Access Key Secret、域名
#引号里改成刚刚申请的AccessKeyId
aliddnsipv6_ak="AccessKeyId" 

#引号里改成刚刚申请的Access Key Secret
aliddnsipv6_sk="Access Key Secret" 

 #引号里改成自定义一个名字,需要符合域名规范
aliddnsipv6_name1='www'

#引号里改成自己注册的域名
aliddnsipv6_domain='hongliang.tech' 
aliddnsipv6_ttl="600"

#举例,你在万网注册了一个域名叫hongliang.tech,那么aliddnsipv6_domain后面就填hongliang.tech,然后再自己想一个名字,比如nas,然后填到aliddnsipv6_name1后面,那么一会你访问群晖的地址就是http://nas.hongliang.tech:5000

if [ "$aliddnsipv6_name1" = "@" ]
then
  aliddnsipv6_name=$aliddnsipv6_domain
else
  aliddnsipv6_name=$aliddnsipv6_name1.$aliddnsipv6_domain
fi

now=`date`

die () {
    echo $1
}

ipv6s=`ip addr show eth0 | grep "inet6.*global" | awk '{print $2}' | awk -F"/" '{print $1}'` || die "$ipv6"
...
...

配置文件中的 AccessKeyId、Access Key Secret 都在阿里云里面获取,如下图:

如果是第一次进入,那就创建一个就OK啦。

2. 配置网卡名称

将 aliddns.sh 文件中第20行的eth0 更改成自己的网卡名称。

ipv6s=`ip addr show eth0 | grep "inet6.*global" | awk '{print $2}' | awk -F"/" '{print $1}'` || die "$ipv6"
2.1 获取网卡名称

1). 首先要打开NAS的ssh通道:控制面板 > 终端机和SNMP,勾选启动SSH功能,端口号可以就用22。

2). 使用另一台电脑在局域网内通过ssh方式登录NAS系统,并输入 ipconfig 命令获取网卡配置。

root@DS918Plus:~$ ifconfig
docker0   link encap:Ethernet  HWaddr 02:42:4A:AA:CD:37  
          inet addr:172.17.0.1  Bcast:172.17.255.255  Mask:255.255.0.0
          inet6 addr: fe80::42:4aff:feaa:cd37/64 Scope:link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:94579 errors:0 dropped:0 overruns:0 frame:0
          TX packets:84042 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:8344591 (7.9 MiB)  TX bytes:10967098 (10.4 MiB)

eth0      link encap:Ethernet  HWaddr 00:11:32:12:34:66  
          inet addr:192.168.50.100  Bcast:192.168.50.255  Mask:255.255.255.0
          inet6 addr: 240e:331:xxxx:xxxx:xxxx:xxxx:fe12:3466/64 Scope:Global
          inet6 addr: fe80::211:32ff:fe12:3466/64 Scope:link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:34645943 errors:0 dropped:2 overruns:0 frame:0
          TX packets:11287422 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:46488245824 (43.2 GiB)  TX bytes:6033141548 (5.6 GiB)
          Interrupt:19 memory 0xd0680000-d06a0000  

lo        link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:2525366 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2525366 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1 
          RX bytes:313537724 (299.0 MiB)  TX bytes:313537724 (299.0 MiB)

其中 docker0是Docker容器的,不是我们需要的。我们只需要查找拥有inet6 addr: 240e:331:xxxx:xxxx:xxxx:xxxx:fe12:3466/64 Scope:Global 这段代码的网卡名称就可以了,所以我这里的是 eth0。
PS:

  • inet6 addr: fe80::211:32ff:fe12:3466/64 Scope:link这种是内网IPv6,网外是无法访问的。
  • 240e:331:xxxx:xxxx:xxxx:xxxx:fe12:3466 这才是我们需要的IPv6地址。
3.域名解析

进入阿里云控制台,解析域名,添加记录

  • 记录类型:AAAA
  • 主机记录:与aliddns.sh文件中的aliddnsipv6_name1值要一样
  • 记录值:NAS系统的IPv6地址
  • TTL:10分钟

4.NAS系统添加任务计划

步骤:控制面板 > 任务计划 > 新增 > 计划的任务 > 用户定义的脚本

设置每天每10分钟执行一次,如下图:

在任务设置中,设置执行 aliddns.sh 文件。需要全路径。

点击运行,执行一次该任务,等待阿里云解析完成,就可以通过IPv6访问了。

四、其他

这是我的NAS导航网站,只支持IPv6访问。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/362044.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号