wiki/网络/域名/DNS域名系统服务.md
2025-01-02 10:46:09 +08:00

5.3 KiB
Raw Blame History

title, categories, tags, date
title categories tags date
DNS域名系统服务
Linux服务
DNS
2022-04-04 21:35:25

DNS域名系统服务

DNS介绍

定义域名也就是个名字用名字代替ip地址方便记忆

正向解析域名换IP

反向解析IP换域名比较少

域名组成

常见格式www.lzcwy.cn

其实隐藏了.根域www.lzcwy.cn.

. :根域,可省略不写

com顶级域由ICANN组织指定和管理

主机名: s1.www.atguigu.com.中的s1就是主机名一般用来表示具体某一台主机

国家地区域名:cn(中国)、hk香港、sg新加坡等
通用顶级域名: com商业机构、org非营利组织、edu教育机构等新通用顶级域名:red(红色、热情)、top(顶级、高端)等
lzcwy:二级域(注册域),可由个人或组织申请注册
www:三级域(子域),服务器网站名代表

主机名: s1.www.lzcwy.cn.中的s1就是主机名一般用来表示具体某一台主机

DNS软件信息

软件名称bind

服务名称named

软件端口UDP 53域名解析 TCP主从同步

配置文件:/etc/named.conf服务器运行参数

区域配置文件:/etc/named.rfc1912.zones服务器解析的区域配置正反向区域定义信息

数据配置文件:/var/named/xx.xx主机名和IP地址对应的解析关系

搭建DNS

1、安装软件

yum install bind

2、配置主配置文件/etc/named.conf

vim /etc/named.conf

原内容解释

options {
        listen-on port 53 { 127.0.0.1; };  #设置DNS服务的ip地址推荐设置成any
        listen-on-v6 port 53 { ::1; };   #IPv6
        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";   #数据文件的位置
        secroots-file   "/var/named/data/named.secroots";           #数据文件的位置
        recursing-file  "/var/named/data/named.recursing";          #数据文件的位置
        allow-query     { localhost; };             #允许访问此DNS的ip地址可设置成any

修改为如下

options {
        listen-on 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";
        secroots-file   "/var/named/data/named.secroots";
        recursing-file  "/var/named/data/named.recursing";
        allow-query     { any; };

3、配置区域配置文件/etc/named.rfc1912.zones

vim /etc/named.rfc1912.zones

删除多余部分,留下这些内容

zone "localhost.localdomain" IN {   #正向配置区域配置文件标签,修改成要解析的域
        type master;          #DNS类型主备
        file "named.localhost";  #正向数据配置文件名称,保存在/var/name/下
        allow-update { none; };  #运行数据更新的IP地址即备用dns
};


zone "1.0.0.127.in-addr.arpa" IN { #反向区域配置文件标签如0.1.168.192.in-addr-arpa
        type master;      
        file "named.loopback";
        allow-update { none; };
};

根据自己的域名修改配置文件

zone "lzcwy.cn" IN {
        type master;
        file "named.lzcwy";
        allow-update { none; };
};


zone "0.1.168.192.in-addr.arpa" IN {
        type master;
        file "named.loopback";
        allow-update { none; };
};

4、配置数据配置文件/var/named/xx.xx

cp /var/named/named.localhost /var/named/named.lzcwy
vim /var/named/named.lzcwy

配置文件如下

$TTL 1D   #域名有效解析生存周期
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
        A       127.0.0.1
        AAAA    ::1

5、给相关文件授权

chmod 777 /var/named/named.lzcwy /var/named/named.loopback

6、重启DNS服务

systemctl restart named

开启DNS转发器

解析内网域名已经可以实现了那内网服务器怎么解析外网域名呢这就需要配置DNS转发器当内网无法解析到就去外网解析

1、编辑主配置文件

vim /etc/named.conf
#内容如下,增加最后两行
options {
        listen-on 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";
        secroots-file   "/var/named/data/named.secroots";
        recursing-file  "/var/named/data/named.recursing";
        allow-query     { any; }
        #下面为新增
        forwarders      { 外网DNS地址; };
        forward only;

2、重启服务即可