互联网的根域名服务器已经经过改进同时支持IPv6和IPv4。所以,不需要为IPv6域名解析单独建立一套独立的域名系统,IPv6的域名系统可以和传统的IPv4域名系统结合在一起。现在Internet上最通用的域名服务软件BIND已经实现了对IPv6地址的支持,所以IPv6地址和主机名之间的映射就很容易解决了。

  要支持IPv6域名解析服务系统需要支持以下的新特性:

  解析IPv6地址的类型(type ),即AAAA和A6类型为IPv6地址的逆向解析提供的反向域,即ip6.int.识别上述新特性的域名服务器就可以为IPv6的地址-名字解析提供服务。

  (1)正向IPv6域名解析

  IPv4的地址正向解析的资源记录是"A",而IPv6域名解析的正向解析目前有两种资源记录,即"AAAA"和"A6"记录。其中"AAAA"较早提出,它是对IPv4协议"A""录的简单扩展,由于IP地址由32位扩展到128位,扩大了4倍,所以资源记录由"A"扩大成4个"A"。但"AAAA"用来表示域名和IPv6地址的对应关系,并不支持地址的层次性。

  AAAA资源记录类型用来将一个合法域名解析为IPv6地址,与IPv4所用的A资源记录类型相兼容。之所以给这新资源记录类型取名为AAAA,是因为128位的IPv6地址正好是32位IPv4地址的四倍,下面是一条AAAA资源记录实例:

  host1.microsoft.comINAAAAFEC0::2AA:FF:FE3F:2A1C

  "A6"是在RFC2874基础上提出,它是把一个IPv6地址与多个"A6"记录建立联系,每个"A6"记录都只包含了IPv6地址的一部分,结合后拼装成一个完整的IPv6地址。"A6"记录支持一些"AAAA"所不具备的新特性,如地址聚集,地址更改(Renumber)等。

  "A6"记录根据可聚集全局单播地址中的TLA、NLA和SLA项目的分配层次把128位的IPv6的地址分解成为若干级的地址前缀和地址后缀,构成了一个地址链。每个地址前缀和地址后缀都是地址链上的一环,一个完整的地址链就组成一个IPv6地址。这种思想符合IPv6地址的层次结构,从而支持地址聚集。

  同时,用户在改变ISP时,要随ISP改变而改变其拥有的IPv6地址。如果手工修改用户子网中所有在DNS中注册的地址,是一件非常繁琐的事情。而在用"A6"记录表示的地址链中,只要改变地址前缀对应的ISP名字即可,可以大大减少DNS中资源记录的修改。并且在地址分配层次中越靠近底层,所需要改动的越少。

  (2)反向IPv6域名解析

  IPv6域名解析的反向解析的记录和IPv4一样,是"PTR",但地址表示形式有两种。一种是用"."分隔的半字节16进制数字格式(NibbleFormat),低位地址在前,高位地址在后,域后缀是"IP6.INT."。另一种是二进制串(Bit-string)格式,以"\["开头,16进制地址(无分隔符,高位在前,低位在后)居中,地址后加"]",域后缀是"IP6.ARPA."。半字节16进制数字格式与"AAAA"对应,是对IPv4的简单扩展。二进制串格式与"A6"记录对应,地址也象"A6"一样,可以分成多级地址链表示,每一级的授权用"DNAME"记录。和"A6"一样,二进制串格式也支持地址层次特性。

  IP6.INT域用于为IPv6提供逆向地址到主机名解析服务。逆向检索也称为指针检索,根据IP地址来确定主机名。为了给逆向检索创建名字空间,在IP6.INT域中,IPv6地址中所有的32位十六进制数字都逆序分隔表示。例如,为地址FEC0::2AA:FF:FE3F:2A1C(完全表达式为:FEC0:0000:0000:0000:02AA:00FF:FE3F:2A1C)查找域名时,在IP6.INT域中是:C.1.A.2.F.3.E.F.F.F.0.0.A.A.2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.C.E.F.IP6.INT.

  总之,以地址链形式表示的IPv6地址体现了地址的层次性,支持地址聚集和地址更改。但是,由于一次完整的地址解析要分成多个步骤进行,需要按照地址的分配层次关系到不同的DNS服务器进行查询,并且所有的查询都成功才能得到完整的解析结果。这势必会延长解析时间,出错的机会也增加。因此,在技术方面IPv6协议需要进一步改进DNS地址链功能,提高IPv6域名解析的速度才能为用户提供理想的服务。

转载于:https://blog.51cto.com/tangzb/439082

IPv6域名解析服务基础相关推荐

  1. 运维之DNS域名解析服务基础概念与Bind9安装

    ​0x00 前言简述 基础概念 基础术语 记录类型 0x01 DNS服务介绍 原理流程 实验目标 0x02 DNS服务之Bind9 Ubuntu 安装 CentOS 安装 Docker 容器 1) 源 ...

  2. 基础通用版IPv6转换服务使用说明及设置示例

    首先购买IPv6转换服务 将域名解析到IPv6地址 注意IPv6的解析类型是AAAA记录 添加IPv6规则 前提在服务器上绑定了该域名,并且指向IPv4地址可以正常访问,网站默认是80端口 测试IPv ...

  3. DNS域名解析服务(正向解析)

    DNS域名解析服务 文章目录 DNS域名解析服务 BIND域名服务基础 DNS系统的作用 DNS的定义: 域名的结构 DNS服务器类型: DNS解析查询方式 BIND软件安装 构建DNS域名解析服务器 ...

  4. Linux--DNS 域名解析服务(理论+正向解析)

    文章目录 前言 一.BIND 域名服务基础 1.DNS 系统的作用 ①DNS系统的作用 ② DNS 系统的分布式数据结构 2.DNS服务器类型 二.正向解析和反向解析 1.正向解析查询过程 2.两种查 ...

  5. k8s kubernetes 核心组件 CoreDNS 域名解析服务 学习总结

    k8s kubernetes 核心组件 CoreDNS 域名解析服务 学习总结 大纲 基础概念 CoreDNS下载与安装 DNS资源记录配置说明 CoreDNS配置文件Corefile语法总结 Cor ...

  6. 在linux下dns绑定域名,在Linux系统中,使用Bind搭建DNS域名解析服务

    DNS域名解析服务(DomainNameSystem)是用于解析域名与IP地址对应关系的服务作用为维护着一个地址数据库,记录着各种主机域名与IP地址的对应关系,以便为客户提供正向或反向的地址查询服务, ...

  7. IPv6转换服务正式发布

    摘要: IPv6时代已来,阿里云IPv6转换服务帮忙您使现有IPv4业务快速提供IPv6访问能力 什么是IPv6转换服务 IPv6转换服务(IPv6 Translation Service)是阿里云提 ...

  8. DDNS-动态域名解析服务

    随着个人用户宽带上网的普及,越来越多的网民开始在自己的电脑上架设服务器和主页空间,这个完全属于自己的网络个人家园将没有免费主页中的广告骚扰,没有虚拟主机的空间和功能限制,也无须支付主机托管的高昂费用. ...

  9. Linux网络——DNS域名解析服务

    DNS域名解析 一.DNS域名系统 1.1 DNS作用 1.2 DNS系统的类型 1)主域名服务器: 2)从域名服务器: DNS系统的分布式数据结构: 1.3 DNS系统的查询方式 二.DNS的域名结 ...

最新文章

  1. mysql主从结构主数据库_mysql主从结构主数据库
  2. helm部署仓库中没有的包_Kubernetes的Helm软件包管理器简介
  3. 华科提出目标检测新方法:基于IoU-aware的定位改进,简单又有效
  4. IOS报错:Unexpected ‘@’ in program
  5. FPGA大数据之我认为的明天
  6. ZJOI2019游记
  7. Coding Interview Guide -- 向有序的环形单链表中插入新节点
  8. Java字节流和字符流区别
  9. [未完成]scikit-learn一般实例之九:用于随机投影嵌入的Johnson–Lindenstrauss lemma边界...
  10. pythonATM,购物车项目实战_补充2-模块功能
  11. 使用nginx负载均衡的webservice wsdl访问不到_Nginx 反向代理、负载均衡图文教程,写得太好了!...
  12. smart原则_写给中学生:用SMART原则制定寒假计划
  13. android usb触摸驱动,Linux/Android——usb触摸屏驱动 - usbtouchscreen
  14. 关键成功因素法(CrISical Success Factors,CSF)
  15. libvlc 裁剪及编译
  16. 关于Windows7系统不能访问XP创建的DVD的问题
  17. 小勇机器人如何绑定_‎App Store 上的“小勇机器人”
  18. 整数幂C语言1005,zzuli1005: 整数幂 - 菜鸟头头
  19. 人生无捷径「一万小时定律·正篇」
  20. fluent p1模型_FLUENT中的辐射模型

热门文章

  1. 如何把安全证书导入到java中的cacerts证书库(转)
  2. HDU 4635 Strongly connected
  3. Intersection - POJ 1410(线段与矩形是否相交)
  4. [hdu5270]按位统计,容斥,归并
  5. Oracle Library Cache 的 lock 与 pin 说明
  6. Java编程初学者应该了解的编程框架
  7. 【转载】C#中List集合使用Contains方法判断是否包含某个对象
  8. 【python】入门指南:控制语句
  9. BZOJ 2179 [快速傅里叶变换 高精度乘法]
  10. modbus3-关于Modicon Modbus Protocol和modscan32