dtcms 模板下载 JavaWeb webstorm汉化包 服务注册中心 SLAM memory sass jar 郑州网络 java设计模式视频 js获取数组第一个元素 oracle限制查询条数 centos查看python版本 js原生点击事件 python模块 python断言assert实例 python编译环境 python编程题 python返回函数 java入门 javapackage java环境配置 java的数据结构 java入门课程 java线程中断 sql实例 unix操作系统下载 groupby 快捷精灵 dnf男柔道加点 机械键盘个别键位失灵 不屑表情包 js转数字 压枪软件 web聊天室 losecontrol alert换行 兽之祝福 mysql数据库恢复 桌面系统
当前位置: 首页 > 学习教程  > 编程语言

学会这个!!你也是大佬!!————Linux网络中DNS 正向解析与反向解析

2020/12/28 18:58:09 文章标签:

文章目录一、DNS系统(一)、DNS的定义(二)、DNS系统的作用(三)、 域名结构(四)、DNS的服务器类型二、构建DNS域名 服务器步骤**(一)、安装bind软件包****&…

文章目录

    • 一、DNS系统
      • (一)、DNS的定义
      • (二)、DNS系统的作用
      • (三)、 域名结构
      • (四)、DNS的服务器类型
    • 二、构建DNS域名 服务器步骤
      • **(一)、安装bind软件包**
      • **(二)、配置正向解析**
          • 1)查看需要修改的配置文件所在路径
          • 2)、修改主配置文件
          • 3)、修改区域配置文件,添加正向区域配置
          • 4)、配置正向区域数据文件
          • 5)、启动服务,关闭防火墙
          • 6)、在客户端的域名解析配置文件中添加DNS服务器地址
          • 7)、测试DNS解析
    • (三)、正向解析实操
    • (四)、配制DNS服务器反向解析

前言

在日常生活中人们习惯使用域名访问服务器,但机器间互相只认IP地址,域名与IP地址之间是多对一的关系,一个Ip地址不一定只对应一个域名,且一个域名只可以对应一个Ip地址,它们之间的转换工作称为域名解析,域名解析需要由专门的域名解析服务器来完成,整个过程是自动进行的。

一、DNS系统

(一)、DNS的定义

DNS是’’ 域名系统’'的英文缩写。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网。

DNS服务使用TCP和UDP的53端口,TCP的53端口用于连接DNS服务器,UDP的53端口用于解析DNS

每一级域名长度的限制是63个字符,域名总长度则不能烧过253个字符。

(二)、DNS系统的作用

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

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

(三)、 域名结构

域名结构:http://www.sina.com.cn./
http://主机名.二级域.顶级域根域/

DNS系统的分布式数据结构

在这里插入图片描述

树状结构最顶层称为根域,用 “.” 表示,相应服务器称为根服务器,整个域名空间解析权都归根服务器所有,但根服务器无法承担庞大的负载,采用“委派"机制,在根域下设置了一些顶级域,然后将不同顶级域解析权分别委派给相应的顶级域服务器,如将com域的解析权委派给com域服务器,以后但凡根服务器收到以com结尾的域名解析请求,都会转发给com域服务器,同样道理,为了减轻顶级域的压力,又下设了若干二级域,二级域又下设三级域或主机等。

1、根域
 位于域名空间最顶层,一般用一个 “.” 表示
 2、顶级域
 一般代表一种类型的组织机构或国家地区,
 如:.net (网络供应商)、.com(工商企业)、.org(团体组织)、 .edu(教育机构)、.gov(政府部门)、.cn(中国国家域名)
 3、二级域
 用来标明顶级域内的一个特定的组织,国家顶级域下面的二级域名由国家网络部门统一管理,如 .cn 顶级域名下面设置的二级域名:.com .cn .net .cn .edu .cn
 4、子域
 二级域下所创建的各级域统称为子域,各个组织或用户可以自由申请注册自己的域名
 5、主机
 主机位于域名空间最下层,就是一台具体的计算机
 如:www、mail 都是具体的计算机名字,可用www.sina.com.cn. 、mail.sina.com.cn. 来表示,这种表示方式称为FQDN(完全合格域名),也是这台主机在域名中的全名。

域名与IP地址之间是多对一的关系,一个IP地址不一定只对应一个域名,且一个域名只可以对应一个IP地址

(四)、DNS的服务器类型

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

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

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

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

二、构建DNS域名 服务器步骤

(一)、安装bind软件包

​ yum install -y bind

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GgxrwF1k-1607411820913)(C:\Users\潘潘\AppData\Roaming\Typora\typora-user-images\image-20201208142914965.png)]

(二)、配置正向解析

1)查看需要修改的配置文件所在路径
rpm -qc bind                   #查询bind软件配置文件所在路径

/etc/named.conf                #主配置文件

/etc/named/rfc1912.zonrs       #区域配置文件

/var/named/named.localhost     #区域数据配置文件

2)、修改主配置文件
vim  /etc/named.conf
options  {
    isten-on port 53 { 192.168.226.3; };    #监听53端口, Ip地址(DNS服务器的IP))使用提供服务的本地IP,也可用any表示所有
    listen-on-v6 port 53 {::1; };          #ipv6行如不使用可以注释掉或者删除
    directory  "/var/named";                #/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; };    #允许使用本DNS解析服务的网段,也可用any,代表所有网段都可访问
    .....
}  
zone "." IN {                #正向解析"."根区域
        type hint;           #类型为根区域
        file "named.ca";     #区域数据文件为named.ca,记录了13台根域服务器的域名和IP地址等信息
};
include "/etc/named.rfc1912.zones";  #包含区域配置文件里的所有配置
3)、修改区域配置文件,添加正向区域配置
vim  /etc/named.rfc1912. zones      #在文件里有模版,可复制粘贴后修改
zone  "panrenjun.com"  IN  {           #正向解析"panrenjun.com"区域
	type master;                   #类型为主区域
	file "panrenjun.com.zone";        #指定区域数据文件为panrenjun.com.zone
	allow-update  { none; };
};
4)、配置正向区域数据文件
cd  /var/named/
cp  -p  named.localhost  panrenjun.com.zone     #需要保留源文件的权限和属主的属性复制(-p)
vim /var/named/panrenjun.com.zone
$TTL 1D                                     #设置缓存解析结果的有效时间
@       IN  SOA   panrenjun.com.   admin.panrenjun.com.  (
                     0              ;  serial
                     1D             ;  refresh
                     1H             ;  retry
                     1W             ;  expire
                     3H   )         ;  minimum
      NS      panrenjun.com.        #记录当前区域的DNS服务器的名称(必不可少)
      А       192.168.226.3      #记录主机IP地址(必不可少)
IN   MX   10      mail.panrenjun.com.    #MX为邮件交换记录,数字越大优先级越低
www  IN   A       192.168.226.3      #记录正向解析www.panrenjun.com对应的IP
mail IN   A       192.168.226.4         #邮箱的正向解析地址
ftp  IN  CNAME    www               #CNAME使用别名, ftp是www的别名
*    IN  A        192.168.226.100     #泛域名解析, "*" 代表任意主机名

#"@"这里是一个变量,当前DNS区域名
#SOA标记用于同步主从服务器的区域数据,如更新序列号相同则不会更新
#"benet.com." 此为完全合格域名(FQDN) ,后面有个 "." 不能漏掉
#"admin.benet.com." 表示管理员邮箱,这里的 "@" 是变量,所以用 "." 代替
5)、启动服务,关闭防火墙
systemctl  start  named
systemctl  stop  firewalld
setenforce  0
#如果服务启动失败,可以查看日志文件来排查错误
tail   -f   /var/log/messages 
#如果服务启动卡住,可以执行下面命令解决
rndc-confgen   -r    /dev/urandom  -a
6)、在客户端的域名解析配置文件中添加DNS服务器地址
vim   /etc/resolv.conf     #修改完后立即生效
nameserver   192.168.80.10

vim   /etc/sysconfig/network-scripts/ifcfg-ens33        #修改完后需要重启网卡
DNS1=192.168.80.10
systemctl   restart   network
7)、测试DNS解析
host    www.benet.com
nslookup   www.benet.com    
#用来通过域名获取IP 地址

(三)、正向解析实操

1、首先关闭防火墙
在这里插入图片描述
附加:永久关闭setenforce
在这里插入图片描述在这里插入图片描述2、修改区域配置文件,添加正向区域配置在这里插入图片描述
在这里插入图片描述
修改好了wq保存

3、修改正向区域数据文件

这里先进入/var/named/复制一份name.localhost panrenjun.cm.zone做个备份

在这里插入图片描述
在这里插入图片描述我这里修改为:请看下图解析

在这里插入图片描述
4、启动named 服务
启动服务之前必须要关闭防火墙
在这里插入图片描述
5、 在客户端的域名解析配置文件中添加DNS服务器地址
在这里插入图片描述
6、因为vi/etc/resolv.conf是即时生效命令(一次性的关机之后就没了)这边就不需要重启网卡了直接测试DNS域名解析在这里插入图片描述
7、使用win10进行DNS解析
在这里插入图片描述在这里插入图片描述设置完先禁用网卡在启用
在这里插入图片描述在这里插入图片描述

(四)、配制DNS服务器反向解析

1)、修改区域配置文件,添加反向区域配置

vim  /etc/named.rfc1912.zone        #文件里有模版,可复制粘贴后修改
zone "80.168.192.in-addr.arpa" IN {       #反向解析的地址倒过来写,代表解析192.168.80段的地址
	type master; 
	file "benet.com.zone.local";       #指定区域数据文件为benet.com. zone.local
	allow-update ( none;  );
};

2)、配置反向区域数据文件

cd  /var/named/
cp  -p  named.localhost   benet.com. zone.local
vim   /var/named/benet.com. zone. local
$TTL 1D
@     	IN SOA benet.com.   admin.benet.com.  (     #这里的“@"代表192.168.80段地址
........
         NS     benet.com.
         А      192.168.80.10
10  IN  PTR    www.benet.com.
11  IN PTR    mail.benet.com.
#PTR为反向指针,反向解析192.168.80.200地址结果为www.nemet.com.

1、 先关闭防火墙,然后在修改区域配置文件
在这里插入图片描述
2、这里只要是域名都需要加 .(根域)。解析都是建立在根域基础上的在这里插入图片描述

最后重启一下name 服务。就可以反向解出域名了
在这里插入图片描述


本文链接: http://www.dtmao.cc/news_show_550137.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?