码迷,mamicode.com
首页 > 其他好文 > 详细

DNS 域名服务器

时间:2015-09-15 16:39:46      阅读:324      评论:0      收藏:0      [点我收藏+]

标签:dns   域名服务器   

域名服务器

域名服务器:

1域名服务基础:

1)、DNS作用及类型;

2)、安装和配置;

3)、配置文件详解。

2、构建域名服务器:

1)、主域名服务器;

2)、从域名服务器(辅助域名服务器);

3)、分离解析服务器。

 

一、DNS的作用

域名是为了方便记忆而专门建立的一套地址转换系统,要访问一台互联网上的服务器,最终还必须通过IP地址来实现,域名解析就是将域名重新转换为IP地址的过程。这一过程通过域名解析系统DNS来完成。

1、作用:

正向解析:根据主机名称(域名)查找对应的IP地址。

反向解析:根据IP地址查找对应的主机域名。

 

2、类型:(网上各种说法都有,由于初学,)

1主域名服务器:

负责维护这个区域的所有域名信息,是特定的所有信息的权威信息源。也就是说,主域名服务器内所存储的是该区域的正本数据,系统管理员可以对它进行修改。

2、域名服务器:

当主域名服务器出现故障、关闭或负载过重时,域名服务器作为备份服务提供域名解析服务。域名服务器中的区域文件内的数据是从另外一台域名服务器复制过来的,并不是直接输入的,也就是说这个区域文件只是一份副本,这里的数据是无法修改的。

3、分离解析服务器:

将相同的域名解析为不同的IP地址,主要用在内网访问时解析成内网的IP地址;在外网访问时,解析成公网的IP地址,主要作用是减轻NAT地址转换的工作压力。

 

3DNS的系统工作模式

递归查询:客户端向DNS服务器的查询为递归查询,返回结果要么知道,要么不知道。

迭代查询:(多次询问,多次得到结果,最后定位

   a、一般DNS服务器之间的查询为迭代查询;

  b、目标DNS可以向源DNS返回一个近似的结果,可以是其他的目标DNS地址。

  c、源DNS会向下一个目标DNS接着查询,直到得到正确的地址。

4域名结构

FQDN:完全合格域名

#取主机名时,一定要符合FQDN(完全合格域名)。

全球共13台根域,美国10台,欧洲2台,日本一台,中国只有三台镜像版的根域。

目前IPV4结构最多只能支持13台根域。

 

 

二、安装与配置

1、安装(bind包安装光盘自带)

yum  -y  install  bind  bind-chroot  bind-utils

bindlinux的DNS服务器程序.

bind-chrootbind-chroot是bind的一个功能,使bind可以在一个
chroot的模式下运行.主要出于安全性考虑。

bind-utils:使用nslookup使用测试时必须安装的包。

 

2、配置文件顺序:

1、主配置文件:/etc/named.conf

声明如何运行DNS

状态文件和日志文件存放在哪以及DNS的根服务器在哪

options  #指明下面定义的为服务器的运行参数;

listen-on  prot  53  {  any; };

#监听53端口 {当前监听的IP地址;}对外用哪个IP地址提供服务,也就是当前DNS服务器IP地址,多个用any

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; };

#定义该DNS可供哪个网段IP进行DNS解析,any表示所有;

recursion yes;

#定义是否启用递归查询

allow-transfer  { 172.16.100.7; };

#定义从DNSIP地址;

 技术分享

#定义日志文件信息

2、区域文件:/etc/named.rfc1912.zones

解析哪个域名(www.baidu.com

zone  baidu.com  IN  

#使用zone关键字定义一个域名

type  hint;

#定义一个类型,这里共有三种类型。

master:表示定义的是主域名服务器;

slave:表示定义的是从域名服务器;

hint:表示定义的是互联网中的根域名服务器。

 

3、数据文件:/var/named/

存放具体主机和数据文件的对应关系。

$TTL 1D

1D生存周期天数

@:这个符号意味着SOA与域是一样的。

IN表示后面的数据使用的是INTERNET标准

NS:表示是这个主机是一个域名服务器(指定的区域为DNS服务器的域名或IP地址)。

MX:定义一条邮件记录。

A:定义一条主机名映射为IP地址的记录(正向解析)。

CNAME:定义对应主机的别名。

PTR:定义一长IP地址映射为主机名的记录(反向解析)。

 

四、搭建DNS

搭建主DNS

 

1、安装bind

yum  -y  install  bind 

技术分享  安装成功

2、配置主配置文件:/etc/named.conf

vi  /etc/named.conf

 技术分享

 #保存退出

 

3、区域配置文件:/etc/named.rfc1912.zones

vi  /etc/named.rfc1912.zones 

模版文件

技术分享 

 

修改配置文件为:

 技术分享

4、修改数据文件:/var/named/

cd  /var/named/

#目录下的文件

 技术分享

正向解析:

cp  -p  named.localhost  leng.com.zone 

vi  leng.com.zone

 技术分享

#保存退出

 

反向解析:

cp  -p  named.empty  100.16.172.zone

vi  100.16.172.zone 

技术分享

 

#保存退出

#6(IP地址的主机位)    PTR(反向解析)  解析成的域名


service  named  start

技术分享

#文件刷新成功,说明语法没有错。

 

5、本机测试

 技术分享

#如果提示命令没有找到,则安装下面安装包

yum  -y  install bind-utils

再次执行nslookup

技术分享 

 技术分享

#地址解析成功

6、进入客户机测试

 技术分享

#如果发现无法解析,则可能是没有设置客户机的DNS

vi  /etc/resolv.conf 

加入内容:nameserver  172.16.100.6

#保存后重启网络

 技术分享

#可以正常解析了

 

 

五、搭建主从DNS服务器

1、进入主DNS服务器(四配置好的那台)

vi  /etc/named.conf

技术分享

service  network  restart 

#重启成功说明语法没有错。

 

2、进入从DNS服务器(设置IP地址:172.16.100.7

      vi  /etc/named.conf 

 技术分享

#修改上面两行内容,保存退出。

vi  /etc/named.rfc1912.zones 

技术分享

cd  /var/named/slaves/

#进入从DNS保存文件目录

技术分享 

#发现里面没有内容

技术分享 

#重启服务后再查看,发现有文件了。

 

3、客户机测试

设置IP地址为同一网段IP,指定DNS1=172.16.100.7(从DNS服务器IP

技术分享

如果没有装bind-utils的话会提示命令找不到。那么安装就行了,这里不再说。

技术分享 

#关闭防火墙

 技术分享

#测试成功

 

六、搭建分离解析DNS服务器

作用:将相同的域名解析为不同的IP地址

  外网访问时,解析成某个IP地址,内网访问时,自动解析成内网IP

实验环境:

定义内网网段为1.1.1.0/24,外网的实验网段为2.2.2.0/24,设置网关为1.1.1.12.2.2.1,由于实验不在同一天,之前的直接给还原了,为了简化IP,所以把IP地址写简单了。

三台虚拟机:

1、第一个网段测试机;

2、网关、分离解析DNS

3、第二个网段测试机。

 

 

1安装bind

yum  -y  install  bind 

 

2、修改主配置文件

vi  /etc/named.conf

技术分享

#前面就改两个any就可以,后面修改如下:

将以下两个小段注释掉

技术分享 

在结尾加入内容:

技术分享 

3、修改区域文件

 技术分享

修改内网文件:

vi  named.aa

技术分享

#修改成以上的样子,其他的删除,保存退出。

修改外网的文件:

vi     named.bb

 技术分享

 

3、修改数据文件

cd  /var/named/

cp  -p   named.localhost    leng.a.com.zone

 cp  -p   named.localhost    leng.b.com.zone

cp  -p   named.empty   1.1.1.a.zone

cp  -p   named.empty   2.2.2.b.zone


vi   leng.a.com.zone

技术分享 

vi  1.1.1.a.zone

技术分享

vi   leng.b.com.zone

 技术分享

vi  2.2.2.b.zone

技术分享

 

4、设置内网地址和测试

vi /etc/sysconfig/network-scripts/ifcfg=eth0

技术分享 

service  network  restart 

注意清除防火墙

iptables  -F

setenforce  0

技术分享 

如果nslookup命令没有找到,请执行yum安装bind-utils

 

5、设置外网地址和测试

vi /etc/sysconfig/network-scripts/ifcfg=eth0 

技术分享


service  network  restart 

注意清除防火墙

iptables  -F

setenforce  0


技术分享 

如果nslookup命令没有找到,请执行yum安装bind-utils

 

#测试成功


本文出自 “leng576179300” 博客,请务必保留此出处http://576179300.blog.51cto.com/4971410/1694951

DNS 域名服务器

标签:dns   域名服务器   

原文地址:http://576179300.blog.51cto.com/4971410/1694951

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!