DNS的配置

DNS 总揽
权威名称服务器
– 存储并提供某区域 ( 整个 DNS 域或 DNS 域的一部分 ) 的实际数据。权威名称服
务器的类型包括

Master : 包含原始区域数据。有时称作 “ 主要 ” 名称服务器
Slave : 备份服务器 , 通过区域传送从 Master 服务器获得的区域数据的副本。有时称作 “ 次要 ” 名称服务

非权威 / 递归名称服务器
– 客户端通过其查找来自权威名称服务器的数据。递归名称服务器的类型包括

仅缓存名称服务器 : 仅用于查找 , 对于非重要数据之外的任何内容都不具有权威性
DNS 查找

客户端上的 Stub 解析器 将查询发送至 /etc/resolv.conf 中的名称服务器
如果名称服务器对于请求的信息具有权威性 , 会将权威答案发送至客户端
否则 , 如果名称服务器在其缓存中有请求的信息 , 则会将非权威答案发送至客户端
如果缓存只能该没有信息 , 名称服务器将搜索权威名称服务器以查找信息 , 从根区域开始 , 按照
DNS 层
次结构向下搜素 , 直至对于信息具有权威性的名称服务器 , 以此为客户端获得答案。在此情况中
, 名 ch 称服务器将信息传递至客户端并在自己的缓存中保留一个副本 , 以备以后查找
www.westos.org

1 .DNS(域名服务器)

DNS(Domain Name Server,域名服务器)是进行域名和与之对应的IP地址转化的服务器。DNS中保存了一张域名和与之对应的IP地址的表,以解析消息的域名。

2.DNS高速缓存的作用
当某一个访问请求解析过一个域名以后,该解析记录就放在缓存中,以后在有同样的解析请求,就直接从缓存中提供结果,加快了访问者的应答速度。

3.配置DNS服务

在配置DNS缓存之前,最好关闭掉防火墙

systemctl stop firewalld.server

1.高速缓存DNS

(1)用yum  search  DNS找到软件 :

 


(2)用yum  install  bind.x86_64  -y 安装bind软件 :

 


(3)用rpm  -qc  bind.x86_64 查找配置文件 

bind软件的配置文件/etc/named.conf :


(4)编辑配置文件 
用cat  /etc/services  |  grep  name 查看name端口,DNS对应的端口为53号端口,在本地回环接口和本地IP都开放53号端口。如果之开放本地回环接口的53号端口,则其他主机无法访问。 
 

默认情况下,本地回环端口开放了53号端口。
 

因此还需打开本地IP的53号端口提供访问服务。 编辑/etc/named.conf 将listen-on port 53 { 127.0.0.1; }。
修改为:


再次查看name端口就可以看到已经开放了本地IP53号端口: 
 

继续编辑/etc/named.conf 
允许所有网络访问,设置上一级DNS 
 

DNS不验证: 
 

编辑/etc/resolv.conf 添加 :


最后 systemctl  restart  named重启服务, 
就配置完成高速缓存DNS了。


2.配置正向解析DNS

编辑/etc/named.conf 删除刚才配置的上一层DNS 
“forwarders { 172.25.254.254; };” 
在配置文件最后我们可以看到配置“域”文件: 

 
编辑/etc/named.rfc1912.zones文件添加域名为“redhat.com”域: 

 
(可以复制本地域(zone“localhost”IN的结构体)的配置加以修改) 
“redhat.com”为我新添加的域,他会读取”redhat.com.zone文件” 
cd  /var/named/下创建文件。 
cd  /var/named/ 可以复制本身提供的模版文件,复制时一定要加参数-p,将文件的信息也复制。 
 

编辑redhat.com.zone 区域数据文件: 
 

蓝色部分最后面有一个“.” 如果不写点系统会自动补齐在配置域文件中新加的域名,所以要么只写“dns”,要么写“dns.redhat.com.” 。
验证正向解析DNS是否配置成功,文件配置完成要重启服务: 
systemctl restart  named。 
这里用IP为172.25.14.11的客户机验证,编辑客户机的 
/etc/resolv.conf 添加: 


然后 dig www.redhat.com 这个刚刚设置的域名 
如果ANSWER SECTION 是我们设置的172.25.254.14 ,就说明我们这个正向解析DNS配置成功! 
 

在dig dns.redhat.com试试,回答的IP正是刚才配置的IP 
 
因此说明我们正向解析DNS配置成功!

3.反向解析dns

(1)编辑配置文件/etc/name.rfc1912.zones添加反解的域:

[plain]  view plain  copy
  1. 命令:vim /etc/name.rfc1912.zones  



注意:172.25.14网段应反着写为:14.25.172。


(2)cd /var/named/ 可以复制本身提供的模版文件,复制时一定要加参数-p,将文件的信息也复制:

 


这里的加点“.”规则和正向解析一样。橙色的100加上刚才在配置域文件中反着写的网段就时我们要反向解析的IP 
(3)重启DNS服务。systemctl restart named。 
(4)利用刚才的客户机验证服务配置是否正确 
反向解析dig -x 172.25.14.100 (不要忘记参数-x) 
 

ANSWER SECTION成功解析出www.redhat.com。

4.dns的更新

(1)先备份文件。

[plain]  view plain  copy
  1. <span style="font-size:18px;"><strong>命令:cp -p /var/named/redhat.com.zone /mnt</strong></span>  


(2)编辑文件/etc/named.rfc1912.zones,在redhat.com域名的结构体设置允许更新主机的IP,并且重启服务。

 

(3)设置权限。

既然需要其他主机更改主服务器上的数据,所以就要设置/var/named/目录的权限。这个目录的所有组时named 。

[plain]  view plain  copy
  1. 命令:chmod g+w /var/named  


(4)设置Selinux防火墙。

[plain]  view plain  copy
  1. <strong><span style="font-size:18px;">命令:setsebool -P named_write_master_zones 1</span></strong>  

(5)检查。



删除掉www.redhat.com这个域,如果在dig www.redhat.com,
就会没有解析结果: 
 

然后在添加一个域名: 
 

在去解析dig www.redhat.com 就会得到正确解析: 
 


4.dnskey的更新

(1)make keyfile

[plain]  view plain  copy
  1. 命令:dnssec-keygen -a HMAC-MD5- b 128 -n HOST redhat  


(2)make key configfile

[plain]  view plain  copy
  1. <strong><span style="font-size:18px;">命令:cp -p /etc/rndc.key /etc/redhat.key</span></strong>  

通过cat 刚才生成的密钥,得到密码然后设置.key文件 :



密码一定要一致,刚起的名字redhat

[plain]  view plain  copy
  1. <strong><span style="font-size:18px;">命令:vim /etc/redhat.key</span></strong>  


(3)config dns

[plain]  view plain  copy
  1. <strong><span style="font-size:18px;">命令:vim /etc/named.conf</span></strong>  

第43行:include "/etc/redhat.key";


[plain]  view plain  copy
  1. <strong><span style="font-size:18px;">vim /etc/named.rfc1912.zones</span></strong>  
第28行更改:allow-update { key redhatkey; };


(4)检查:

[plain]  view plain  copy
  1. 命令:scp Kredhatkey.+157+49048.* root@172.25.98.11:/root/Desktop/  


通过私钥来更新主服务器数据: 
nsupdate -k *.private 
 

正确解析出了结果,说明动态更新DNS配置正确。 
 

5.ddns-key
(1)生成密钥:
[plain]  view plain  copy
  1. <strong><span style="font-size:18px;">命令:dnssec -keygen -a HMAC-MD5 -b 128 -n USER ddns</span></strong>  
Kddns.+157+59812.key
Kddns.+157+59812.private

(2)查看所生成的秘钥:
[plain]  view plain  copy
  1. <strong><span style="font-size:18px;">命令;cat Kddns.+157+59812.private</span></strong>  
Private-key-format: v1.2
Algorithm: 157 (HMAC_MD5)
Key: R4G16tKxFFBpsPkUyNDWAw==

(3)编辑文件named.conf:
[plain]  view plain  copy
  1. <strong><span style="font-size:18px;">命令:vim /etc/named.key</span></strong>  
key ddns {
algorithm hmac-md5;
secret R4G16tKxFFBpsPkUyNDWAw==;
};
zone "example.com" {
type master;
file "example.com.zone";
allow-update { key ddns; };
};
zone "0.168.192.in-addr.arpa" {
type master;
file "example.com.local";
allow-update { key ddns; };
};

(4)
设置权限目录:
[plain]  view plain  copy
  1. <strong><span style="font-size:18px;">命令:chmod  770  /var/named/chroot/var/named</span></strong>  
configure dhcpd.conf like this:
ddns-update-style interim;
key ddns {
                  algorithm hmac-md5;
                  secret R4G16tKxFFBpsPkUyNDWAw==;
};
zone example.com. {
                                    primary 127.0.0.1;
                                    key ddns;
}
zone 0.168.192.in-addr.arpa. {
                                                  primary 127.0.0.1;
                                                  key ddns;
}


6.dhcpd
(1)安装软件:
[plain]  view plain  copy
  1. <strong><span style="font-size:18px;">命令:yum intsall dhcp -y</span></strong>  

(2)make configfile
[plain]  view plain  copy
  1. <span style="font-size:18px;"><strong>命令:cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf</strong></span>  

(3)change configfile
编辑配置文件:/etc/dhcp/dhcpd.conf:
[plain]  view plain  copy
  1. <span style="font-size:18px;"><strong>命令:vim /etc/dhcp/dhcpd.conf</strong></span>  

(4)检查:
1)拔掉网线
2)在客户主机中,执行命令:
[plain]  view plain  copy
  1. <span style="font-size:18px;"><strong>hostnamectl set-hostname test.redhat.com</strong></span>  

编辑配置文件:/etc/sysconfig/network-scripts/ifcfg-eth0,修改并保存退出。(其余行可删掉)
[plain]  view plain  copy
  1. <span style="font-size:18px;"><strong>vim /etc/sysconfig/network-scripts/ifcfg-eth0</strong></span>  
DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes

重启网络:systemctl restart network

dig test.redhat.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值