Chinaunix首页 | 论坛 | 博客
  • 博客访问: 623117
  • 博文数量: 142
  • 博客积分: 116
  • 博客等级: 入伍新兵
  • 技术积分: 1445
  • 用 户 组: 普通用户
  • 注册时间: 2010-09-28 08:37
文章分类

全部博文(142)

文章存档

2017年(7)

2016年(57)

2015年(48)

2014年(30)

我的朋友

分类: LINUX

2015-02-12 11:26:33

安装

yum install bind
yum install bind-utils

配置

修改/etc/named.conf

  1. options {
            listen-on port 53 { ANY; };       // 默认监听l?   在bind9上,注释掉这一行,也监听any。 不能写成0.0.0.0
            allow-query     { ANY; };         // 允许查询
            allow-transfer { none; };         // 禁止区域传输

    zone "example.com" IN {                   // 追加区域。可参考/usr/share/doc/bind-*/sample/var/named/
            type master;
            file "named.example.com";
            allow-update { none; };           // 可以考虑允许
    };

    //zone "80.168.192.in-addr.arpa" IN {
    //      type master;
    //      file "named.80.168.192.in-addr.arpa";
    //      allow-update { none; };
    //};

/var/named/named.example.com
  1. $TTL 3H
  2. @ IN SOA @ admin.example.com. (
  3.          1 ; serial // 更新区数据后要增加serial
  4.          1D ; refresh
  5.          1H ; retry
  6.          1W ; expire
  7.          3H ) ; minimum
  8.     MX 100 mail
  9.     NS dns
  10. mail A 192.168.80.101
  11. dns A 192.168.80.101
  12. host101 CNAME dns
  13. host128 A 192.168.80.128
注意/var/named的权限,应该给named用户写权限。

启动停止 控制


首先配置rndc key,否则初次启动named时会卡在“Generating /etc/rndc.key:”。
rndc-confgen -a -k myrndckey -r /dev/urandom
默认为输出到stdout。-a选项可以直接生成rndc.conf并更新named.conf。

/etc/named.conf

  1. controls {
  2.      inet 127.0.0.1 port 953
  3.      allow { 127.0.0.1; } keys { "rndc-key"; };
  4. };
  5. include "/etc/rndc.key";
/etc/rndc.conf

  1. key "rndc-key" {
  2. algorithm hmac-md5;
  3. secret "FuZuP6WGv8cIlZ0TwlPsfg==";
  4. };
  5. options {
  6. default-key "rndc-key";
  7. default-server 127.0.0.1;
  8. default-port 953;
  9. };

/etc/rndc.key
  1. key "rndc-key" {
  2. algorithm hmac-md5;
  3. secret "FuZuP6WGv8cIlZ0TwlPsfg==";
  4. };
需要给named用户读权限



/etc/init.d/named {start|stop|status|restart|try-restart|reload|force-reload}
rndc { status | stop | reload | dump | ... }


linux客户机配置dns解析器

在/etc/reslov.conf中设置nameserver。
此文件可能会自动生成和更新,真正的配置在ifcfg-eth0中。
DNS1=192.168.80.101
另外,/etc/nssiwtch.conf中规定了名字查询方法的顺序。默认为/etc/hosts->dns
hosts:      files dns



高级主题

  地址匹配列表和ACL

  DNS 动态更新nsupdate
  1. # cat NSUPDate_script.txt
  2. server 127.0.0.1
  3. prereq yxdomain test.example.com
  4. update delete test.example.com A
  5. update add test.example.com 300 A 192.168.80.120
  6. send
  7. # nsupdate NSUPDate_script.txt

  DNS 安全扩展(DNSSEC)


常用命令

nslookup
  nslookup 一次仅与一个名字服务器会话。这是nslookup 与解析器(resolver)在行为表现方式上的最大区别。
dig
whois
h2n  用Perl写的一个主机表/etc/hosts到主文件的转换器。



补充一些概念


名字到地址的查找有时称为正向映射(forward mapping),
而地址到名字的查找称为反向映射(reverse mapping)(in-addr.arpa区)。

DNS查找不区分大小写

注释   区数据文件注释是以分号开头的,到行尾处结束。
       bind配置文件可以使用三种风格的注释:C 语言风格、C ++风格和shell风格


SOA 记录      指示该区的权威
                    每个db.DOMAIN 和db.ADDR 文件都要有SOA 记录。
                    每个区数据文件中允许有一个也只允许有一个SOA 记录。

   正向映射   example.com.               IN SOA maindns.example.com. admin.example.com.
   反向映射   249.249.192.in-addr.arpa.  IN SOA maindns.example.com. admin.example.com.

                   IN 表示Internet。

NS 记录       列出该区的一个名字服务器
   正向映射   example.com.  IN NS  maindns.example.com.
              example.com.  IN NS  dns2.example.com.
   反向映射   1.249.249.192.in-addr.arpa. IN NS maindns.example.com.

MX 记录       邮件交换器(mail exchanger)
              为了避免邮件路由循环,在MX记录中除了邮件交换器的域名之外,另外还有一个
              参数:优先级值。优先级值是一个无符号的16 位整数(在0 和65535 之间),用来
              指示邮件交换器的优先级。
              如果向优先级最高的邮件交换器发送失败,邮件收发器会试着向优先级低一点的邮
              件交换器(它们的优先级值要大一点)发送。

              oreilly.com. IN MX 0 ora.oreilly.com.
              oreilly.com. IN MX 10 ruby.oreilly.com.

              (与其他不同的是,IN前面不是主机名。
                与SOA,NS连写时可以省略IN前面的域名)
A记录             名字到地址的映射
              maindns.example.com. IN A 192.249.249.1
              A 代表地址(address)

PTR记录           地址到名字的映射
              1.249.249.192.in-addr.arpa. IN PTR maindns.example.com.

CNAME         规范名字(相对于别名而言)
              CNAME(canonical name,规范名)


缩写
    zone 语句(BIND 8 和9)的第二个字段指定了一个域名。
    这个域名对最常使用的缩写来说是关键。
    这个域名是区数据文件中所有数据的起点(origin)。
    这个起点会被附加到所有区数据文件中不以“.”结尾的名字后面。

              maindns.example.com. IN A 192.249.249.1
              1.249.249.192.in-addr.arpa. IN PTR maindns.example.com.
     缩写     maindns              IN A 192.249.249.1
              1                    IN PTR maindns.example.com.

    如果一个域名和起点相同,那么这个名字就可以写成“@”
    @ IN SOA terminator.movie.edu. al.robocop.movie.edu.

    如果一个资源记录名(从第一列开始)是一个空格或者制表符,那么就沿用上一个记录的名字。
    wormhole IN A 192.249.249.1
             IN A 192.253.253.1

阅读(1303) | 评论(0) | 转发(0) |
0

上一篇:安装nginx

下一篇:samba配置笔记

给主人留下些什么吧!~~