运维 之 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

相关推荐
菜菜艾19 分钟前
自动化环境补丁更新系统
linux·运维·bash·运维开发
江上清风山间明月24 分钟前
Nginx基于域名区分的多网站部署
运维·nginx·部署·php·多个网站
团象科技1 小时前
2026出海趋势观察:国际云服务器推荐重构企业全球化经营底盘
运维·服务器·重构
Elastic 中国社区官方博客2 小时前
Elastic 9.4:Workflows 正式发布、Agent Builder 更新,以及 Prometheus / PromQL 支持
运维·数据库·人工智能·elasticsearch·搜索引擎·信息可视化·prometheus
求索实验室3 小时前
让AI真正"看见"界面:纯视觉GUI自动化编排器开源了
github·agent
徐子元竟然被占了!!3 小时前
STUN 协议
运维
mzhan0173 小时前
Linux: coredump产生对程序退出的影响
linux·运维·服务器
利来利往3 小时前
ubuntu设置永不休眠
运维·服务器
遇印记4 小时前
软考知识点
运维·服务器·网络
源远流长jerry4 小时前
Linux 网络收包机制:从网卡到 Socket 的完整路径
linux·运维·服务器·网络·网络协议·tcp/ip