DNS域名解析的分离解析

一.DNS介绍

        DNS域名解析是一种将域名转换为IP地址的服务,在互联网上访问网站时,输入的通常是网站的域名,而计算机在通信时则使用IP地址。因此,DNS域名解析就是将用户输入的域名解析为对应的IP地址,以便计算机能够找到并访问目标网站。

具体来说,DNS域名解析的过程如下:

  1. 当用户输入一个域名并尝试访问时,计算机会首先向本地DNS服务器发出查询请求。
  2. 本地DNS服务器会检查其缓存中是否有该域名的解析记录。如果有,则直接返回对应的IP地址;如果没有,则向根域名服务器发出查询请求。
  3. 根域名服务器会返回该域名所属顶级域名(如.com、.cn等)的权威DNS服务器的地址。
  4. 本地DNS服务器再向该权威DNS服务器发出查询请求,获取该域名的IP地址。
  5. 权威DNS服务器会返回该域名的IP地址给本地DNS服务器。
  6. 本地DNS服务器将获取到的IP地址缓存起来,并返回给用户计算机。

这样,用户计算机就可以根据获取的IP地址访问目标网站了。同时,由于本地DNS服务器已经缓存了该域名的解析记录,所以下次用户再次访问该网站时,可以直接从缓存中获取IP地址,提高了访问速度。

二.分离解析简介

        分离解析的域名服务器实际也是主域名服务器,这里主要是指根据不同的客户端提供不同的域名解析记录。如来自内网和来自外网的客户端(不同网段)请求解析同一域名时,为其提供不同的解析结果。

 如何进行相关配置呢?在下面我将在一个地址为192.168.10.101/24的主服务器上演示相关配置。

三.实现分离解析

1.部署环境

  • ifconfig命令查看网卡的名称
  • 为服务器添加两个网卡

        ens33网卡的桥接不变(NAT模式)→内网客户机192.168.10.106(NAT模式)

        ens36网卡桥接到仅主机模式→外网客户机172.16.16.106,桥接也为仅主机模式

  • 修改两个网卡的IP地址
[root@localhost ~]# cp /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-ens36
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33         //修改其IP地址为192.168.10.101
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens36         //修改其IP地址为173.16.16.101
[root@localhost ~]# systemctl restart network

注意修改完成后要使用systemctl restart network 重启网络

  • 安装bind软件包

bind软件包提供了完整的DNS功能,包括域名解析、区域管理和反向解析等;是目前世界上使用最为广泛的DNS服务器软件。

[root@localhost ~]# yum -y install bind
[root@localhost ~]# systemctl enable named            //设置开机自启

安装完成后就到了要配置DNS服务器的时候了。

  • 修改DNS配置文件
    [root@localhost ~]# vim /etc/named.conf 
    options {
            listen-on port 53 { any; };                            //将监听地址修改位任何地址
            listen-on-v6 port 53 { ::1; };
            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     { any; };                              //允许任何主机查询
    };
    //将原有的缓存DNS服务器注释掉
    /*zone "." IN {
           type hint;
          file "named.ca";
    };
    */
    
    //设置本地的主DNS服务器
    view "lan"{                                            //创建名为“lan”的视图
            match-clients{192.168.10.0/24;};               //指定该网段地址可以访问该视图  
            zone "nei.com" IN{                             //创建一个名为“nei.com”,类别为Intenet类的DNS区域
            type master;                                   //此DNS服务器是“nei.com”区域的主服务器
            file "lan.com.zone";                           //指定了包含“nei.com”区域信息的文件的名称和位置
            };
    };
    
    
    //设置外网访问的主DNS服务器
    viwe "wan"{
            match-clients{any;};
            zone "nei.com" IN{
            type master;
            file "wan.com.zone";
            };
    };
    
  • 创建区域文件
  1. 内部区域文件 
    [root@ns1 ~]# cd /var/named/
    
    [root@ns1 named]# vim lan.com.zone         //文件名要与named.conf设置的一致
    $TTL 1D
    @       IN SOA  nei.com.   admin.bt.com. (
                                            0       ; serial
                                            1D      ; refresh
                                            1H      ; retry
                                            1W      ; expire
                                            3H )    ; minimum
    @    IN  NS  ns1.nei.com.
    ns1  IN  A   192.168.10.101
    www  IN  A   192.168.10.102
    mail IN  A   192.168.10.103
    ftp  IN  A   192.168.10.104
    
  2. 外部区域文件
    [root@ns1 named]# vim wan.com.zone 
    $TTL 1D
    @       IN SOA  nei.com.  admin.bt.com. (
                                            0       ; serial
                                            1D      ; refresh
                                            1H      ; retry
                                            1W      ; expire
                                            3H )    ; minimum
    @    IN NS  ns1.nei.com.
    ns1  IN A   173.16.16.101
    www  IN A   173.16.16.102
    mail IN A   173.16.16.103
    ftp  IN A   173.16.16.104

    然后键这两个文件的属组改为named,启动named服务;即可去测试。

  • 测试

外网客户端 

[root@localhost ~]# yum -y install bind-utils
[root@localhost ~]# nslookup www.nei.com
Server:		173.16.16.1
Address:	173.16.16.1#53

Name:	www.nei.com
Address: 173.16.16.101

内网客户端

[root@localhost ~]# yum -y install bind-utils
[root@localhost ~]# nslookup www.nei.com
Server:		192.168.1.1
Address:	192.168.1.1#53

Name:	www.nei.com
Address: 192.168.1.5

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/636945.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Spark-广播变量详解

Spark概述 Spark-RDD概述 1.为什么会需要广播变量? 广播变量是为了在分布式计算环境中有效地向集群中的所有节点广播大型只读数据集而设计的。 在分布式环境中,通常会遇到需要在所有节点上使用相同的数据集的情况,但是将这些数据集复制到每个…

留学培训行业PaaS应用系统架构的设计与实践

随着留学需求的增长和教育培训市场的不断扩大,留学培训行业正面临着越来越多的挑战和机遇。在这个背景下,利用PaaS(Platform as a Service)平台来构建留学培训行业的应用系统架构,将成为提升服务质量和效率的重要手段。…

【热门话题】一文带你读懂公司是如何知道张三在脉脉上发了“一句话”的

按理说呢,A公司和脉脉属于不同的平台,而且脉脉上大家可以匿名发言,所以,即便我坐在你边上,我发了一句话上去,你也不知道是谁发的。但通过一些技术,我们却可以分析出,公司是如何知道张…

路由聚合和VRRP技术

实验拓扑图: 实验需求 1、内网IP地址使用172.16.0.0/16 2、SW1和SW2之间互为备份; 3、VRRP/stp/vlan/eth-trunk均使用; 4、所有pc均通过DHCP获取IP地址; 5、ISP只配置IP地址; 6、所有电脑可以正常访问ISP路由器环…

《2024中国AI大模型产业图谱1.0版》重磅发布

‍ 数据猿出品 本次“数据猿2024年度三大媒体策划活动——《2024中国数据智能产业图谱1.0版》”正式发布。下一次版本迭代将于2024年7月底发布2024年2.0版,敬请期待,欢迎报名。 大数据产业创新服务媒体 ——聚焦数据 改变商业 随着科技的飞速发展&#…

在vue中实现下载文件功能

实际操作为&#xff0c;在表格中 我们可以获取到文件的id&#xff0c;通过插槽就可以实现 <template #default"scope"><el-button type"text" click"handleDown(scope.row)"><span>下载</span></el-button> </…

吃透1850道真题和解析备考AMC8和AMC(1020240524持续发布)

多做真题&#xff0c;吃透真题和背后的知识点是备考AMC8、AMC10有效的方法之一&#xff0c;通过做真题&#xff0c;可以帮助孩子找到真实竞赛的感觉&#xff0c;而且更加贴近比赛的内容&#xff0c;可以通过真题查漏补缺&#xff0c;更有针对性的补齐知识的短板。 今天我们继续…

善用KEGG数据库挖掘目的基因

有关KEGG的分析在很多已发表的论文中都十分常见&#xff0c;涉及到的方向也很广泛&#xff0c;比如&#xff1a;代谢组、表观组、转录组等等。通常得到相关的基因集或者代谢物后&#xff0c;我们都希望能够快速了解它们的蛋白功能和涉及的调控机制&#xff0c;从而进一步锁定接…

Substrate 优秀学员专访|从前端到高级测试工程师,他坚定奔赴 Web3 红海

4 月 29 日&#xff0c;第 14 期「Substrate 区块链开发入门课」课程圆满毕业收官&#xff0c;课程涌现了新一批优秀毕业学员&#xff0c;他们即将带着自己在课程中学习的新知识、新经验&#xff0c;奔赴 Web3 行业各个赛道。在这些学员中&#xff0c;有这样一位开发实力突出、…

线上研讨会 | 探索非标自动化产线行业的数转智改之路

报名链接&#xff1a; 2024 达索系统工业大发展在线研讨会 (tbh5.com)

2024电工杯A题保姆级分析完整思路+代码+数据教学

2024电工杯A题保姆级分析完整思路代码数据教学 A题题目&#xff1a;园区微电网风光储协调优化配置 接下来我们将按照题目总体分析-背景分析-各小问分析的形式来 总体分析&#xff1a; 题目要求对园区微电网进行风光储协调优化配置&#xff0c;具体涉及三个园区&#xff08…

Python魔法学院:PySpider篇——网络世界的探险与征服

Hi&#xff0c;我是阿佑&#xff0c;迎来到Python魔法学院&#xff0c;今天阿佑要带大家学习的是PySpider篇——一门让你在网络世界中探险与征服的魔法课程。从环境搭建到高级功能应用&#xff0c;再到性能优化&#xff0c;每一个章节都是成为数据大师的必经之路&#xff01; 文…

深度学习之基于YOLOV5的口罩检测系统

欢迎大家点赞、收藏、关注、评论啦 &#xff0c;由于篇幅有限&#xff0c;只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 一、项目背景 随着全球公共卫生事件的频发&#xff0c;口罩成为了人们日常生活中不可或缺的一部分。在公共场所&am…

Nacos 微服务管理

Nacos 本教程将为您提供Nacos的基本介绍&#xff0c;并带您完成Nacos的安装、服务注册与发现、配置管理等功能。在这个过程中&#xff0c;您将学到如何使用Nacos进行微服务管理。下方是官方文档&#xff1a; Nacos官方文档 1. Nacos 简介 Nacos&#xff08;Naming and Confi…

Qt for Android 乱码问题

java文件乱码 导致编译失败 使用notepad等查看java文件的编码&#xff0c; 修改成utf-8&#xff0c;否则会因为乱码编译失败&#xff0c; 记住是utf8不是utf8-bom. 做如下修改确保utf8文件不被修改掉。 编译时错误显示的是乱码 如果开发其他乱码再改回&#xff0c; 原本是Sys…

Q-Learning学习笔记-李宏毅

introduction 学习的并不是policy&#xff0c;而是学习critic&#xff0c;critic用来评价policy好还是不好&#xff1b;一种critic&#xff1a;state value function V π ( s ) V^\pi(s) Vπ(s)是给定一个policy π \pi π&#xff0c;在遇到state s s s之后累积的reward的…

docker所在磁盘空间不足 迁移数据

1.查看原始目录docker info | grep "Docker Root Dir" 一般在/var/lib/docker 2.停止docker service docekr stop 3.移动数据 注意 移动前不要创建docker目录&#xff01; mv /var/lib/docker /home/docker 4.进入目录查看是否与原始目录相同&#xff0c;确认一…

操作系统总结(2)

目录 2.1 进程的概念、组成、特征 &#xff08;1&#xff09;知识总览 &#xff08;2&#xff09;进程的概念 &#xff08;3&#xff09;进程的组成—PCB &#xff08;4&#xff09;进程的组成---程序段和数据段 &#xff08;5&#xff09;程序是如何运行的呢&#xff1f…

微服务架构下Docker容器技术与Kubernetes(K8S)

Kubernetes、微服务和Docker容器技术的结合提供了一个强大、灵活且高效的平台&#xff0c;能够应对现代应用程序的复杂性和动态性。Kubernetes的自动化管理、服务发现、负载均衡和配置管理&#xff0c;与Docker的标准化打包和运行环境相结合&#xff0c;最大化地发挥了微服务架…

听说京东618裁员没?上午还在赶需求,下午就开会通知被裁了~

文末还有最新面经共享群&#xff0c;没准能让你刷到意向公司的面试真题呢。 京东也要向市场输送人才了? 在群里看到不少群友转发京东裁员相关的内容&#xff1a; 我特地去网上搜索了相关资料&#xff0c;看看网友的分享&#xff1a; 想不到马上就618了&#xff0c;东哥竟然抢…