运维 之 DNS域名解析

前言

我们每天打开的网站,他是如何来解析,并且我们怎么能得到网站的内容反馈的界面呢?那什么是DNS呢(DNS(DomainNameservice,域名服务,主要用于因特网上作为域名和IP地址相互映射)那今天我们将来学习DNS服务器的构建,DNS服务可以算是Linux服务中比较难的一个了,尤其是配置文件书写,少一个字符都有可能造成错误。

DNS解析过程

  1. 客户机访问某个网站,请求域名解析,首先查找本地HOSTS文件,如果有对应域名、IP记录,直接返回给客户机。如果没有则将该请求发送给本地的域名服务器;
  2. 本地DNS服务器能够解析客户端发来的请求,服务器直接将答案返回给客户机;
  3. 本地DNS服务器不能解析客户端发来的请求,分为两种解析方法:
  • 采用递归解析:本地DNS服务器向根域名服务器发出请求,根域名服务器对本地域名服务的请求进行解析,得到记录再给本地DNS服务器,本地DNS服务器将记录缓存,并将记录返给客户机;
  • 采用迭代解析:本地DNS服务器向根域名服务器发出请求,根域名服务器返回给本地域名服务器一个能够解析请求的根的下一级域名服务器的地址,本地域名服务器再向根返回的IP地址发出请求,最终得到域名解析记录。

下面开始搭建DNS服务器 for Centos 7:

安装bind

yum install bind* -y

编辑配置文件

vim /etc/named.conf


options {
        listen-on port 53 { any; };
        listen-on-v6 port 53 { 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; };
        recursion yes;
        dnssec-enable yes;
        dnssec-validation yes;
        dnssec-lookaside auto;
        /*Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";
        managed-keys-directory "/var/named/dynamic";
};
logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};


zone "." IN {
        type hint;
        file "named.ca";
};
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

定义根和自定义区域

vim /etc/named.rfc1912.zones


#add named by wyh
zone "wyh.com" IN {
        type master;
        file "wyh.com.zone";
        allow-update { none; };
};
zone "188.92.182.in-addr.arpa" IN {
        type master;
        file "wyh.com.arpa";
        allow-update { none; };
};

编辑正向解析文件

vim /var/named/wyh.com.zone


$TTL 86400
@    IN SOA  ns.wyh.com. root (
                     42    ; serial
                     3H    ; refresh
                     15M   ; retry
                     1W    ; expire
                     1D)   ; minimum
@            IN NS    ns.wyh.com.
ns            IN A    182.92.188.163
www          IN A    182.92.188.163
@            IN MX 10    mail.wyh.com.
mail         IN A    182.92.188.163

编辑反向解析文件

vim /var/named/wyh.com.arpa


$TTL 86400
@    IN SOA    ns.wyh.com. root (
                        42    ; serial
                        3H    ; refresh
                        15M   ; retry
                        1W    ; expire
                        1D)    ; minimum
@    IN NS    ns.wyh.com.
163    IN PTR    mail.wyh.com.
163    IN PTR    ns.wyh.com.
163    IN PTR    www.wyh.com.

测试

  • 找一台客户端,PC或者服务器,将客户端的DNS修改为服务器端DNS,访问解析的域名能正常访问即证明DNS服务器搭建成功。

来自: 运维 之 DNS域名解析https://mp.weixin.qq.com/s?__biz=Mzk0NTQ3OTk3MQ==&mid=2247487525&idx=1&sn=7e6c4639c2fbe640b3a883a76b48ca98&chksm=c3159869f462117f2714696147297b9f4e669c46c290a06e8c9440a71165e29de80c01d7738d&token=355315523&lang=zh_CN#rd

相关推荐
难以触及的高度27 分钟前
MySQL5.7.37安装配置
linux·运维·服务器
朝九晚五ฺ34 分钟前
【Linux探索学习】第十三弹——进程状态:深入理解操作系统进程状态与Linux操作系统中的进程状态
linux·运维·学习
StringKai36 分钟前
表单自动化填写-JavaScript脚本
运维·自动化
2401_870042391 小时前
CISAW- CDF 认证电子数据取证训练: Linux 取证分析实战
linux·运维·服务器
喝旺仔la1 小时前
Linux的基本用法
linux·运维·服务器
wowocpp1 小时前
ubuntu 22.04 shell
linux·运维·ubuntu
dreams_dream2 小时前
nginx证书流式响应配置
运维·nginx
DisonTangor2 小时前
【个人笔记】如何将 Linux 文件系统扩容
linux·运维·笔记
源来猿往2 小时前
问题An object named ‘ResNetArcFace‘ was already registered in ‘arch‘ registry!
linux·运维·服务器
心灵彼岸-诗和远方2 小时前
Devops业务价值流:敏捷测试最佳实践
运维·产品经理·devops