设为首页 加入收藏

TOP

Linux网络服务:DNS域名服务系统(一)
2023-07-23 13:38:57 】 浏览:65
Tags:Linux DNS

DNS域名系统服务

1.DNS 介绍

1.1什么是域名?

域名(Domain Name),简称域名、网域,是由一串用点分隔的名字组成的Internet上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位。具有独一无二,不可重复的特性。

1.2什么是 DNS?

域名系统(Domain Name System,缩写:DNS)是互联网的一项服务。域名解析是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站的一种服务。IP地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址。域名解析就是域名到IP地址的转换过程。

域名的解析工作由DNS服务器完成。可以理解为DNS就是翻译官。

正向解析:域名 --> IP 地址
反向解析:IP 地址 --> 域名

1.3域名的组成和分类

常见格式:www.baidu.com
完整格式:www.baidu.com.
  • . 根域,可省略不写

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

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

  • www 三级域(子域),服务器网站名代表

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

拓展:com.cn属于“二级域名”,是cn顶级域的子域

2.域名解析过程

如客户机发起查询请求

www.kernel.org

1.客户机首先查看查找本地hosts文件,如果有则返回,否则进行下一步
2.客户机查看本地缓存,是否存在本条目的缓存,如果有则直接返回,否则进行下一步。
3.将请求转发给指向的 DNS 服务器。
4.查看域名是否本地解析,是则本地解析返回,否则进行下一步。
5.本地DNS服务器首先在缓存中查找,有则返回,无则进行下一步。
6.向全球13个根域服务器发起DNS请求,根域返回org域的地址列表。
7.使用某一个 org 域的 IP 地址,发起 DNS 请求,org 域返回 kernel 域服务器地址列表。
8.用某一个kernel域IP地址,发起DNS请求,kernel域返回www.kernel.org主机的IP地址,本地 DNS 服务收到后,返回给客户机,并在本地 DNS 服务器保存一份。

3.DNS 软件信息

软件名称:bind

服务名称:named

软件端口:

UDP 53 数据通信(域名解析)

TCP 53 数据同步(主从同步)

配置文件:

  • 主配置文件:/etc/named.conf(服务器运行参数)
options {
        listen-on port 53 { 127.0.0.1; };
        listen-on-v6 port 53 { ::1; };
        #设置服务器监听网卡(可以写具体某一个IP,也可以写成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";
        recursing-file  "/var/named/data/named.recursing";
        secroots-file   "/var/named/data/named.secroots";
        #数据文件位置
        allow-query     { localhost; };
        #设置可以访问服务器的客户端IP(可用any)
  • 区域配置文件:/etc/named.rfc1912.zones(服务器解析的区域配置,正反向区域定义信息)
zone "localhost.localdomain" IN {
#正向区域配置文件标签,修改为要解析的域
        type master;
        #DNS服务器类型(master/slave)
        file "named.localhost";
        #正向数据配置文件名称(默认保存在/var/name/下)
        allow-update { none; };
        #允许数据更新的列表(填写IP地址) 
};
zone "1.0.0.127.in-addr.arpa" IN {
# 反向区域配置文件标签,仅修改IP位置,并且将IP反写例如:0.168.192.in-addr.arpa
        type master;
        file "named.loopback";
        allow-update { none; };
};
  • 数据配置文件:/var/named/xx.xx(主机名和IP地址的对应解析关系,及主从同步信息)
$TTL 1D	#域名有效解析生存周期(一般指缓存时间)
@       IN SOA  @ rname.invalid. (
                           0       ; serial
        				   1D      ; refresh
           				   1H      ; retry
                           1W      ; expire
                           3H )    ; minimum
        NS      @			#设置DNS服务器的域名
        A       127.0.0.1	#IPv4的域名IP解析记录
        AAAA    ::1			#IPv6的 域名IP解析记录
~ 
# @: 域名有效解析生存周期(一般指缓存时间)
# SOA:SOA标记(起始授权机构的资源记录,描述了域名的管理品 电子邮件地址 和一此时间参数
#serial  配置文件修改版本(如:20190826)
#refresh 更新频率(从向主的查询周期)
# retry  更新失败的重试时间周期
# expire 无法更新时的失效周期
#minimum 缓存服务器无法更新时的失效时间

记录类型:

A: 地址记录,用来指定域名的IPv4地址的记录
CNAME: 将域名指向另一个域名,再由另一个域名提供ip地址,就需要添加CNAME记录
TXT: 可填写任何东西,长度限制255.绝大多数的TXT记录是用来做SPF的(反垃圾邮件)
NS: 域名服务器记录,如果需要把子域名交给其他DNS服务商解析,就需要添加NS记录。
AAAA: 地址记录,用来指定域名的IPv6地址的记录
MX: 邮件交换记录,如果需要设置邮箱,让邮箱能收到邮件,就需要添加MX记录。

DNS 实验搭建

4.1 DNS服务搭建

先关闭服务器和客户机上的防火墙和SELinux

1.软件安装

yum install bind -y

2.配置主配置文件(/etc/named.conf)

options {
        listen-on port 53 { any; };  #监听网卡改为any
        listen-on-v6 port 53 { any; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_s
首页 上一页 1 2 3 下一页 尾页 1/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Ubuntu22.04下解决终端无法打开vs.. 下一篇linux基础(4)--权限介绍

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目