在Windows下配置BIND 9.8.0-P1的DNS64服务

DNS64简介:

2011年4月份,IETF正式发布DNS64、NAT64等相关的RFC文档规范,NAT64与DNS64是一套解决方案,实现是IPv6网络过渡初期的协议转换与互访,使纯IPv6网络下的用户直接访问现有IPv4 Internet资源,而不修改两端的任何配置。

基本原理可以参考:
NAT64与DNS64基本原理概述

DNS64的详细原理可以参考
RFC 6147:DNS64: DNS Extensions for Network Address Translation from IPv6 Clients to IPv4 Servers

本文主要描述BIND下的DNS64功能在Windows环境下的安装,不涉及具体的协议原理介绍。

BIND 9.8.0-P1支持DNS64的相关功能和说明可参考:
ISC发布BIND 9.8.0-P1版本支持DNS64特性

安装环境说明:

本文主要是验证BIND 9.8.0-P1下的DNS64基本功能,配合NAT64设备实现纯IPv6网络下访问IPv4 Internet,不作为正式生产服务器环境,仅供功能测试或协议学习,因此直接采用个人PC下的Windows操作系统安装,正式服务器建议采用Linux或FreeBSD等操作系统安装。

目前验证BIND 9.8.0-P1的Windows版本支持在Windows XP、2003、Windows 7等32位的操作系统下安装,
在Windows 7 x64的环境下安装失败

因涉及权限设置相关的问题,一般需使用NTFS分区,Windows XP环境下需取消【简单文件功能】功能,以进行相应的权限设置。

以下安装过程以Windows 7为例,XP与2003类似(需确认已安装IPv6协议栈)。

安装步骤:

1.从ISC网站下载BIND

下载地址:


Download ISC Software

请登录ISC官方网站下载对应的Linux、Unix版本或Windows版本,保证源码及安装包的安全性。

2.解压缩BIND9.8.0-P1.zip

3.运行BINDInstall.exe文件

Windows 7下安装需要管理员权限

4.安装选项设置

如下图所示,一般建议安装默认目录,并保持默认named用户名即可,同时强烈建议设置named用户的密码,开机自动运行可根据个人环境选择

设置完毕后点击Insatall执行安装,安装过程会自动安装VC2005运行库,然后安装BIND相关的组件和服务

5.BIND产生的用户和服务

本步骤仅供参考,一般无需执行,清楚安装程序对系统执行的修改。

生成Windows系统下的用户named:

以上截图为英文Windows 7,中文操作系统对应:计算机管理—-本地用户和组—用户

生成的服务名称,如果取消了自动运行,可以手工在这里启动,或通过命令行执行:

以上截图为英文Windows 7,中文操作系统对应:计算机管理—-服务

6.设置目录权限[非常重要]

以默认安装目录C:\Windows\System32\dns及named用户为例:

windows 7下的的设置如下:

本文中直接添加named用户对为C:\Windows\System32\dns\目录及该目录下的文件完全控制:

bind服务运行时至少需要在该目录读、写文件的权限。

7.生成rndc.key文件

rndc是named的管理工具,该程序与named进程之间需使用相同的key文件,如果没有该key文件则rndc及相关的命令将无法执行

key文件使用rndc-confgen.exe文件生成,在安装目录的bin文件夹下执行,同时Windows 7下必须以管理员权限执行cmd.exe:

bind及相应的各种exe文件在安装目录的bin下,而各种配置文件则保存在安装目录的etc下。

8.添加named.conf文件

默认安装是没有任何配置文件的,需要手工在etc目录下建立named.conf文件,Windows 7下可以管理员权限执行记事本(notepad.exe)或其它文本编辑器,向该目录写入文件,或在其它目录建立named.conf文件,然后复制至该目录。

named.conf文件的选项内容如下:

  1. include “c:\Windows\System32\dns\etc\rndc.key”;
  2. options  {
  3.     listen-on-v6 {any;};
  4.     allow-query {any;};
  5.     forwarders {8.8.8.8;};
  6.     forward   only;
  7.     dns64 64:ff9b::/96 {
  8.                 clients { any; };
  9.                 mapped { any; };
  10.                 exclude { 64:ff9b::/96; ::ffff:0000:0000/96; };
  11.                 suffix ::;
  12.                 };
  13.     dns64-server “www.ipv6s.com”;
  14.     dns64-contact “www.ipv6s.com”;
  15.   
  16. };

复制代码 说明:仅使用forward功能将查询转发至Google Public DNS进行解析,并设置DNS64的前缀为知名前缀64:ff9b::/96。

BIND支持同时设置多个前缀,支持的前缀长度按RFC 6052中定义的:32, 40, 48, 56, 64, 96等

如果不使用Google的Public DNS,而直接自行尝试解析,则可使用如下的named.conf文件

  1. include “c:\Windows\System32\dns\etc\rndc.key”;
  2. options  {
  3.     listen-on-v6 {any;};
  4.     allow-query {any;};
  5.     dns64 64:ff9b::/96 {
  6.                 clients { any; };
  7.                 mapped { any; };
  8.                 exclude { 64:ff9b::/96; ::ffff:0000:0000/96; };
  9.                 suffix ::;
  10.                 };
  11.     dns64 2001:db8:1:1::/64 {
  12.                 clients { any; };
  13.                 mapped { any; };
  14.                 exclude { 2001:db8:1:1::/96; ::ffff:0000:0000/96; };
  15.                 suffix ::;
  16.                 };
  17.     dns64-server “www.ipv6s.com”;
  18.     dns64-contact “www.ipv6s.com”;
  19.   
  20. };
  21. zone . {
  22.   type hint;
  23.   file “c:\Windows\System32\dns\etc\named.root”;
  24. };

复制代码 以上配置中使用了二个IPv6前缀,所有查询返回的A记录中都将同时使用这二个前缀合成AAAA记录,并返回给IPv6 Client

而named.root文件则是全球13台DNS根服务器的地址,可在IANA网站下载,并保存至c:\Windows\System32\dns\etc\文件夹下


IANA Popular and Important Links中对应的:


DNS Root Zone — Hints File(直接使用目标另存为来保存该文件)

原创文章,作者:admin,如若转载,请注明出处:https://www.ipv6s.com/basis/conversion/20110518434.html

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注