本篇文章源自《黑客防线》2007年7月刊

转载请注明版权

作者:刘利强 王勇智

===================================

IPv6是新一代的网络协议,它拥有巨大的地址空间、方便的网络即插即用功能、良好的移动性支持、支持更好的服务质量(QOS)、内置安全性等新特性。IPv6是被设计用来取代IPv4协议的下一代网络协议,它的许多新特性也需要域名系统的支持。域名系统(Domain Name System,简称DNS)的主要功能是通过域名和IP地址之间的相互对应关系,来定位网络资源,即根据域名查询IP地址,反之亦然。它是Internet的基础架构,众多的网络服务(如Web,Ftp,Email等)都是建立在DNS服务之上的,并随着网络应用的日益广泛而变得越来越重要。IPv6的许多新特性都和DNS的支持密不可分,因此分析和实现IPv6网络中的DNS系统更加的重要。本文将以Windows Server 2003操作系统为例,说明IPv6域名系统的具体安装过程。

IPv6域名系统

IPv6网络中的域名体系结构与IPv4一样,都是采用倒置的树状层次结构的域名空间。最高层的节点称为根(Root)域,用于解析顶级域。根域以下是顶级子域,它包含第二层域和主机。再以下是第三层、第四层……,依此类推。DNS树上的每一个节点都有一个标识,根节点的标识是“空”,即长度为0,其它节点的标识长度在0~63字节之间,可以包含英文大小写字母、数字和下划线,同一节点的子节点不可以用同样的标识。节点表示整个分布式数据库中的一个域,每个域可进一步划分成子域。节点的域名表明它在整个分布式数据库中的位置,在DNS中,域名是由该节点到根的所经节点的标识从左往右顺序排列而成,标识之间用“.”分隔。以“.”结尾的写法表示一个完整的域名,称绝对域名。

为了使目前的域名系统能正确实现域名到IPv6地址的正向解析,域名系统中增加了两种新的资源记录类型“AAAA”和“A6”。其中,“AAAA”较早提出,它是对“A”记录的简单扩展,由于IP地址由32位扩展到128位,扩大了4倍,所以资源记录由“A”扩大成4个“A”。“AAAA”用来表示域名和IPv6地址的对应关系,并不支持地址的层次性。“A6”在RFC2874中提出,它是把一个IPv6地址与多个“A6”记录建立联系,每个“A6”记录都只包含了IPv6地址的一部分,结合后拼装成一个完整的IPv6地址。“A6”记录支持一些“AAAA”所不具备的新特性,如地址聚合、地址更改(Renumber)等。IPv6反向解析的记录和IPv4一样,是“PTR”,但地址表示形式有两种。一种是用“.”分隔的半字节16进制数字格式(Nibble Format),低位地址在前,高位地址在后,域后缀是“IP6.INT.”。另一种是二进制串(Bit-string)格式,以“\[”开头,16进制地址(无分隔符,高位在前,低位在后)居中,地址后加“]”,域后缀是“IP6.ARPA.”。半字节16进制数字格式与“AAAA”对应,是对IPv4的简单扩展。

IPv6域名服务器的配置

1)安装IPv6协议

在Windows 2003下安装IPv6协议的方法如下。

⑴单击“开始->控制面板”,然后双击“网络连接”。

⑵右击“本地连接”,单击“属性”。

⑶单击“安装”,在“选择网络组件类型”对话框中,单击“协议”,然后单击“添加”。

⑷在“选择网络协议”对话框中,单击“Microsoft TCP/IP 版本6”,然后单击“确定”。

⑸单击“关闭”,保存对网络连接所做的修改。

2)设置IPv6地址

IPv6的使用和配置跟IPv4的窗口设置不一样,它需要在“命令提示符”环境下,用命令行来配置。通过使用Netsh interface ipv6命令,可以手动配置IPv6地址和路由,此命令可使用附加参数,详见在线帮助。

⑴在命令提符下运行“netsh interface ipv6 add address “本地连接” 3ffe:3211::1”,该命令设定服务器静态的IPv6地址为3ffe:3211::1。

⑵运行“netsh interface ipv6 add route 3ffe:3211::/64 “本地连接””,该命令用于设置前缀的路由。

⑶运行“netsh interface ipv6 add route “本地连接” 3ffe:3211::254”,该命令用于设置服务器的默认网关为3ffe:3211::254。

3)安装DNS 服务

单击“开始->管理工具”,然后单击“配置您的服务器向导”,按屏幕上的指示进行操作,安装好DNS服务,并创建好一个允许动态更新的正向查找区域。

4)配置DNS 服务器以便侦听IPv6

⑴安装Windows支持工具。将Windows Server 2003光盘插入到光驱,转到光盘上\W2k3chs\Entrtl\Support\Tools文件夹,双击“Suptools.msi”,再按屏幕上的指示进行操作即可。

⑵在命令提示符下,键入命令:“dnscmd /config /EnableIPv6 1”。

⑶在DNS控制台中,右击计算机名,在“所有任务”菜单中,依次选择“停止”和“启动”命令,重新启动DNS服务器服务。

⑷设置DNS资源记录。在DNS控制台中的正向查找区域中,右击一个已创建好的区域名,在弹出的快捷菜单中选择“其他新记录”,然后选择“IPv6主机(AAAA) ”资源记录类型,再单击“创建记录”按钮,便可以输入主机名和相应的IPv6地址,这样就创建了1条IPv6的DNS资源记录,如图1所示。

客户端的配置

客户机以Windows XP+SP1为操作平台,安装和配置IPv6协议的方法如下。

1)安装IPv6 协议

在命令提符下运行ipv6 install。

2)配置IPv6地址

⑴在命令提符下运行“netsh interface ipv6 add address “本地连接” 3ffe:3211::2”,该命令会设定客户端静态的IPv6地址为3ffe:3211::2。

⑵运行“netsh interface ipv6 add 更多 >