Linux 7.0 DNS搭建

一、简介

     在LINUX下面架设DNS服务器,不知道DNS解析原理,根本会了和不会没区别, 网络中为了区别各个主机,必须为每台主机分配一个惟一的地址,这个地址即称为“IP地址”。但这些数字难以记忆,所以就采用“域名”的方式来取代这些数字了。

    当某台主机要与其他主机通信时,就可以利用主机名称向DNS服务器查询该主机的IP地址,所以我们的网卡要上网至少要3个信息,IP地址,网关,DNS服务器地址。

DNS的组织结构

 3.png

    这个就是DNS的组织结构,最上面是根域名 dot,全球13台根域服务器,没有一台在中国,因为中国网络发展,起步迟。而且所有的dot DNS服务器都是bind软件架设的,我们今天要学习的也是bind软件。全球70%的大型DNS服务器都是基于bind软件。

DNS解析过程

 4.png

    我给大家解释下,比如解析www.redhat.com,第一步,查询本地host文件和缓存有没有这个记录,有就直接解析,没有就访问DNS服务器,如果DNS服务器上没www.redhat.com或 者redhat.com不在你访问的DNS服务器管理区域内,那么DNS服务器就会向dot根域名服务器发递归查询,如果找到了记录了,DNS就会返回给 client,并且把记录保存在自己缓存里,下次有client请求,他就会调用自己的缓存,直到这条记录的生存期结束,就会丢弃这条记录。

    根域名服务器就13台域名服务器,他负责管理顶级域。顶级域负责管理二级域,我们现在申请的一般是2级域名-3级域名。比如 michael.com,michael.com.cn哈~michael.com是2级域名,michael.com.cn是3级域 名,michael.com.cn.这个就是FQDN。

二、安装前准备

1、使用bind服务器需要防火墙开放以下端口:
  UDP 53 
  TCP 53
  TCP 953

2、关闭firewall:

RedHat 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙。

systemctl stop firewalld.service #停止firewall

systemctl disable firewalld.service #禁止firewall开机启动

 

3、安装iptables防火墙

yum install iptables-services #安装

vi /etc/sysconfig/iptables #编辑防火墙配置文件

  -A INPUT -m state --state NEW -m tcp -p tcp --dport 53 -j ACCEPT
  -A INPUT -m state --state NEW -m udp -p udp --dport 53 -j ACCEPT
  -A INPUT -m state --state NEW -m tcp -p tcp --dport 953 -j ACCEPT
systemctl restart iptables.service     #
重启防火墙,使规则生效

或者systemctl enable iptables.service  #关闭防火墙。

4、关闭SELinux

vi /etc/selinux/config
#SELINUX=enforcing     #
注释掉
#SELINUXTYPE=targeted  #
注释掉
SELINUX=disabled  #
增加
:wq  
保存,关闭。

reboot重启系统。

或者setenforce 0  #临时关闭,不需要重启系统,重启失效

三、安装并测试DNS服务

1、检查是否已经安装了DNS服务器软件bind
rpm -qa | grep bind
package bind is not installed #表示没有安装bind

2、安装dns服务器
yum install bind* #dns服务器必装软件 yum remove bind* #删除

yum remove bind-chroot #删除bind安全增强工具

3、配置DNS服务器
vim /etc/named.conf  #编辑主配置文件

listen-on port 53 { any; };   #修改

allow-query     { any; };   #修改

 

zone " idcyunwei.org " IN {      #增加 定义一具域名为idcyunwei.org的正向区域

        type master;

        file "idcyunwei.zx";

};

zone "10.168.192.in-addr.arpa" IN {     #增加 定义一个IP为192.168.10..*的反向域区域

        type master;

        file "idcyunwei.fx";

};

 

cd /var/named/

cp -p named.localhost idcyunwei.zx

vim fenglin.zx  #创建正向区域配置文件

$TTL 1D

@       IN SOA ns. idcyunwei.org. root. idcyunwei.org.     (

                                        0       ; serial

                                        1D      ; refresh

                                        1H      ; retry

                                        1W      ; expire

                                        3H )    ; minimum

@       IN   NS  ns. idcyunwei.org.

ns      IN      A       192.168.10.139

www     IN      A       192.168.10.139

ftp     IN      CNAME   www.idcyunwei.org

 

 

cp -p idcyunwei.zx idcyunwei.fx

vim fenglin.fx  #创建反向区域配置文件

$TTL 1D

@       IN SOA ns. idcyunwei.org. root. idcyunwei.org.     (

                                        0       ; serial

                                        1D      ; refresh

                                        1H      ; retry

                                        1W      ; expire

                                        3H )    ; minimum

@       IN   NS  ns. idcyunwei.org.

139     IN      PTR     ns. idcyunwei.org.

139     IN      PTR     www.idcyunwei.org.

 

 

named-checkzone idcyunwei.zx /var/named/idcyunwei.zx #检查正向区域配置文件

named-checkzone idcyunwei.fx /var/named/idcyunwei.fx #检查反向区域配置文件

 

systemctl start named #启动DNS服务器
systemctl restart named #重启DNS服务器
systemctl stop named #停止服务器
systemctl enable named #设为开机启动

4、测试DNS服务器

vi /etc/resolv.conf #编辑文件 
nameserver 127.0.0.1 #将linux服务器的DNS设置为本身
nameserver 8.8.8.8 #为了能够访问外网需要设置备用DNS
nslookup -type=soa idcyunwei.org #测试起始授权机构SOA资源记录
nslookup -type=a www. idcyunwei.org #测试主机地址A记录资源
nslookup -type=ptr 192.168.10.10 #测试反向解析指针PTR资源记录
nslookup -type=cname ftp.idcyunwei.org #测试别名CNAME资源记录
nslookup -type=ns idcyunwei.org #测试名称服务器NS资源记录
nslookup -type=mx idcyunwei.org #测试邮件交换器MX资源记录
tail /var/log/messages #查看日志
至此,RedHat7.0 DNS服务器配置完成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值