DNS服务简介和配置

什么是DNS

DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53。
DNS在进行区域传输的时候使用TCP协议,其它时候则使用UDP协议;

域名解析一般分为:正向解析和反向解析
正向解析:域名 ——》ip
反向解析:ip ——》 域名
还有一个递归查询的解析,对于提供互联网域名解析的互联网服务商,无论从性能上,还是从安全上来说,都不可能只有一台DNS服务器,而是由一台或者两台根DNS服务器(两台根DNS服务器通常是镜像关系),然后再在下面配置了多台子DNS服务器来均衡负载的(各子DNS服务器都是从根DNS服务器中复制查询信息的),根DNS服务器一般不接受用户的直接查询,只接受子DNS服务器的递归查询,以确保整个域名服务器系统的可用性。

DNS服务的工作过程

这里写图片描述

如果本地DNS服务器本地区域文件与缓存解析都失效,则根据本地DNS服务器的设置(是否设置转发器)进行查询,如果未用转发模式,本地DNS就把请求发至13台根DNS,根DNS服务器收到请求后会判断这个域名(.com)是谁来授权管理,并会返回一个负责该顶级域名服务器的一个IP。本地DNS服务器收到IP信息后,将会联系负责.com域的这台服务器。这台负责.com域的服务器收到请求后,如果自己无法解析,它就会找一个管理.com域的下一级DNS服务器地址(qq.com)给本地DNS服务器。
如果用的是转发模式,此DNS服务器就会把请求转发至上一级DNS服务器,由上一级服务器进行解析,上一级服务器如果不能解析,或找根DNS或把转请求转至上上级,以此循环。不管是本地DNS服务器用是是转发,还是根提示,最后都是把结果返回给本地DNS服务器,由此DNS服务器再返回给客户机。

从客户端到本地DNS服务器是属于递归查询,而DNS服务器之间就是的交互查询就是迭代查询。

DNS服务器配置

一 安装

#yum install -y bind*

二 配置

主配置文件 /etc/named.conf
zone配置文件 /var/named
安装了bind-chroot,为了安全bind安装将到一个伪根目录内,
主配置文件 /var/named/chroot/etc/named.conf
zone配置文件 /var/named/chroot/var/named

  1. 拷贝实例文件

    #cp -rv /usr/share/doc/bind-*/sample/etc/* /var/named/chroot/etc/
    #cp -rv /usr/share/doc/bind-*/sample/var/named/* /var/named/chroot/var/named/

  2. 配置主配置文件(最简配置)

    #vim /var/named/chroot/etc/named.conf

options
{
    // Put files that named is allowed to write in the data/ directory:
    directory       "/var/named";       // "Working" directory
    listen-on port 53   { 127.0.0.1; };  //监听ip和端口,所以则改为any;
    listen-on-v6 port 53    { ::1; };
};
    zone "example.com" {   //正向解析
        type master;   //主服务器
        file "example.com.zone";   //具体配置文件位置
    };
    zone "173.168.192.inaddr.arpa" {  //反向解析
        type master;
        file "192.168.173.zone";    
    };

type:
master:表示定义的是主域名服务器
slave :表示定义的是辅助域名服务器
hint:表示是互联网中根域名服务器

3.zone配置
1) 正向解析

#cp named.localhost example.com.zone
#vim example.com.zone

$TTL 3H
@   IN SOA  @ rname.invalid. (
                    0   ; serial
                    1D  ; refresh
                    1H  ; retry
                    1W  ; expire
                    3H )    ; minimum
    NS  @
    A   127.0.0.1
    AAAA    ::1
        IN  MX  mail.example.com.
mail    IN  A   192.168.173.140
www IN  A   192.168.173.127

2)反向解析

# cp named.loopback 192.168.173.zone
#vim 192.168.173.zone

$TTL 1D
@   IN SOA  @ rname.invalid. (
                    0   ; serial
                    1D  ; refresh
                    1H  ; retry
                    1W  ; expire
                    3H )    ; minimum
    NS  @
    A   127.0.0.1
    AAAA    ::1
127 IN  PTR www.example.com.
140 IN  PTR mail.example.com.

4.让本机指向配置好的dns服务器

#vim /etc/resolv.conf

nameserver 127.0.0.1

5.权限

#setenforce 0
#service iptables stop
#chown -R named:named /var/named/chroot/
还要至少保证配置文件最小有可读权限

三 测试

判断有语法错误

#named-checkconf /var/named/chroot/etc/named.conf
#named-checkzone example.com example.com.zone

重启服务

#service named start

重载配置

#service named reload

用host或dig验证dns配置

#host example.com
#dig -t mx example.com

有关邮件的反向解析还不是很清楚,可能配置有误~~后期会继续研究
要了解DNS配置的具体参数可以看一下http://yuanbin.blog.51cto.com/363003/108627

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值