在互联网中,使用IP地址与服务器进行通信根本行不通,原因如下:
1.不好记忆如:学校官网的IP地址是"39.104 .16.126",难以记忆;
2.IP地址会经常发生变更,所以通过IP地址去访问某台机器就容易出现无法访问的情况;
此时DNS就应运而生了;那DNS解决了什么问题
DNS主要用来维护域名与IP地址的对应关系。将(好记忆的字符串)与(不好记忆的P地址)
进行关联;
jd.com –> 1.1.1.1
tb.com –>2.2.2.2
域名系统 DNS (Domain Name System)主要功能是将用户请求的域名转换为IP地址;DNS就像一位"翻译官”,它的基本工作原理可以用下图来表示;
由于因特网的用户数量wps office 的官方下载地址是什么较多,所以因特网在命名时采用的是层次树状结构的命名方法。
互联网中的域名是有结构有规划的;由于域名进行了分级,在进行域名和P地址解析时能更容易找到;。域名具备全球唯一性;
根域:知道所有顶级域名服务器的域名和地址wps官网最新下载的地方在哪
全世界只有13组根服务器,其中10台设置在美国,另外的三台设置与英国,瑞典,日本;因为UDP端口的原因,不能在扩建新的服务器了。 顶级域:知道所有顶级域名服务器下注册的所有二级域名的IP地址
顶级域有两种:通用域(com、cn)域和国家域(hk、 jp);顶级域名由ICANN(互联网名称与数字地址分配机构)委任的注册机构负责运行; 二级域:负责一个区的域名服务器(taobao.com)
无需到ICANN进行申请,只需要到运行顶级域的注册机构(阿里、腾讯)去申请即可如果申请的域名没有被注册,也没有被注册为商标,仅需要缴纳一笔年费即可获取 三级域或主机名:
根据服务器所提供的业务功能,选择配置对应的主机名称解析记录,比如(www、ops)
下面的示例则概述了本地解析器没有域名对应的缓存,DNS 查询所需的步骤:
1、用户在浏览器中输入example.com,则向本地域名服务器开始进行递归查询。
2、本地域名服务器采用迭代查询的方法,向根域名服务器进行查询。
3、根域名服务器告诉本地域名服务器,下一步应该查询的顶级域名服务器﹒ TLD(top-level domain)的IP地址。·
4、本地域名服务器向顶级 wps的官网最新下载网址在哪里域名服务器.com TLD进行查询。
5、.com TLD服务器告诉本地域名服务器,下一步查询example.com权威域名服务器的IP地址。·
6、本地域名服务器向example.com 权威域名服务器发送查询。
7、example.com权威域名服务器告诉本地域名服务器所查询的主机lP地址。
8、本地域名服务器最后把查询的IP地址响应给浏览器。
1.4.1 递归查询
是指DNS服务器在收到用户发起的请求时,必须向用户返回一个准确的查询结果。如果DNS服务器本地没有存储与之对应的信息,则该服务器需要询问其他服务器,并将返回的查询结构提交给用户。
1.4.2 迭代查询
是指DNS服务器在收到用户发起的请求时,并不直接回复查询结果,而是告诉另一台DNS服务器的地址,用户再向这台DNS服务器提交请求,这样依次反复,直到返回查询结果。
1.5.1 A记录
A 记录可实现将域名指向 IP 地址,也称为正向解析;正向解析:域名–>DNS服务返回 IP
1.5.2 PTR
PTR记录可以实现IP查找域名,也称为反向解析;
反向解析:IP–>DNS服务返回域名;(主机域 内网使用;)
1.5.3 CNAME
当需要将域名指向另一个域名,再由另一个域名提供 IP 地址,就需要添加 CNAME 记录;最常用 CNAME 的场景有 WAF、CDN
1.5.4 NS
客户端查询DNS服务,如当前DNS无法提供权威解析,则返回一条NS记录;客户端在通过 NS记录中提供的DNS权威服务器进行解析;
企业常规做法:购买域名、完成ICP备案,并使用公网DNS服务(万网…)进行免费(付费)解析·既然企业可以通过公网来完成域名解析&wps的免费版的下载的入口#xff0c;为何还要自建IDNS呢?
1.内网web服务,例如: jenkins、 jumpserver、elk等,不适合解析至公网
2.内网中间件服务db、mql等,会经常迁移或扩缩容,应该使用域名对外提供,便于维护;
3.服务器都有hostname,hostname应该设置为FQDN,如何维护主机名和主机的内网P的关系;
FQDN:(Fully Qualified Domain Name) FQDN = Hostname + DomainName
综上:我们需要构建至少—套企业内部的DNS服务;
BIND(由美国加州大学开发并且维护的)、BIND`是一个开源、稳定、且应用广泛的DNS服务。
开源:指BIND服务源代码是开放的;稳定:指BIND服务运行非常稳定;广泛:政府企业、单位机构、学校、等;
BIND提供(域名解析服务、权威域名服务、DNS调试工具)
域名解析服务:将域名解析为IP地址
权威域名服务:能从该服务器查询到完整域名对应的IP地址,则这台服务器就算权威解析;
DNS调试工具:主要提供DNS客户端调试工具,供客户端使用;
1.环境准备
2.安装wps 的官网最新下载的网站
Bind的安装非常简单,只需要通过yum 即可完成安装;bind提供主程序包;bind-utils提供工具包;
2.客户端解析验证
1.配置 DNS服务器指向:在 /etc/resolv.conf 里配置 DNS的 ip 地址
3.BIND配置文件
自定义域分为如下两类:
主机域(内网):
主机域其实是一个假的域名;主机域是不能解析到互联网上;主机域它只对局域网提供服务;
业务域(公网):
业务域一般都是真实可用的;业务域是需要对外网用户提供服务的域名;
2.4.1 自定义区域配置文件
区域 zone 文件定义在 /etc/named.conf 配置;
也可以配置在自定义的其他文件里,并在 named.conf里 include声名一下
注意文件的权限,属主 root 属组 named, 文件权限 640
自定义一个域名:
1.自定义区域配置文件;(告诉bind服务,我提供某某的解析,数据库文件位置)
2.自定义区域数据库文件:
自定义域
自定义数据库文件
注:;为注释
3.检查配置文件语法
4.检查区域数据库文件配置
5.重载DNS服务器
6.客户端测试解析域名
用户通过DNS服务器172.16.1.91解析www.job.com。
1.添加job.com区域配置文件
2.添加区域数据库文件,配置NS记录,返回 DNS权威服务器地址
3.该域的DNS权威服务器为172.16.1.91
4.添加该域的CNAME解析记录,解析至 www.bertwu.com域名上
1.添加域配置文件wps的官网下载地方
2.添加数据库表文件
3.重启并测试
反向区域文件名称为 逆向网络地址 加 .in-addr.arpa. 后缀组成反向区域数据库文件 完全格式为1.16.172.in-addr.arpa.(DNS服务器地址为172.16.1.91时)
1.新增区域配置文件,在主/etc/named.conf中新增反向区域配置
2.配置数据库配置表文件
3.检查配置语法重启
4.测试
就是查询本机不存在的域名,会帮你查询。如果关闭,只能查询本机已经配置的域名。
如果要建立一个授权域名服务器,仅提供本地已存在域名解析;那么将 recursion 参数设置 no;如果要建立一个递归 DNS 服务器,那么需要将 recursion 参数设置 yes;如果递归 DNS 服务器有公网 IP 地址,则需要开启访问控制功能,只有合法的用户才可以发起查询。
参数选项作用recurisonyes/no是否开启递归查询请求allow-recursion`{address_match_listany
3.2.1 开启递归查询
BIND默认配置中的 recurison 参数是启用的;
1.配置仅允许 172.16.1.0 网段用户可以查询(可选);
2.使用客户端查询系统中存在的域名;
3.使用客户端查询系统中不存在的域名(让BIND进行递归查询,后续进行迭代查询);
1.查询存在BIND服务器中的域名
2.查询不存在BIND服务器中的域名
3.2.2 关闭递归查询测试
1.修改/etc/named.conf文件
2.查询BIND服务器没有的域名,会提示警告
3.查询BIND已有的域名,不受影响
辅助DNS是DNS容灾备份服务:在主DNS和辅DNS之间建立区域数据传输机制,当主DNS遇到故障或者服务中断时,辅DNS仍可以继续提供解析服务,因此保障业务稳定运行。
辅助DNS的优势:wps office的免费版下载地方是什么(金山wps官网最新首页下载)
容灾备份,降低业务中断风险:主DNS系统故障,辅助DNS可继续提供域名解析服务,保障业务可用性。负载均衡,流量均摊降低负载:当辅助DNS与主DNS同时对外提供解析服务时,可以达到流量负载均衡的效果。
4.3.1 环境准备
1.确保防火墙规则开放(建议关闭);
2.保持主从服务器时钟一致;
3.搭建完主从后,若修改主服务器域配置,Serail Number 必须递增,否则不同步;
4.3.2 主辅同步配置要点
1.主DNS修改named.conf配置文件,在option段添加如下内容:
添加 allow-transfer:允许哪些IP地址能同步Master配置信息;添加also-notify:Master主动通知Slave域名变发生了变更;
2.辅DNS修改named.conf配置文件:
添加masterfile-format text:同步的文件类型修改为text否则文件类型为data;辅助DNS添加对应的区域配置文件,类型为 slave,同时masters 参数指向主DNS地址;辅助DNS不可主动修改DNS数据库文件;
4.3.3 Master服务器配置
1.区域配置文件
2.添加区域数据文件(需要多添加一条NS记录)
3.检测语法,重启服务
4.3.4 Slave服务器配置
1.安装bind服务
2.修改并添加区域配置文件
4.最终的文件如下
5.检查语法重启服务
4.3.5 测试主辅解析
4.3.5 测试主辅同步
主新增一条解析记录,然后滚动 serial
测试
查看辅,可以看到的确将新的解析记录同步过来了
4.3.6 配置DNS高可用
1.linux配置
2.windows配置
5.3.1 父域配置(Master)
1.区域配置文件此前可以复用之前主辅配置,所以无需修改;
2.区域文件数据库文件,将 ops 三级子域授权给子域服务器;
5.3.2 子域配置
1.安装bind
2.修改主配置文件,然后增加子域的配置文件
3.添加区域数据数据库文件
4.检查语法,启动服务
5.测试
解析父域名
问题:由于父域与子域互相维护不同的区域配置,它们之间并不存在任何的联系,所以子域在解析父域的域名时,它并不会直接通过父域来获取权威的解析记录,那它会怎么做呢?
第一步:它会先找顶点根域;
第二步:寻找找 com 域对应的 DNS 服务器;
第三步:寻找 bertwu 域对应的 DNS 服务器,而后获取 www 对应的解析记录;这种查找模式是由 DNS 的机制所决定的;
解决的方法:明确告诉子域,让其能找到父域进项查询解析,而无需查找根域;(需要配置 DNS 的转发)
转发指的是将域名查询请求,转至某一台服务器解析(被转发的服务器必须允许为当前服务器做递归)
转发分为两类;
区域转发:仅转发对某特定区域的解析请求;全局转发:针对本地没有通过 zone 定义的区域查询请求,统统转发;
转发参数:
全局转发示例配置(所有本地不存在的域名都进行转发)
区域转发示例配置(符合该区域则进行条件转发)
6.3.1 子域配置转发
1.在子域服务器上,添加父域的域名,然后配置转发;
2.检查语法并重载
3.通过子域的地址解析父域的域名
智能DNS就是根据用户的来源地域,自动智能化判断来路IP返回给用户,而不需要用户进行选择;
传统DNS解析,不判断访问者来源,会随机选择其中一个IP地址返回给访问者。智能DNS解析,会判断访问者的来源,为不同的访问者智能返回不同的IP地址,可使访问者在访问网站时可获取用户指定的IP地址,能够减少解析时延,并提升网站访问速度。
比如一个企业的站点三个运营商的带宽都有:电信、联通、移动;同样来自三个不同 运营商网络的访问用户,假设电信用户访问企业网站的时候,智能DNS会自动根据IP判断,返回电信服务器节点IP给电信用户,其他运行商也同理;
电信用户:访问 www.bertwu.com 返回1.1.1.1联通用户:访问 www.bertwu.com 返回2.2.2.2移动用户:访问 www.bertwu.com 返回3.3.3.3
实现智能DNS需要VIEW视图以及ACL访问控制列表协同完成;
7.2.1 ACL访问控制
访问控制列表(Access Control Lists,ACL)
ACL访问控制列表,是用来限制哪些主机可以通过DNS查询,哪些不可以;系统默认内置了四种ACLany:允许所有主机节点查询;none:拒绝所有主机节点查询;localhost:仅允许本地接口网络主机查询;localnet:本地子网所有IP;
当然内置的可能无法满足企业需求,所以我们也可以自定义ACL规则;
定义的acl规则如何使用
7.2.2 VIEW视图功能
view 语句定义了视图功能,视图是BIND9提供的强大功能,允许DNS服务器根据不同的客户端,请求相同的域名,但返回不同的解析结果;
view语法示例:
维护一个主机域;根据不同环境的IP地址,查询相同域名,返回不同的结果;(企业常用)维护一个业务域,根据不同的运行商IP地址,解析到不同的地址;(需要大量IP地址库)
7.3.1wps office免费版下载的地址是多少 定义ACL规则
7.3.2 总配置文件如下
默认域名解析与测试环境保持一致
生产环境数据库
默认环境数据库,只需要对test目录做 一个软连接到default目录,注意权限属组为named
7.3.3 测试不同ip请求同一域名www.example.com 返回不同解析
7.3.4 多域名智能DNS实现
只需要在view视图中定义zone 然后写相应的zone区域数据库文件即可
需要default返回测试环境定义的ip 只需要给default/bertwu.com.zone为 test下面对应的文件的软连接或硬连接即可。
基于TSIG wps电脑版的下载的地址是多少 KEY实现多view主从同步,TSIG KEY是基于对称密钥加密技术实现的DNS报文认证机制。·密钥生成后存放至通信双方的配置文件中,报文传送前使用对称加密技术;
7.4.1生成TSIG-KEY
使用BIND自带的工具ddns-confgen生成 TSIG-KEY,每个view需要一对TSIG-KEY
执行三次,得到三对对称秘钥
master主配置文件
slave从配置文件
测试
master :
slave:
修改vmnet8网卡
删除本地hosts文件,然后浏览器测试。