企业DNS服务器搭建

 1.关于dns的名词解释
dns:
domain name service(域名解析服务)

DNS(Domain Name System,域名系统),万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过域名,最终得到该域名对应的IP地址的过程叫做域名解析(或主机名解析)

 2.dns服务的安装与启用

1.配置实验环境

两台虚拟机

nodea:172.25.254.173    nodea上设置网关172.25.254.73  使之可上网

nodeb:172.25.254.237

1)首先  172.25.254.73 可以上外网

2) 配置nodea :172.25.254.173    设定网关172.25.254.73 

要想nodea:172.25.254.173 可以上外网   要在网关上设置地址伪装策略

设置成功后  nodea可以上外网  nodea配置完成

3) 配置nodeb:172.25.254.237

 2.安装dns服务并启用

1)安装dns 服务

--------------nodea:172.25.254.173----------

dnf install bind -y

2)    启动dns服务

systemctl enable --now named             ---启动服务
firewall-cmd --permanent --add-service=dns   ---火墙允许访问
firewall-cmd --reload      ---重启

注意:别忘了开放端口  

vim /etc/named.conf
 listen-on port 53 { any; };                  ##在本地所有网络接口上开启53端口
allow-query  { any; };                          ##允许查询A记录的客户端列表
dnssec-validation no;                        ##禁用dns检测使dns能够缓存外部信息到本机
systemctl restart named

vim /etc/named.conf

 

 服务设置完成  别忘了重启 

3.测试

在nodeb:172.25.254.237测试

1)编写配置文件  需要从nodea:172.25.254.173获取数据

vim /etc/resolv.conf

2)dig www.baidu.com  进行测试    下图表示dns服务搭建成功

 搭建成功但是访问速度太慢   如下图需要2401ms

为了提升访问速度  我们可以设置高速缓存dns

4.高速缓存DNS

1)编辑配置文件

----------nodea :172.25.254.173-----------

vim /etc/named.conf
-------
forwarders {114.114.114.114;};
--------
systemcrl restart named

 2)测试

在nodeb:172.25.254.237测试

dig www.baidu.com

 在dig www.baidu.com  一次

 可见DNS访问速度大大提升

3.DNS正向解析

目的:设定172.25.254.173为DNS服务器   对www.westos.org进行域名解析

-------nodea--------

1.设定维护的域名

#vim /etc/named.conf
----------
# forwarders { 114.114.114.114; };                         ---注释高速缓存
zone "westos.org" IN {                                                 ##维护的域名
     type master;                                                              ##当前服务器位于主dns
     file "westos.org.zone";                                            ##域名A记录文件
   };
-----------------------------
注意此时westos.org还不存在

#vim /etc/named.conf
----------
# forwarders { 114.114.114.114; };  ---注释高速缓存
zone "westos.org" IN {
     type master;
     file "westos.org.zone";
   };
-----------------------------
注意此时westos.org还不存在

2.编辑域名A记录文件

设定DNS服务器--nodea :172.25.254.173

  需要解析的域名   www.westos.org --->172.25.254.111

------------nodea---------173---------------
#cd /var/named/
#ls
#cp -p named.localhost westos.org.zone
#vim westos.org.zone
----------------------------------
$TTL 1D
@       IN SOA dns.westos.org. root.westos.org. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns.westos.org.
dns     A       172.25.254.173
www     A        172.25.254.111
------------------------------------------
#systemctl restart named

3.修改DNS解析地址

因为nodea变成了dns解析服务器 所以 解析获取的资源都是来自nodea  自然解析地址变成了nodea

-----------------nodea--------------173------------------
vim /etc/resolv.conf
systemctl restart named

 4.测试

在nodeb:172.25.254.237 输入dig www.westos.org 进行测试

dig www.westos.org

 

测试 结果:在nodeb 输dig www.westos.org   解析结果如上图 

可以看出 域名www.westos.org 解析ip为172.25.254.111

解析服务器 为172.25.254.173           测试结果正确

4.DNS的各种数据类型

CNAME 规范域名

MX  邮件解析

PTR 反向解析

1.CNMAE 规范域名

1)规范域名解释

例如百度的域名只有www.baidu.com 但是百度的服务器肯定不都是叫这个名字 

就出现了规范域名

如下图 www.a.shifen.com就是百度的一个规范域名

 2)实验:设定lee.a.westos.org 为www.westos.org的一个域名

--------------nodea:172.25.254.173--------

设定规范域名

# cd /var/named
# ls
data     named.ca     named.localhost  slaves
dynamic  named.empty  named.loopback   westos.org.zone
#vim westos.org.zone
-------------------------------------------
$TTL 1D
@       IN SOA  dns.westos.org. root.westos.org. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns.westos.org.
dns     A       172.25.254.173
www     CNAME   lee.a
lee.a   A       172.25.254.173
lee.a   A       172.25.254.237
-----------------------------------------
# systemctl restart named
# dig www.westos.org

 测试 在nodea:172.25.254.173输入:dig www.westos.org

 2.MX 邮件解析

1)邮件解析解释

2)配置邮件发送端

在nodea:172.25.254.173上配置

安装启动posfix

 dnf install postfix mailx -y
 systemctl enable --now  postfix

配置记录文件

cd /var/named
ls
vim westos.org.zone
systemctl restart named

 邮件解析记录查询

  dig -t mx westos.org

 发送邮件

mail root@westos.org
mailq

 3)配置邮件接收端

在nodea:172.25.254.173上做实验

邮件接收端收到的是ip   如何将ip转换成域名呢?

PTR 反向解析   和正向解析是分开的

修改配置文件

vim /etc/named.rfc1912.zones 

# cd /var/named
# ls
data     named.ca     named.localhost  slaves
dynamic  named.empty  named.loopback   westos.org.zone
# cp -p named.loopback 172.25.254.ptr
# ls
172.25.254.ptr  dynamic   named.empty      named.loopback  westos.org.zone
data            named.ca  named.localhost  slaves
# vim 172.25.254.ptr  
# systemctl restart named

 测试:反向解析

dig -x 172.25.254.173

 5.DNS的双向解析

不同网段的主机使用 同一个dns服务器 解析出的地址不同

1)配置实验环境

服务端:nodea一个网卡 两个网段:172.25.254.173/1.1.1.173

客户端1:172.25.254.73

客户端2: 1.1.1.73

查看一个网卡上的网段:

ip addr show ens3

2)配置服务端

修改配置文件----inter----172网段改为1网段

# cd /var/named
# ls
172.25.254.ptr  dynamic   named.empty      named.loopback  westos.org.zone
data            named.ca  named.localhost  slaves
# cp westos.org.zone westos.org.inter
# ls
172.25.254.ptr  dynamic   named.empty      named.loopback  westos.org.inter
data            named.ca  named.localhost  slaves          westos.org.zone
# chgrp named westos.org.inter
# ls -l westos.org.inter
-rw-r-----. 1 root named 304 Dec  3 19:39 westos.org.inter
# vim westos.org.inter
---------------------------
$TTL 1D
@       IN SOA  dns.westos.org. root.westos.org. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns.westos.org.
dns     A       1.1.1.173
www     CNAME   lee.a
lee.a   A       1.1.1.173
lee.a   A       1.1.1.237
westos.org. MX 1 1.1.1.173.
--------------------------------

修改配置文件---rfc.inter

# cp /etc/named.rfc1912.zones /etc/named.rfc1912.inter -p

# vim /etc/named.rfc1912.inter

 修改主配置文件

vim /etc/named.conf
systemctl restart named

 3)测试:

客户端1 :解析出的地址是172网段的

dig www.westos.org

 客户端2:解析出的地址是1网段的

dig www.westos.org

 总结:利用双向解析  不同网段客户端使用同一个DNS服务器  解析出的地址网段也不同

6.DNS集群

为了减小主DNS的访问压力  创建辅助DNS 并且可以实时更新数据

达到 控制一台主DNS服务器  辅助DNS服务器可以实时更新数据

1.配置实验环境

需要配置两台虚拟机:

nodea/主DNS服务器:172.25.254.173

nodeb/辅助DNS服务器:172.25.254.237

2.配置辅助dns服务器

-------在 nodeb:172.25.254.237上做-------

1)安装启动DNS服务

dnf install bind -y
systemctl enable --now named
firewall-cmd --permanent --add-service=dns

2)编辑配置文件

vim /etc/named.conf

vim /etc/named.rfc1912.zones 

 3)查看域名保存文件

root@westosb named]# ls 
data  dynamic  named.ca  named.empty  named.localhost  named.loopback  slaves
[root@westosb named]# ls slaves
[root@westosb named]# systemctl restart named
[root@westosb named]# ls slaves
westos.org.zone

4)测试辅助DNS是否配置成功 

[root@westosb named]# vim /etc/resolv.conf
[root@westosb named]# dig www.westos.org

 解析数据来源于237  237---来源于173结果如上图表示辅助DNS配置成功

3.数据不同步问题

1)在主DNS服务器:172.25.254.173修改westos数据

[root@westoslinux ~]# cd /var/named
[root@westoslinux named]# ls
172.25.254.ptr  data  dynamic  named.ca  named.empty  named.localhost  named.loopback  slaves  westos.org.inter  westos.org.zone
[root@westoslinux named]# vim westos.org.zone
[root@westoslinux named]# systemctl restart named

 2)测试

----------------主DNS服务器 nodea测试------------

 ----------辅助dns服务器nodeb测试-------

 3)解决不同步的方法 :删除slaves的内容  重新解析

--------------------------nodeb:172.25.254.237----------------------

[root@westosb ~]# cd /var/named/
[root@westosb named]# ls
data  dynamic  named.ca  named.empty  named.localhost  named.loopback  slaves
[root@westosb named]# rm -fr slaves/
[root@westosb named]# systemctl restart named
[root@westosb named]# dig www.westos.org

 这个方法很简单 可以解决不同步的问题  但是在企业中不使用该方法

4.集群

1)在主DNS/nodea修改配置文件:更新数据通知设定

[root@westoslinux named]# vim /etc/named.rfc1912.zones

 2)编辑A记录文件:修改数据

[root@westoslinux named]# vim westos.org.zone 

3)测试

nodea:

[root@westoslinux named]# systemctl restart named

辅助DNS/nodeb:

总结:控制一台 主DNS服务器  就可以   达到辅助DNS服务器  同步数据 的效果

7.DDNS:DNS的动态域名解析

使用DHCP动态分配ip  可进行动态域名解析

1.配置DHCP网络:动态分配ip

1)在主服务器:nodea 搭建dhcp服务

-----------------------nodea----------------------------

[root@westoslinux named]# dnf install dhcp-server -y
[root@westoslinux named]# cp /usr/share/doc/dhcp-server/dhcpd.conf.example /etc/dhcp/dhcpd.conf
cp: overwrite '/etc/dhcp/dhcpd.conf'? y
[root@westoslinux named]# vim /etc/dhcp/dhcpd.conf
[root@westoslinux named]# systemctl restart dhcpd

 2)nodeb:westosb.westos.org 设置dhcp网络

----------------------------------nodeb--------------------------

cd /etc/sysconfig/network-scripts/
ls
vim ifcfg-ens3
---------------
DEVICE=ens3
ONBOOT=yes
BOOTPROTO=dncp
-----------
nmcli connection reload
nmcli connection up ens3
ifconfig

此时dig 自己   dig westosb.westos.org  不通  因为没有写进主配置文件的dns

 3)将nodeb 对应域名和ip写进nodea的dns

----------------------------------nodea---------------------------------

[root@westoslinux named]# vim /etc/dhcp/dhcpd.conf
[root@westoslinux named]# vim /var/named/westos.org.zone 

 4)在nodeb测试

dig westosb.westos.org

 解析成功

问题:nodeb的ip是动态分配的 会变化  nodea里面的对应关系是固定的 一旦ip发生变化 nodeb就无法解析 这个问题如何解决?

答:dhcp动态分配ip  分配 ip dhcp自己知道   只需要让DHCP通知DNS 就可解决

2.解决方法:DDNS动态解析

1)设定密匙

生成密匙:在/mnt/里面

​
[root@westoslinux named]# dnssec-keygen --help
[root@westoslinux named]# dnssec-keygen -a HMAC-SHA256 -b 128 -n HOST westoskey
Kwestoskey.+163+63771
[root@westoslinux named]# ls
172.25.254.ptr  dynamic                    Kwestoskey.+163+63771.private  named.empty      named.loopback  westos.org.inter
data            Kwestoskey.+163+63771.key  named.ca                       named.localhost  slaves          westos.org.zone
[root@westoslinux named]# mv Kwestoskey.+163+63771.key Kwestoskey.+163+63771.private /mnt/
[root@westoslinux named]# cd /mnt/
[root@westoslinux mnt]# ls
8-abstract-dark.xml   circles-dark.xml   desktop-backgrounds-default.xml  Kwestoskey.+163+63771.key
8-abstract-light.xml  circles-light.xml  hello-world-dark.xml             Kwestoskey.+163+63771.private

将密匙写进模板:/etc/westos.key

[root@westoslinux named]# rpm -qc bind
[root@westoslinux named]# vim /etc/rndc.key
[root@westoslinux named]#cd /mnt/
[root@westoslinux mnt]# cp /etc/rndc.key /etc/westos.key -p
cp: overwrite '/etc/westos.key'? y
[root@westoslinux mnt]# vim /etc/westos.key

 2)编辑DNS主配置文件

[root@westoslinux mnt]# vim /etc/named.conf

 3)编辑DNS子配置文件

[root@westoslinux mnt]# vim /etc/named.rfc1912.zones

 别忘了重启DNS服务

[root@westoslinux mnt]# systemctl restart named

4)编辑DHCP主配置文件

[root@westoslinux mnt]# vim /etc/dhcp/dhcpd.conf
[root@westoslinux mnt]# systemctl restart  dncpd

 3.DDNS动态域名测试

1)在nodea:修改动态分配ip范围 模仿ip的变化

[root@westoslinux mnt]# vim /etc/dhcp/dhcpd.conf
[root@westoslinux mnt]# systemctl restart  dncpd

 2)在nodeb:上测试

查看nodeb主机名

 重启网络服务 dig 自己


nmcli connection reload
nmcli connection up ens     ---重启
dig westosb.westos.org
​

 发现域名解析已经更改

查看此时nodeb分配到的ip

与解析出来的一致

ifconfig

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值