DNS域名解析,网址没你想的这么简单

一、概述

1.1 定义

  • DNS是“域名系统"的英文缩写
  • 它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网
  • DNS服务使用TCP和UDP的53端口,TCP的53端口用于连接DNS服务器,UDP的53端口用于解析DNS
  • 每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符

1.2 作用

  • 正向解析:根据域名查找对应的IP地址
  • 反向解析:根据IP地址查找对应的域名

1.3 结构

模板解析

  • http: //www.baidu.com.cn./
    • http:// = http://
    • www = 主机名
    • baidu = 子域
    • com = 二级域
    • cn = 顶级域
    • . =根域
    • / = /

树状图
在这里插入图片描述

1.4 名词解释

根域
位于域名空间最顶层,一般用一个“.”表示

顶级域
一般代表一种类型的组织机构或国家地区,

  • .net (网络供应商)
  • .com(工商企业)
  • .org (团体组织)
  • .edu (教育机构)
  • .gov (政府部门)
  • .cn (中国国家域名)

二级域
用来标明顶级域内的–个特定的组织,国家顶级域下面的二级域名由国家网络部门统–管理,

  • .cn顶级域名下面设置的二级域名:
    • .com.cn、.net.cn、.edu.cn

子域
二级域下所创建的各级域统称为子域,各个组织或用户可以自由申请注册自己的域名

主机
主机位于域名空间最下层,就是一台具体的计算机,

  • 如www、mail 都是具体的计算机名字,可用www.sina.com.cn… mail.sina.com.cn. 来表示
  • 这种表示方式称为FQDN(完全合格域名),也是这台主机在域名中的全名

二、DNS服务器类型

2.1 主域名服务器

负责维护一个区域的所有域名信息,是特定的所有信息的权威信息源,数据可以修改。构建主域名服务器时,需要自行建立所负责区域的地址数据文件

2.2 从域名服务器

当主域名服务器出现故障、关闭或负载过重时,从域名服务器作为备份服务提供域名解析服务。从域名服务器提供的解析结果不是由自己决定的,而是来自于主域名服务器。构建从域名服务器时,需要指定主域名服务器的位置,以便服务器能自动同步区域的地址数据库

2.3 缓存域名服务器

只提供域名解析结果的缓存功能,目的在于提高查询速度和效率,但没有域名数据库。它从某个远程服务器取得每次域名服务器查询的结果,并将它放在高速缓存中,以后查询相同的信息时用它予以响应。缓存域名服务器不是权威性服务器,因为提供的所有信息都是间接信息。构建缓存域名服务器时,必须设置根域或指定其他DNS服务器作为解析来源

2.4 转发域名服务器

负责所有非本地域名的本地查询。转发域名服务器接到查询请求后,在其缓存中查找,如找不到就将请求依次转发到指定的域名服务器,直到查找到结果为止,否则返回无法映射的结果

三、使用BIND构建域名服务器

3.1 BIND服务端程序

  • 主要执行程序:/usr/sbin/named
  • 默认监听端口:53
  • 主配置文件:/etc/named.conf
  • 区域配置文件:/etc/named.rfc1912.zones
  • 区域数据配置文件(模板文件):/var/named/named.localhost

3.2 安装软件包

需要安装bind工具
通过yum -y install bind安装
在这里插入图片描述

3.3 配置正向解析

修改主配置文件

listen-on port 53 { 192.168.253.11; };     		 #监听53端口,ip地址使用提供服务的本地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";			#内存统计文件的位置
allow-query     { 192.168.253.0/24; 192.168.1.0/24; };				#允许使用本DNS解析服务的网段,也可用any代表所有

在这里插入图片描述


zone "." IN {				#正向解析 " . " 根区域
type hint;					#类型为根区域
file "named.ca";			#区域数据文件为named.ca,记录了13台根域服务器的域名和IP地址等信息
};
include "/etc/named.rfc1912.zones";				#包含区域配置文件里的所有配置

在这里插入图片描述

修改区域配置文件

  • vim /etc/named.rfc1912.zones
    • 先进入文本复制出模板
      在这里插入图片描述

vim /etc/named.rfc1912.zones				#进入配置文件
zone "cc.com" IN {							#正向解析“自定义名称”区域
type master;								#类型为主区域
file "cc.com.zone";							#指定区域数据文件为“根据前面自定义名称增加.zone”
allow-update { none; };						#忽略此行
};

在这里插入图片描述

配置正向区域数据文件

  • 进入目录可以看到正向区域文件的属组和其它文件不一样,不能直接修改
    在这里插入图片描述
  • cp -p named.localhost cc.com.zone
    • 保留源文件的权限和属主的属性复制
      在这里插入图片描述
  • vim /var/named/cc.com.zone
    • 进入文件内部修改
$TTL 1D				#有效解析记录的生存周期
@		IN SOA   cc.com.admin.cc.com.  (					  #当前的DNS区域名
											20210427	; serial	  #更新序列号,可以是10位以内的整数
											1D	; refresh	  #刷新时间,重新下载地址数据的间隔
											1H	; retry		  #重试延时,下载失败后的重试间隔
											1W	; expire	  #失效时间,超过该时间仍无法下载则放弃
											3H)	; minimum .	#无效解析记录的生存周期
        NS      cc.com      		   #DNS服务器名称
        A       192.168.253.11  	   #主机IP地址

在这里插入图片描述

www IN  A       192.168.253.21      #通过www解析出来的IP
mail IN A       192.168.253.31    	  #通过mail解析出来的IP
ftp IN CNAME    www 				  #CNAME代表ftp是www的别名,解析出来的IP一样(小写w)
* IN    A       192.168.253.11 		  #泛域名解析,除了上面的,其他解析出来都是这个
~                               

在这里插入图片描述

启动服务

  • systemctl start named
    • 开启服务
  • systemctl stop firewalld
    • 关闭防火墙
  • setenforce 0
    • 关闭安全认证
  • vim /etc/resolv.conf
    • 进入文件内修改为自己IP ,退出自动重启
      在这里插入图片描述

测试
在这里插入图片描述
在这里插入图片描述

设置Windows检测结果

  • 设置IP等信息
    在这里插入图片描述

  • 查看结果
    在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值