IPv6碎碎念及在AWS EC2上的实践

本文介绍了IPv6的基本知识点,包括地址结构和简写规则。在AWS EC2上,通过启用VPC和子网的IPv6支持、配置路由表和安全组,实现了IPv6通信。此外,探讨了IPv6域名解析中的AAAA记录,并通过实践验证了IPv6链路的正确配置。

借着IPv4耗尽的东风,我们在AWS EC2上对IPv6进行一波实践,顺道给大家碎碎念一下IPv6,如有错漏,敬请指正

1. 先普及几个小知识点

IPv6的长度是128位,IPv4是32位,IPv6的地址通常写作8段,每段由四位十六进制数组成,例如:FEDC:0123:0000:4567:ABCD:0000:0000:DEFA/64

上面的地址还可以简写为:  FEDC:123:0:4567:ABCD::DEFA/64

我们可以看到第六和第七段的地址被掩藏掉了,第三段被一个0代替了,这里有两个简写原则: 

  1. 前导0压缩,也就是0000可以压缩为0

  2. 连续多段的0可以被双冒号代替,但是每个简写的地址中只能出现一次双冒号

以上就是为什么我们总是看到奇奇怪怪毫无章法的IPv6的地址的原因了。

  • 另一个知识点:

IPv6没有子网掩码的概念,用子网前缀长度来标记地址和子网

2. AWS EC2上的IPv6实践

实践IPv6不只是在虚拟机上启用它就行了,计算机网络之所以称为网络是由多个交叉点和多条路径组成的,那就要求我们在整条路径所有经过的点上都能支持IPv6才行,在AWS上,我们只需要在自己的VPC内做好IPv6的准备工作,然后尝试通过IPv6访问google的地址就算目标达成。

首先我们需要在VPC里启用IPv6,编辑对应的VPC添加IPv6的CIDR地址,可以看到平台自动给我们分配了一个56位子网前缀的VPC地址.

然后我们需要到EC2主机所在子网添加对应的IPv6网络地址,同样的操作方式,给子网添加IPv6 CIDR即可,  可以看到系统在VPC内给我们分配了一个64位子网前缀的子网地址

 接下来我们需要到VPC的路由表里添加对应的IPv6路由记录,告诉VPC内的主机IPv6通信的路径,最下面一条就是我们添加的,到Internet gateway的ipv6路由.

同时,我们还需要到安全组对对应的IPv6通信进行放行.

最后一步就是给EC2实例分配一个用于对外通信的IPv6地址,到管理IP地址界面自动分配一个IPv6地址.

登录主机用ip a命令确认下地址分配qin概况.

我们看到IPv6地址已经分配到位了,  尝试ping6一下google的地址测试下.

Bingo,这个返回值相信大家都不陌生,代表我们的IPv6链路已经可以正常通信了。

但是好奇的宝宝肯定也注意到了,我框出来的地方为什么会有两个IPv6的地址,到底我们用的是哪个呢,下面我们来解析一下.

通过这个traceroute6的输出信息相信大家就能看破其中玄机了,我们可以明显的辨别到数据是从2406:da12:17e:2000:e6ca:b552:5e24:6e1c这个地址出去的。

那么问题来了,另外一个IPv6地址又是怎么回事呢。另一个地址我们称之为本地链路地址(Link-local address),在IPv4中也是有这个概念的,表现形式是169.254.0.0/16,只会在动态地址分配失效时出现,相信大家应该不会模式,DHCPv4获取失效时我们就会看到这个地址,但是在IPv6的规范中,这一地址是强制存在的,用于同一链路上的节点间的通信,如自动配置地址和邻居节点发现。

3. 最后我们再来说一说IPv6 的域名解析

由于 IPv6 的地址长度为 128 位,比 IPv4 的更难书写和记忆,因此IPv6下的DNS解析变得尤为重要。IPv6 的DNS 解析类型为AAAA(又称作 4A),用来将域名名解析为IPv6地址,如下,我先给自己的域名thesouls.fun添加了一个4A记录,解析到0::1(这个其实就是是本地回环地址,等同于于v4的127.0.0.1)

解析生效后我们用ping6对该域名的4A记录进行检测:

Bingo, 至此,我们本次的实践和碎碎念暂时告一段落...

TCP/IP网络是一个很复杂的概念,受限于笔者水平和精力,只能在这里给大家分享一二,如有错漏,欢迎指正。

       如果你对今天的话题有什么思考与解读,欢迎扫描二维码关注“架构之旅”微信公众号,并给我留言,我们一起讨论。如果你觉得有所收获,也欢迎把文章分享给你的朋友。感谢您的支持与关注!

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值