1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 如何在没有IPV4公网地址的情况 利用IPV6地址更新DNS从而达到DDNS的效果

如何在没有IPV4公网地址的情况 利用IPV6地址更新DNS从而达到DDNS的效果

时间:2021-07-09 04:15:00

相关推荐

如何在没有IPV4公网地址的情况 利用IPV6地址更新DNS从而达到DDNS的效果

文章目录

一 IPV6介绍二 光猫和路由设置获取IPv6步骤2.1 光猫设置桥接步骤 三 阿里云DDNS的设置以及AK和SK获取3.1 阿里云DDNS设置步骤 四 Shell脚本自动更新DNS4.1 更新阿里DNS脚本步骤4.2 更新DNS脚本4.3 守护脚本的监视DNS更新程序

一 IPV6介绍

什么是IPV6

IPv6是一种互联网协议,是IPv4的升级版,它是下一代互联网协议,旨在解决IPv4在可用地址空间、路由表大小、安全性、移动性和自配置等方面的限制。

IPv6的主要特点包括

1.地址空间更大:IPv6地址长度为128位,比IPv4的32位地址空间更大,可以提供更多的地址空间,支持更多的设备连接到互联网。

2.更好的路由表管理:IPv6采用层次化的地址结构,可以减少路由表的大小,提高路由效率。

3.更好的安全性:IPv6支持IPsec协议,可以提供端到端的加密和认证,确保数据传输的安全性。

4.更好的移动性:IPv6支持移动IPv6(MIPv6)协议,可以支持设备在不同网络之间切换时保持连接。

5.更好的自配置:IPv6支持自动配置功能,设备可以通过向网络发送请求来获取地址和其他配置信息,简化了网络管理。

为什么需要升级到IPv6?

由于IPv4地址空间的枯竭,IPv6成为了必要的升级。IPv4只有4.3亿个地址,而且已经基本用完,而IPv6地址空间非常大,可以为每个人、每个设备分配一个唯一的IP地址,解决了IPv4中地址短缺的问题。

此外,IPv6还支持更好的安全性、移动性和自配置功能,可以提高网络的效率和安全性。因此,IPv6的升级是互联网发展的必然趋势。

IPV6跟IPV4的不同

地址空间不同:IPv4的地址空间是32位,约42亿个地址,而IPv6的地址空间是128位,约有3.4×10^38个地址,大大提高了地址的可用性和扩展性。地址表示不同:IPv4的地址是以点分十进制的方式表示,如192.168.1.1,而IPv6的地址是以冒号分隔的16进制数表示,如2001:0db8:85a3:0000:0000:8a2e:0370:7334。网络层协议不同:IPv4使用ARP协议来解析MAC地址,而IPv6则使用邻居发现协议(Neighbor Discovery Protocol)来解析MAC地址。安全性不同:IPv6在设计时考虑了更多的安全选项,如IPsec,可以提供更好的安全性。

二 光猫和路由设置获取IPv6步骤

在正式设置前,先谈一谈为什么要获取IPv6,得到IPv6地址到底有什么作用?

三大运营商安装好宽带的后,默认都是把光猫设置为路由模式,而你内部网络获取到的IP基本都是192开头的私网地址,所以外网是无法直接访问到你的内网。你就算打电话跟运营商要IPV4地址,一般情况下会叫你转成专线,说简单点是拿IPV4稀缺性卖更高的价钱,所以退而求其次,通过IPV6实现内外网设备的直连。你在网上查看自己的IPV4公网地址时,一般情况下会显示一个公网地址,实际你是无法使用的,因为那是你整个小区共用的一个公网IPV4地址,而实际上是IPV4公网地址做的NAT转换,到你至少是两层NAT以上,所以你在外面就想访问到家里的内部设备转换层数太多,一般是无法访问。

下面说下如何做IPV6的DDNS步骤

2.1 光猫设置桥接步骤

这里我以联通宽带为例在浏览器中输入光猫管理地址,默认为192.168.1.1,输入用户名和密码登录【不是光猫背部的用户名和密码】

要进入管理员界面才可以修改桥接模式,不知道账号密码的可以百度下或者问宽带师傅 我的是联通宽带默认的管理账号密码都是:CUAdmin

登陆进管理员页面后,选择“基本配置”,左侧找到“宽带设置”,根据我图片标注修改对应选项,然后’保存’

在路由器界面根据我图片所示选择对应内容,WAN选择为’PPPoe’拨号,在IPV6页面选择’Native’模式,一般情况获取到IPV6地址,会以2408开头,因为各自路由器不相同,但是大致的配置就是我图片里说明的

看路由器是否拨号成功后,看能连接外网吗?也可以去光看是否拨号成功

路由器拨号成功后,查看是否获取IPV6公网地址

那里查看IPV6的地址是否获取成功

windows可以按Alt+R调出CMD窗口,输入ipconfig查看是否获取到IPv6地址,如图所示

Linux可以在命令行输入curl -s https://v6.ident.me就看到获取的ipv6地址

三 阿里云DDNS的设置以及AK和SK获取

3.1 阿里云DDNS设置步骤

前提是你已经拥有了自己的域名,至于如何申请域名,根据阿里云的申请要求来就可以了

登录阿里云后,选择右上角的’控制台’

进入控制台后,选择下面的’资源管理’-》‘域名’-》‘管理资源’

进入页面后再左侧’基本信息’下的点击’域名解析’

点击添加’添加记录’

根据我在截图里标记的内容进行选择

在右上角找到头像,选择AccessKey管理

在身份管理下找到用户,创建用户,勾选’OpenAPI’,创建成功后会生成AK和SK,记得保存好后面会用。

返回到身份管理->用户界面点击最右侧的添加权限,根据我的截图给予对应的权限即可,此时距离成功已经非常近了

四 Shell脚本自动更新DNS

4.1 更新阿里DNS脚本步骤

脚本里的’RECORDID’和’RR’的说明,看下图

4.2 更新DNS脚本

#创建脚本vim ali-ddns.sh#定义脚本变量,具体填写内容可以看我上面截图ACCESSKEYID=<AccessKey ID>ACCESSKEYSECRET=<AccessKey Secret>DOMAINNAME=<域名>RECORDID=<记录ID>RR=<主机记录> #获取当前主机IPv6地址get_ipv6_address() {ipv6_address=$(curl -s https://v6.ident.me/)echo $ipv6_address}#脚本中更新DNSupdate_dns_record() {ipv6_address=$1timestamp=$(date -u "+%Y-%m-%dT%H%%3A%M%%3A%SZ")signature=$(echo -n "GET&%2F&AccessKeyId%3D$ACCESSKEYID%26Action%3DUpdateDomainRecord%26DomainName%3D$DOMAINNAME%26Format%3DJSON%26RR%3D$RR%26RecordId%3D$RECORDID%26SignatureMethod%3DHMAC-SHA1%26SignatureNonce%3D$timestamp%26SignatureVersion%3D1.0%26Timestamp%3D$timestamp%26Type%3DAAAA%26Value%3D$ipv6_address" | openssl dgst -sha1 -hmac "$ACCESSKEYSECRET&" -binary | base64)curl -s "/?Action=UpdateDomainRecord&DomainName=$DOMAINNAME&RR=$RR&Type=AAAA&Value=$ipv6_address&RecordId=$RECORDID&Format=json&AccessKeyId=$ACCESSKEYID&SignatureMethod=HMAC-SHA1&SignatureNonce=$timestamp&SignatureVersion=1.0&Timestamp=$timestamp&Signature=$signature"}#定时执行更新DNSwhile truedoipv6_address=$(get_ipv6_address)update_dns_record $ipv6_addresssleep 300 # 每隔5分钟执行一次更新操作done#给与执行权限chmod +x ali-ddns.sh#执行脚本sh ali-ddns.sh > /dev/null 2>1& &

4.3 守护脚本的监视DNS更新程序

vim monitor-ddns.sh#!/bin/bashps -aux | grep -v grep |grep ali-ddns.shif [ $? -ne 0 ]thennohub sh /root/scripts/ali-ddns.sh > /dev/null 2>&1 fi#给与执行权限chmod +x monitor-ddns.sh#定时执行守护程序,crontab -e*/10 * * * * /root/scripts/monitor-ddns.sh >/dev/null 2>&1 #每10分钟执行一次守护程序

终于完成了,现在你可以通过域名的方式访问家里的Linux系统的内部设备,例如:NAS,aria2等程序。如果需要IPV4的DDNS脚本可以留言,我会更文章内容。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。