DNS配置,主从,子域,转发

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
简介:

    DNS


DNS的安装与测试

DNS主从(Master/Slave)功能的实现

DNS子域授权

DNS转发

一.DNS的安装与测试

1.DNS安装所需要的软件有
    bind

bind-libs

bind-utils

bind-chroot

主程序为named

# yum install bind bind-libs bind-utils bind-chroot

# rpm -qa bind*(查询bind软件包的安装成功与否)

   wKiom1bBnlvB_5sfAAARCaJ91Ns640.png   

#rpm -qc bind(查看安装好bind后的配置文件)

    wKiom1bBnojxZLgQAAAWnBHNL8k404.png

2.DNS的配置文件分别有
    /etc/named.conf(主配置文件,包括了named.rfc1912.zones)
    /etc/named.rfc1912.zones(辅助的区域配置文件,区域相关的配置写在此文件中)
    /etc/rndc.key
    /var/named/named.ca(根节点的配置文件,默认由centos直接提供,也可以用dig命令生成)
    /etc/sysconfig/named(主程序的脚本配置文件)
    /var/log/named.log(日志文件)

3.配置/etc/named.conf(只保留directory选项即可启动named
    listen-on port 53 { 127.0.0.1; 192.168. 0.99; }; #配置端口,后边必须带IP地址,否则会报错,表示监听在指定的地址上

    #127.0.0.1表示与本机通信的地址
    #192.168.0.99表示与外部主机进行通信的地址,如果有多个,都可以添加进来,每个地址以分号结尾

    wKioL1bBn2OCtB8GAAAN89_dqyA711.png

    #也可以把此行注释掉,也表示监听本机所有地址

    wKioL1bBn4KCgpbGAAAPsrkbVRQ119.png

    directory /var/named #配置区域解析库文件的位置,即工作目录
    allow-query { any; } #配置谁可以进行查询,此行也可以注释掉,any表示都可以,localhost表示只允许本机
    recursion yes; #(允许递归查询)
    注意:每一句结束必须带上分号(;),大括号中前后位置必须带上空格,注释某一行用双斜线(//)

4.配置/etc/named.rfc1912.zones(正向和反向的)

        wKioL1bBn9CCf3euAAAVr6z73is634.png

5.在/var/named/目录下新增liuzw.com.zone192.168.0.zone两个文件
    a.vim /var/named/iuzw.com.zone 添加正向解析记录,也可以添加CNAME MX
    $TTL 设定缓存时间,设定此项后,下面的资源记录将不用再设置TTL
    $ORIGIN 设定自动补全的域名,设定此项后,下面的NSMX等不用再写完整的域名
        例:$ORIGIN liuzw.com.
            master.liuzw.com.zone 写成master即可

    wKioL1bBoBbC2K4XAAAni0dku-E900.png   

    b.vim /var/named/192.168.0.zone 添加反向解析记录PTR

    wKiom1bBn9XRerHiAAAillGdHMw525.png

6.进行语法检查
    # named-checkconf(主配置文件语法检查,无任何提示表示配置无错误,即没有消息就是最好的消息)
    #named-checkzone(区域配置文件的语法检查)
        #named-checkzone liuzw.com /var/named/liuzw.com.zone

        wKiom1bBoAawWd0wAAAKgKdjyZc547.png

7.修改新增文件的权限及属主或者属组,与原有的文件保持一致
    #ps aux | grep named(可以看到启动named进程的用户为named)

    wKiom1bBoCqhEaJfAAARls-9zdY251.png    

    #ll /var/named/ (可以看到自己新增文件其它用户也拥有可读权限,并且属组为root,要改的和其它的文件一样)

    wKioL1bBoK6DwAS2AAAkSPa5q8c863.png

    # chmod 640 liuzw.com.zone
    # chown :named liuzw.com.zone 
    # ll liuzw.com.zone

    wKiom1bBoG6yiJp7AAAMp6M_eKU280.png

8.重启named服务,可以看到启动成功 

    # systemctl status named(查看named启动状态)

        wKiom1bBoLrCsmKrAAAr1GYFGwY264.png

   #ss -tunlp | grep :53

    wKioL1bBoUjQM9o0AAAdTzVGFXY544.png     #rndc status (查看DNS服务器当前的状态)

    wKiom1bBoQuQtgx_AAAhD3aH-2s712.png

9.用本机测试正向解析结果

    #dig -t A www.liuzw.com @192.168.0.99

    wKioL1bBoZaQPt2TAABI56hMWKI184.png

10.用本机测试反向解析结果

    #dig -x  192.168.0.99 @192.168.0.99

    wKioL1bBobmyKTthAABMbT9n1Sk734.png

11.修改配置文件后,不要随意重启服务器,最好能重载

        #systemctl reload named
        #rndc reload

12.添加不存在的域名到指定的IP(泛域名解析) 

    #dig -t A liu.liuzw.com @192.168.0.99(此记录不存在,所以无法解析)

    wKioL1bBof6BxuwXAAA0YIxur4k514.png

    #vim /var/named/liuzw.com.zone 修改此文件添加记录,看到解析一个不存的记录,也可以解析成功

    wKiom1bBobejRKMyAAAHUDoTAdU149.png

    wKioL1bBoivB5oAGAAA4IHiBwjM341.png

二.DNS主从(Master/Slave)功能的实现

1.新增一台从DNS服务器192.168.50.164

2.配置主服务器192.168.50.163,原来的数据不变,新增一些内容即可
    #vim /etc/named.rfc1912.zones 在自定义的区域上分别新增一条内容
        allow-transfer { 192.168.50.164; };

        wKiom1bBoe2ieXMiAAAeQD-u76A053.png

3.配置主服务器的自定义区域文件,添加从服务器的资源记录
    #vim /var/named/liuzw.com.zone 添加正向从服务器记录

    wKioL1bBon7gGml2AAAayChsFDg807.png

    #vim /var/named/192.168.50.zone 添加反向从服务器记录

    wKiom1bBojyRFpUfAAAb4dKb_oY897.png

4.重启named,并查看日志,看是否传输成功

    #systemctl restart named
    #tail -10 /var/log/messages

    wKiom1bBomPwZ6PjAAAiaxmM9hU406.png

5.配置从服务器,从DNS服务器也需要安装bind,bind-libs,bind-utils,bind-chroot

    a.配置主配置文件,即开启端口,开启查询功能

    wKioL1bBounAOHq2AAAg7Jtt0MM827.png

    b.配置区域文件,类型为slave,file文件都放在/var/named/slaves目录下,一定要指定masters

    wKiom1bBoq-xwlWlAAAX6iLnt20120.png    

    c.重启从服务器named,查看/var/named/slaves目录下是否有数据文件
        #systemctl restart named
        #ll /var/named/slaves,可以看到已经传输成功

       wKioL1bBozjQDlHZAAAOxw5dC5M148.png

   d.查看日志文件

        #tail -30 /var/log/messages,可以看到已经传输成功

       wKiom1bBov_w9kgYAAAQwMp86oI644.png

6.DNS修改序列号并进行验证是否传输成功

    #vim /var/named/liuzw.com.zone

    wKioL1bBo3-ic-PvAAAK53ngM48453.png

   #vim /var/named/192.168.50.zone

    wKiom1bBozujDA-fAAAPPaFohQQ711.png

   #tail /var/log/messsages 查看日志,看到修改后传输成功

    wKioL1bBo8njjKQWAAAT6ApbtHQ055.png

    wKiom1bBo3eBdXbfAAAPOWrJxdY219.png

7.DNS查看日志

    #tail /var/log/messages

    wKioL1bBo_6w4SB1AAAHVrBE3-Q679.png

    wKiom1bBo6ehjLnBAAAcPKtVhlo568.png

三.DNS子域授权,新增子域192.168.50.165,假设需要子域解析的域为nihao.liuzw.com

1.子域授权的配置非常简单,在主DNS上的配置只需要设置一条资源记录
    #vim /var/named/liuzw.com.zone 添加一条NS,一条A记录

    wKiom1bBo82zrimAAAAJ0CIIv1Y425.png

2.子域的配置,需要完整的zone file
    #vim /var/named/nihao.liuzw.com  新建并配置此zone file

    wKiom1bBo-fjYVjTAAAVJIU4s6Q680.png

3.子域修改区域配置文件/etc/named.rfc1912.zones,新赠下面的内容
    #vim /etc/named.rfc1912.zones

    wKiom1bBpAWCgAeiAAAHg5g4U-U622.png

4.子域修改主配置文件/etc/named.conf,allow-query要设置好,否则可能解析不到
    #vim /etc/named.conf

    wKiom1bBpCmDPAZ6AAAhV37PhEM920.png

5.重启主DNS,从DNS,在主DNS进行解析

    #dig -t A www.nihao.liuzw.com @192.168.50.163

    wKioL1bBpK2yo0o7AABFtREuIj4761.png

可以看到解析成功,父域可以找到子域,子域不能看到父域的,除非从根开始查找才能看到,测试场景下我们的搭建的
    DNS并不合法的DNS,所以子域是无法找到父域的

四.DNS转发;如果要让子域看到父域的内容,就要设置转发功能
1.在没做转发之前,子域是解析不到父域的
    # dig -t A www.liuzw.com @192.168.50.165

    wKiom1bBpIXjtk2AAAA0jotVlsg863.png

2.设置子域进行转发

    #vim /etc/named.rfc1912.zones 把对父域的请求转发到主DNS上面

    wKiom1bBpKaTvEFuAAALBb231zI732.png

    wKiom1bBpLKjlqa5AABVZi8y9wg447.png

本文转自激情燃烧的岁月博客51CTO博客,原文链接http://blog.51cto.com/liuzhengwei521/1742274如需转载请自行联系原作者


激情燃烧的岁月

相关文章
|
27天前
|
域名解析 存储 缓存
DNS是什么?内网电脑需要配置吗?
【10月更文挑战第22天】DNS是什么?内网电脑需要配置吗?
94 1
|
1月前
|
机器学习/深度学习 调度
mmseg配置解析 Polynomial Decay 多项式衰减
Polynomial Decay(多项式衰减)是一种常用的学习率调度方法,通过多项式函数逐步减少学习率,帮助模型更好地收敛。公式为:\[ lr = (lr_{initial} - \eta_{min}) \times \left(1 - \frac{current\_iter}{max\_iters}\right)^{power} + \eta_{min} \]。参数包括初始学习率、最小学习率、当前迭代次数、总迭代次数和衰减指数。适用于需要平滑降低学习率的场景,特别在训练后期微调模型参数。
65 0
mmseg配置解析 Polynomial Decay 多项式衰减
|
1月前
|
网络协议 Docker 容器
docker中的DNS配置
【10月更文挑战第5天】
320 1
|
1月前
|
弹性计算 网络协议 Ubuntu
如何在阿里云国际版Linux云服务器中自定义配置DNS
如何在阿里云国际版Linux云服务器中自定义配置DNS
|
1月前
|
JSON JavaScript 前端开发
深入解析ESLint配置:从入门到精通的全方位指南,精细调优你的代码质量保障工具
深入解析ESLint配置:从入门到精通的全方位指南,精细调优你的代码质量保障工具
87 0
|
1月前
|
编解码 计算机视觉
mmseg配置解析 align_corners=False
`align_corners=False` 是图像插值操作中的一个参数,影响输入和输出图像的角点对齐方式。`align_corners=True` 严格对齐角点,而 `align_corners=False` 均匀分布像素点,更适用于保持整体比例关系的任务,如语义分割。
33 0
|
1月前
|
机器学习/深度学习 编解码
mmseg配置解析 contract_dilation=True
`contract_dilation=True` 是 ResNetV1c 中的一种设置,用于解决多层膨胀卷积中的“栅格效应”。通过调整膨胀率,使卷积核在不同阶段更密集地覆盖输入特征图,避免信息丢失,提升特征提取质量,尤其在语义分割任务中效果显著。
43 0
|
1月前
|
XML Java 数据格式
手动开发-简单的Spring基于注解配置的程序--源码解析
手动开发-简单的Spring基于注解配置的程序--源码解析
47 0
|
1月前
|
XML Java 数据格式
手动开发-简单的Spring基于XML配置的程序--源码解析
手动开发-简单的Spring基于XML配置的程序--源码解析
82 0
|
3月前
|
持续交付 jenkins Devops
WPF与DevOps的完美邂逅:从Jenkins配置到自动化部署,全流程解析持续集成与持续交付的最佳实践
【8月更文挑战第31天】WPF与DevOps的结合开启了软件生命周期管理的新篇章。通过Jenkins等CI/CD工具,实现从代码提交到自动构建、测试及部署的全流程自动化。本文详细介绍了如何配置Jenkins来管理WPF项目的构建任务,确保每次代码提交都能触发自动化流程,提升开发效率和代码质量。这一方法不仅简化了开发流程,还加强了团队协作,是WPF开发者拥抱DevOps文化的理想指南。
87 1

相关产品

  • 云解析DNS
  • 推荐镜像

    更多
    下一篇
    无影云桌面