zoukankan      html  css  js  c++  java
  • Linux bind9配置

    Linux下配置DNS服务器:
        域名软件 : bind # berkely internet name domain
    
        bind:
            /etc/named.conf : root : named
            /var/named/ : 工作目录
    
            配置文件:
                /etc/named.conf
                    options { #全局配置
                            directory "/var/named";
                        };
                    zone "." IN {
                            type hint;  #( master -> 住 slave -> 从缓存 foward -> 转发器)
                            file "named.ca"
                        };
                    zone "localhost" IN {
                            type master;
                            file "localhost.zone";
                        };
                    zone "0.0.127.in-addr.arpa" IN {
                            type master;
                            file "named.local";
                        };
    
                    dig -t NS . >> named.ca # 存放在/var/named/目录下
    """
    配置格式:
                宏定义:
                $TTS
                $ORIGIN
                SOA:
                    demo.com.(域) 600(TTS值) IN(关键字) SOA(类型) ns.demo.com.(主DNS服务器域名) admin.demo.com.(邮箱) (
                                2014081201 # 版本号
                                20M # 每隔20分钟检查
                                5M # 访问主DNS 没有相应,再每隔5分钟请求
                                5D # 5天后没有相应宣布失败
                                1D # 没有记录的请求让请求者缓存1day之内不要再过来问了(否定回答)
    
                            )
                NS:
                    demo.com. 600 IN NS ns1.demo.com.
                    demo.com. 600 IN NS ns2.demo.com.
                    ns1.demo.com. 600 IN A 1.1.1.1
                    ns2.demo.com. 600 IN A 1.1.1.2
    
                MX:
                    demo.com. 600 IN MX 10 mail.demo.com.
                    mail.demo.com. 600 IN A 1.1.1.3
    """
    
                    localhost.zone 文件配置(/etc/named/localhost.zone)
                    '''# (与/etc/named.conf localhost对应)
                    $TTS 600
                    localhost. IN SOA localhost. admin.localhost.(
                        2014081201
                        1H
                        10M
                        1W
                        1D
                    )
                        IN NS localhost.
                    localhost. IN A 127.0.0.1
    
                    name.local 文件配置(/etc/named/name.local 反向解析文件)
                    '''
                    $TTS 600
                    @   IN SOA localhost. admin.localhost(
                                2014081201
                                10H
                                10M
                                1w
                                1D
                            )
                    localhost. IN NS localhost.
                    1 IN PTR localhost.
    
                为特殊的域添加DNS解析
                    1.编辑/etc/named.conf文件
                        添加一段
                        zone "demo.com" IN {
                                    type master;
                                    file "/var/named/demo.com.zone";
                                };
                    2.编辑/var/named/demo.com.zone文件
                        $TTS 600
                        $ORIGIN demo.com.
                        @       IN SOA ns admin.demo.com. (
                                    2014081201
                                    1H
                                    10M
                                    1W
                                    1D
                                )
                        @ IN NS ns.demo.com.
                          IN MX 10 mail
                        ns IN A 1.1.1.1
                        mail IN A 1.1.1.2
                        www IN A 1.1.1.3
                        ftp IN A 1.1.1.4
                        imap IN A 1.1.1.3
                        pop IN CNAME mail
                           
                检查配置文件
                    1.named-checkzone "zone"  zone-file
                    2.service named configtest
                    3.dig -t axfr domain.com #返回所有区域传送数据
    
    Client ----> DNS Server
        /etc/resolv.conf
        nameserver SERVER
    
        local cache --> /etc/hosts --> DNS Server (luowen.com)
    
        DNS Server
            1.如果查询请求是本机负责的区域的话,要通过查询区域数据文件返回结果
            2.如果查询请求不是本机负责的区域的话,就查缓存
            3.如果缓存没有,则向根发起请求
    
        DNS类型:
            1.主DNS:(某个区域第一台DNS解析etc:luowen.com)
            2.辅助DNS:(提供与主DNS同样的服务DNS服务器,每个一段时间去主服务器获取最新数据)
            3.hint 根服务
            4.forward 转发服务器
                '''
                    zone 'forward.com' IN{
                            type forward;
                            forwarders { 1.1.1.1;};
                        };
                '''
                转发类型:
                    1.first : 转发机器没搭理,自己去找根
                    2.only : 转发机器没代理,自己啥也不干了
    
        DNS远程控制器: # /etc/bind9/rndc.conf
            rndc:
                1.stop
                2.status
                3.start
                4.reload
                5.freeze
    
        配置rndc :
            1.rndc-confgen >> /etc/bind/rndc.conf # 生成rndc文件,默认没有此文件
            2.将一下段加到naned.conf(完成)
                key "rndc-key" {
                    algorithm hmac-md5;
                    secret "mEhP3esUPzvZZVk1RfUuEg==";
                };
                options { 
                    default-key "rndc-key";
                    default-server 127.0.0.1;
                    default-port 953;
                };
    
                3.rndc常用命令:
                    1.start # 开始服务
                    2.stop  # 停止服务
                    3.reload # 重新加载
                    4.reload zone # 重新加载zone快
                    5.reconfig # 重新加载修改该过的配置
                    6.status # 状态信息 添加统计信息,在named.conf options段添加statstic-file "/var/named/data/stats" ,如需监听指定IP段 添加 listen-on { ip1; ip2; };
                    7.flush #  清空缓存
    
            从DNS服务器配置:
                1.另外一台服务器和当前服务器一样配置:不同处如下:
                        zone '主域服务器zone' IN { 
                                    type slave;
                                    masters { 192.168.1.109; };
                                    file "/var/named/slave/主域服务器.zone";
                                };
                2.allow-transfer { ip; } # 只允许ip主机来主DNS那到数据,定义options段表示所有域,定义在zone段,就表示一个区域生效
                3.访问列表: #定义在options段前
                    acl SLAVES-OUR {
                            127.0.0.1;
                            192.168.1.1;
                            192.168.1.109;
                            }
                    acl SLAVE-CLIENTS {
                                172.168.0.0/16;
                            };
                4.dns递归配置: 
                    1. recursion no 在options段配置,表示所有不递归
                    2. allow-recursion { SLAVE-CLIENT } #定义在client中的地址在本机递归解析
    
            DNS子域授权:
                    1.一级域配置:
                        zone "demo.com" IN {# /etc/name.conf
                                    type master;
                                    file "/var/named/demo.com.zone";
                                };
                        # /var/named/demo.com.zone
                        $TTL 600
                        $ORIGIN demo.com.
                            IN  SOA     ns  admin.(
                                        2014081601
                                        1H
                                        10M
                                        1W
                                        1D
                                    );
                            IN  NS  ns
                        ns  IN  A   xxx.xxx.x.x
                        www IN  A   xxx.x.x.x.
    
                        it   IN  NS  ns.it
                        ns.it   IN  A   yyy.yyy.y.y
                2.二级域配置:
                    zone "it.demo.com" IN { # /etc/it.demo.com
                                type master;
                                file "/var/named/it.demo.zone";
                            };
                            }
                    $TTL 600
                    $ORIGIN it.demo.com.
                    @   IN  SOA  ns    admin. (
                            2014081601
                            1H
                            10M
                            1W
                            1D);
                    @    IN  NS ns
                    ns IN    A   xxx.xx.xx
    
    
        DNS : VIEW (#172.16.xx.解析到172.168.1.1 192.168.xx.xx对应解析到192.158.1.1)
                1.配置:/etc/named.conf
                    acl lnet {
                            172.16.0.0/16;
                            127.0.0.0/8;
                        };
    
                    options {
                            directory "/var/named";
                        };
                    view internet{ #内网访问
                            match-clients { lnet; };
                            recursion yes;
                            zone "." IN {
                                    type hint;
                                    file "/var/named/name.ca";
                                };
                            zone "localhost" IN {
                                    type master;
                                    file "/var/named/localhost.zone";
                                };
                            zone "0.0.127.in-addr.arpa" IN {
                                    type master;
                                    file "/var/named/named.local";
                                };
                            zone "demo.com" IN {
                                    type master;
                                    file "/var/named/demo.com.internet.zone";
                                    allow-transfer { none; };
                                    allow-update { noen; };
                                };
                        };
    
                    view external {
                            match-client { any; };
                            recursion no;
                            zone "demo.com" IN {
                                    type master;
                                    file "/var/named/demo.com.external.zone";
                                    allow-transfer { none; };
                                    allow-recursion { none; };
                                    allow-update { none; };
                                }
                        }
    
                    2.配置 /var/named/demo.com.internet.zone
                        $TTL 600
                        $ORIGIN demo.com.
                            IN  SOA     ns  admin.demo.com.(
                                    2014081701
                                    1H
                                    10M
                                    1W
                                    1D );
                            IN  NS  ns
                        ns  IN  A   172.16.0.254
                        www IN  A   172.16.1.1
    
                       配置/var/named/demo.com.external.zone
                        $TTL 600
                        $ORIGIN demo.com.
                            IN  SOA     ns  admin.demo.com.(
                                    2014081701
                                    1H
                                    10M
                                    1W
                                    1D );
                            IN  NS  ns
                        ns  IN  A   172.16.1.254   ;同一台服务器两块网卡
                        www IN  A   192.168.1.1
    
        编译安装bind:
            1.下载安装包,解压后
                ./configure --sysconfdir=/etc --disable-ipv6 --enable-largefile --enable-thread=no --prefix=/usr/local/named --disable-openssl-version-check --localstatedir=/var
    

      

  • 相关阅读:
    常见的HTTP状态码(HTTP Status Code)说明
    Java基本数据类型和Integer缓存机制
    面向对象的三大基本特征和五大基本原则
    工程变更(ENGINEERING CHANGE)
    反射
    Redis学习手册(开篇)
    MVC,SSM与三层架构的构成及相互关系
    Java框架篇---Mybatis 入门
    java三大框架介绍
    WEB前端JS与UI框架
  • 原文地址:https://www.cnblogs.com/luowen/p/3918321.html
Copyright © 2011-2022 走看看