DNS服务器配置

DNS服务器 

应用到的软件bind

递归查询:一般客户机和服务器之间属于递归查询,即当客户机向DNS服务器发出请求,若DNS不能解析,则会向其他的DNS服务器发出查询请求,得到查询结果后转交给客户机。

迭代查询:一般DNS服务器之间属于迭代查询

 

阶层式管理主机名对应IP的系统,称为Berkeley Internet Name Domain (BIND)

域名系统(Domain Name System,DNS)

DNS是一种因特网通信协议名称,BIND则是提供DNS服务的软件。

域名系统服务器(named)

域名系统解析库

域名系统服务器调试程序

 

区分domain name 和host name

例如www.junxi.com  www是主机名,junxi.com 是域名,也可以将ftp 服务器,mail服务器集成在一台linux主机上。

 

在整个DNS服务器最上方一定是  .  (小数点)这个DNS服务器(称为root),有.com、.edu、.org、.net这种特殊区域,以及以国家为分类的第二层主机名,这两者称为Top Level Domains(TLDs)。

 

通过DNS查询主机名IP的流程

由于DNS是以树形目录的形态进行主机名管理,所以每一台DNS服务器都仅管理自己的下一层主机名的转译,当在浏览器输入http://www.ksu.edu.tw,在linux下面利用/etc/resolv.conf所提供的DNS的IP进行连接查询。

1.收到用户查询请求,查看本身有无记录,若无就向.(root)查询

2.向最顶层.(root)查询

3.向第二层 .tw 服务器查询

4.向第三层 .edu.tw 服务器查询

5.向第四层 .ksu.edu.tw服务器查询

6.记录缓存并反馈给用户

 

DNS使用53端口

通常DNS是以UDP这个较快的数据传输协议来查看,但是万一没有办法查看完整的信息,就会再次以TCP这个协议来重新查询。

所以启动DNS的daemon(守护进程)的时候,会同时启动TCP和UDP的port53,所以防火墙也要同时放行TCP.UDP port53。

 

DNS 中记录的信息一个是服务器所在的NS(Name Server)标志,另一个是记录主机名对应的A(Address)标志。

 

DNS数据库的记录:正解、反解、Zone的意义

从主机名查询到IP的流程:正解

从IP泛解析到主机名的流程:反解

不管是正解还是反解,每个域的记录就是一个区域(zone)

注意每一台DNS服务器可以管理多个区域,不管是正解还是反解

 

正解的设置权限以及DNS正解Zone记录的标志

1.SOA:就是开始验证(Start of Authority(授权))的缩写

2.NS:就是名称服务器(Name Server)的缩写,后面记录的数据是DNS服务器

3.A:就是地址,后面对应的是IP

 

反解Zone : PTR(PoinTeR)的缩写,后面记录的是反解到的主机名

 

主机名对应IP的方法有两种

1.早期写入/etc/hosts,这个是最早的Hostname对应的IP的文件

2./etc/resolv.conf,就是ISP的DNS记录处

3./etc/nsswitch.conf 决定使用/etc/hosts 还是/etc/resolv.conf

 

DNS服务器IP的值可以设置多个,因为当第一台DNS宕机时,客户端可以使用第二台。

 

DNS的正解、反解查询命令 :host .nslookup.dig

host is a simple utility/实用/ for performing DNS lookups.

host www.junxi.com 列出主机IP

host -a www.junxi.com 列出该主机所有的相关信息,包括IP ,TTL 与排错信息

host -l www.junxi.com  如果www.junxi.com允许allow-transfer ,则列出该domain 所管理的所有主机名对应的数据              

nslookup 

1.可以直接在nslookup后面加待查询的主机名,或者IP,[server]可有可无

2.如果在nslookup 后面没有加上任何主机名或者IP,则进入nslookup 的查询功能,在nslookup的查询功能中,可以输入set type=any ;set type=mx 进行特殊查询

dig [options] FQDN [@server]

首先FQDN 是Fully Qualified Domain Name 即完整的域名,例如一台主机的hostname 是www,域后缀domain name 是example.com ,那么主机的FQDN应该是www.example.com

@server 如果不以/etc/resolv.conf 的设置作为DNS查询,可以在此处填入其他IP

+trace :就是从 . 开始追踪

-t type :查询的数据主要有MX,NS,SOA

-x         :查询反解信息

dig www.junxi.com

QUESTION(问题):显示所要查询的内容(A Address)

ANSWER(回答)  : 依据刚刚的QUESTION去查询所得到的结果,回答为IP

AUTHORITY(验证):可以知道www.junxi.com是哪台DNS服务器所提供的答案           

 

 

 

 

 

实验步骤:

1.更改配置文件/etc/named.conf 改为any

listen-on port 53 { any; };
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        allow-query     { any; };
        recursion yes;

2. 在/etc/named.rfc1912.zones 添加正向方向zone

zone "junxi.com" IN {
        type master;
        file "junxi.com.zone";
};
zone "200.168.192.in-addr.arpa" IN {
        type master;
        file "junxi.com";
};
3.复制local文件到junxi.com.zone ,反向写入junxi.com

/var/named

编辑junxi.com.zone

       NS      @
        A       192.168.200.50
www     A       192.168.200.50
ftp     A       192.168.200.50
mail    A       192.168.200.50
@       MX    10     mail
www2    CNAME   www

编辑junxi.com

NS      @
        A       192.168.200.50
        PTR     junxi.com.
50      PTR     www.junxi.com.
50      PTR     ftp.junxi.com.
50      PTR     mail.junxi.com.(注意最后有个.代表根)

 4.将组root 换为named                           

chown root:named junxi.com.zone

chown root:named junxi.com

 5.启动apache

/etc/init.d/httpd start

在apache的家目录/var/www下面建立/html/index.html

 

编辑/etc/sysconfig/network-scripts/ifcfg-br0中写入

DNS1=192.168.200.50

然后/etc/init.d/network  force-reload

这样 host -t a www.junxi.com 解析为本机作为服务器IP

 

 

 添加windows2003组件IIS,新建站点

 在windows2003中默认站点停止,新建站点,写入IP,选择目录,

要是分离用户文件夹,建立public 建立对应用户的文件,添加用户,在计算机管理->用户,

新建站点,隔离用户,文件夹右击属性给不同用户不同权限,2014-07-2310:04:28

cache-only DNS Server

配置 /etc/named.conf

注意: 注释数据放在两条斜线“//”后面接的数据

每个段落结尾都需要“;”作为结尾

默认listen-on port 53 { 127.0.0.1; };监听这台主机上面的哪个网络接口

listen-on port 53 { any; };
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { any; };
recursion yes;

 

清除DNS缓存 windows ipconfig/flushdns

linux 是用DNS缓存程序NSCD(name service cache daemon)负责管理DNS缓存  /etc/init.d/nscd restart

 

 

配置辅助DNS服务器

 

辅助DNS是从主DNS复制来的,安装bind.x86_64

listen-on port 53 { any; };
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { any; };
recursion yes;

然后编辑

vi /etc/named/named.frc1912.zones

zone "junxi.com" IN {
    type slave;
    file "slaves/junxi.com.zone";
    masters { 192.168.200.50; };
};

只要启动辅助DNS区域配置文件就会从主DNS服务器复制过来到/var/named/slaves 中junxi.com.zone

修改IP 中DNS1=指主DNS,重启

 

DNS 轮询

vim /var/named.junxi.com.zone

一个域名两个IP(失败)

需要在主DNS服务器/var/named/junxi.com.zone中

    A    192.168.200.50
www    0 A    192.168.200.50
            0 A    192.168.200.56
ftp          A    192.168.200.50
mail        A    192.168.200.50
@    MX    10     mail
www2    CNAME   www
vim /var/www/html/index.html

curl 命令模式下的浏览器curl www.junxi.com

ping www.junxi.com

windows  ipconfig /flushdns

vim /var/named/junxi.com.zone 把缓存屏掉,纯轮询

 

14:41:35

排错工具named-checkconf /etc/named.rfc1912.zones

              named-checkzone junxi.com

RNDC +SSH加密

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

                                                                                                                                                                                                                                                                                 

 


你可能感兴趣的:(linux,服务器,domain,internet,因特网)