0%

Windows安装DNS Server(Bind9)

记录在windows上安装DNS Server(Bind9)的过程
并且配置自定义域名,和添加子域名

安装

  1. http://ftp.isc.org/isc/bind9/下载最新版本的windows安装包

  2. 点击BINDInstall.exe 安装服务,填下密码,然后一路默认就可以了

  3. 到安装后的目录下执行rndc-confgen.exe -a,在etc目录下会生成rndc.key文件

  4. etc目录设置为named用户可以访问

    右击etc目录 -> 安全 -> 组或用户名增加named用户

  5. etc目录下新建named.conf

    named/named.confview raw
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    options {
    // zone文件的位置
    directory "C:\Program Files\ISC BIND 9\etc";

    // 无法解析的域名就去查询ISP提供的DNS
    // 在下面的IP地址位置上填写ISP的DNS地址

    forwarders {
    // 这里配置其他的DNS,用于本地没有配置的域名转向下面的dns查询
    192.168.100.9;
    192.168.100.8;
    // 8.8.8.8;
    };

    recursion yes;
    dnssec-validation no;
    dnssec-enable no;

    allow-query-cache {
    any;
    };

    // 仅允许本机与192.168.0.0网段内的机器查询
    allow-query { any; };
    // allow-query {
    // 127.0.0.1;
    // 192.168.0.0/24;
    // };
    };

    logging {
    channel default_debug {
    file "log/named.log";
    severity dynamic;
    };
    };

    // 根DNS
    zone "." {
    type hint;
    file "zone/root.zone";
    };
    // localhost
    zone "localhost" IN {
    type master;
    file "zone/localhost.zone";
    allow-update { none; };
    };
    // localhost的反向解析
    zone "0.0.127.in-addr.arpa" {
    type master;
    file "zone/localhost.rev";
    };

    // 自定义域名解析
    zone "example.com" IN {
    type master;
    file "zone/example.com.zone";
    allow-update { none; };
    };

    // 自定义子域名解析
    // 只有example.example.com以及a.example.example.com
    zone "example.example.com" IN {
    type master;
    file "zone/example.example.com.zone";
    allow-update { none; };
    };
  6. ftp://ftp.rs.internic.net/domain/下载named.root,root.zone两个文件,放到/etc/zone目录下

  7. 新建localhost.zone/etc/zone

    named/zone/localhost.zoneview raw
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $TTL 1D 
    @ IN SOA localhost. root.localhost. (
    2007091701 ; Serial
    30800 ; Refresh
    7200 ; Retry
    604800 ; Expire
    300 ) ; Minimum
    IN NS localhost.
    localhost. IN A 127.0.0.1
  8. 新建localhost.rev/etc/zone

    named/zone/localhost.revview raw
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $TTL 1D 
    @ IN SOA localhost. root.localhost. (
    2007091701 ; Serial
    30800 ; Refresh
    7200 ; Retry
    604800 ; Expire
    300 ) ; Minimum
    IN NS localhost.
    1 IN PTR localhost.
  9. 添加自定义域名

    example.com替换成自己的域名即可

    named/zone/example.com.zoneview raw
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    ;; 域名解析
    ;; 用于所有的子域名都使用本文件解析

    $TTL 1D
    @ IN SOA ns1.example.com. root.example.com. (
    2007091701 ; Serial
    30800 ; Refresh
    7200 ; Retry
    604800 ; Expire
    300 ) ; Minimum
    IN NS ns1.example.com

    ; A记录
    ns1 IN A 192.168.50.100 ; ns1.example.com
    @ IN A 192.168.50.100 ; example.com
    e IN A 127.0.0.1 ; e.example.com
    a.b IN A 127.0.0.1 ; a.b.example.com
    * IN A 127.0.0.1 ; xxxx.example.com
  10. 添加自定义子域名

    example.example.com替换成自己的子域名即可

    named/zone/example.example.com.zoneview raw
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    ;; 子域名解析
    ;; 只解析该子域名,其他的子域名走其他的渠道

    $TTL 1D
    @ IN SOA ns1.example.example.com. ns2.example.example.com. (
    2007091701 ; Serial
    30800 ; Refresh
    7200 ; Retry
    604800 ; Expire
    300 ) ; Minimum
    IN NS ns1
    ns1 IN A 192.168.50.100 ; ns1.example.example.com
    @ IN A 192.168.50.100 ; example.example.com
  11. 使用net stop named, net start named停止/启动服务

参考文档

  1. [http://www.yinxi.net/doc/show.php?DocID=10275]