基础知识-DNS服务

发布时间:2026/6/29 21:59:42
基础知识-DNS服务 1. 概念名称: DNS: Domain Name System 域名系统作用: 用于域名解析的 域名—IP (DNS实现域名和IP之间的转换) DNS是访问公网的必备条件之一QQ和微信能够正常聊天, 但是打不开网页: DNS故障QQ和微信只有在登录的时候才会找到服务器通过DNS进行解析来分析IP, 但是后续登录后,再进行聊天是通过qq号来定位的,不需要考虑域名的问题问题1: 是否需要背诵一个首选DNS地址不能够DHCP自动获取, 因为普通用户自动获取的是管理员配上去的, 我们作为管理员是需要手工来配置的不能够百度搜一个, 因为百度也是需要通过DNS解析才能访问的记住一个首选DNS: 8.8.8.8 推荐: 北京网通: 202.106.0.20问题2: 是否需要背一个国外的DNS?不需要, 因为我们记住了一个DNS, 可以直接访问百度, 然后在百度搜国外的DNS, 这样就可以解决问题了2. hosts文件解释hosts的作用: 也可以用来做域名解析(临时解析(DNS里面不解析的域名,直接放在里面,比如steam社区的进入),特殊解析), 优先级大于DNS, 如果hosts里面有,直接取hosts里面的域名解析, 不会从首选DNS里面找hosts文件的路径: 注意Windows和Linux斜杠的方向Windows: C:\Windows\System32\drivers\etc\hostsLinux: /etc/hosts钓鱼网站的原理: 修改你hosts里面的域名解析, 把你常用的域名指向钓鱼网站的ip, 此时进入的就是钓鱼网站了钓鱼网站防范: 我们只要确认一级域二级域没有问题即可,因为一级域名二级域名是唯一的ta0ba0.comtaobao.com补充:Windows 和 Linux 的斜杠是反着的Linux 最左侧的 / 是根目录的意思,不能省略(省略就成了相对路径), 右侧的 /etc/ 斜杠可以省略(打了斜杠我们就晓得是/etc是目录, 不打斜杠我们就知道/etc/是文件,打不打都行,只要后面没有其他文件名就可以)目录和文件的概念绝对路径 vs 相对目录绝对路径: cd /etc/ 绝对路径的参照物是根目录 / , 不管你在哪执行都可以生效,因为参照物是根目录相对路径: cd etc/ 相对路径的参照物是当前你所在的位置为参照物, 比如 root:#, 此时就不能生效, 因为我们root下面没有etc目录怎么把Windows用户权限修提升:1 命令行切换为管理员用户(win 10 隐藏了管理员的权限, 环境变量每个用户是不同的)2 手工改文件权限(第一次改,系统会显示危险操作)DNS VS hosts是否可以使用hosts文件替代DNS服务?不可以hosts是静态文件, 所有的域名和IP存在里面,太大了,无法处理(主要原因,2^32的ip,文本超过80GB,根本打不开)hosts是静态文件, 域名更新处理麻烦(每天数不清多少个新网站诞生,多少个旧网站死亡, 临时解析,特殊解析)hosts是静态文件, 只针对单一电脑生效(所有人都要改, 不然不生效)DNS 的优点① 分布式: 全球分布13组根域名DNS服务器, 所有的DNS服务器都知道根域服务器的位置(我们解析域名的时候,找离我们最近的DNS服务器,这样压力就被平摊了)② 层次性: 根域管理一级域名,一级域管理二级域,二级域管理三级域缺点: 针对所有使用这个DNS的用户, 如果DNS被劫持了, 影响会很大(DNS被篡改,直接都访问到钓鱼网站),但是没有取代技术,必须使用根域: .一级域名: .com二级域名一级域名: .163.com三级域名: www.163.comFQDN(Fully Qualified Domain Name): 完全合格域名(域名书写的时候出现了根域) www.163.com.3 DNS服务原理DNS域名解析过程(顺序执行,哪一种资源消耗最少,就用哪个)客户端工作: 客户端想去查询域名: www.souhu.com, 在客户端输入这个域名客户端查询本机 hosts 文件没找到再去查询首选DNS服务器(手工配置的8.8.8.8)首选DNS服务器:1 查询首选DNS服务器本机解析域名(查的也是hosts), 可以作为二级域服务器所有的域名都保存在不同的首选DNS服务器里面, 如果恰好www.souhu.com在这个8.8.8.8的首选DNS, 就可以直接返回2 查询首选DNS服务器的缓存(缓存时间: 1天,超过这个时间就刷新)缓存(cache):① 优点: 保护后台服务器的读取性能的(缓存是放在内存里面的,后台服务器访问数量高的时候,假设第一个用户搜游戏本,会把数据库的数据遍历,然后返回结果,此时会把这样的结果直接放在缓存里面,第二个用户再搜游戏本,直接从缓存里面返回给用户,这样就节约了后台服务器的读取性能)② 缺点: 前后台数据不同步(间隔一段时间,前后台数据需要同步一下)、缓存的命中问题(关键字补全,商品分类(用户输入搜索的关键字不正规:游戏本(能打游戏的电脑))3 首选DNS服务器查询后端DNS服务器① 首选DNS服务器查询根域, 根域是否知道域名的IP地址, 根域返回一级域IP地址(根域管理一级域,一级域管理二级域…)-.com② 首选DNS服务器查询一级域, 一级域会返回二级域的IP-souhu.com③ 首选DNS查询二级域, 返回查询域名的IP地址-www.souhu.com4 首选DNS服务器把域名的IP记录在缓存中5 首选DNS服务服务器,把域名的IP返回给客户端两种查询方式递归查询: 客户端向首选DNS中的查询,要求首选DNS返回准确结果,如果不知道可以查询其他DNS服务器迭代查询: 首选DNS向后端DNS的查询, 允许后端DNS返回近似结果问题:虚拟机中搭建的首选DNS服务器, 是否可以访问真公网?可以, 原因: 所有的DNS服务器,都知道根域的IP(这样就可以完成解析过程)虚拟机中假首选DNS服务器,和真首选DNS服务,有什么区别?有区别真DNS的ip在根域里面注册过, 因此也可以看成二级域DNS, 首选DNS可以找到根域, 根域也可以找到真首选DNS假 DNS ip都是假的,没有在根域里面注册过, 因此根域找不到假的首选DNS为什么是二级域DNS, 因为在万网上注册的时候, 我们就选的域名, www.xiaobai.com xiaobai.com 就是二级域DNS服务器4 区域、资源记录、解析数据DNS: 区域–资源记录–解析数据 解析数据是放在资源记录里面的,资源记录是放在区域里面的概念解释:区域(Zone): DNS 服务器管理的最小管理单位,把同一后缀的域名打包成一块统一管理, 里面放资源记录① 正向区域: 域名-IP (sc.com)② 反向区域: IP-域名(网段: 168.166.10)资源记录 RR(Resource Record): 存放在区域文件里面的一条条配置条目, 所有解析数据全部放在资源记录里每一条资源记录包含: 域名,类型,TTL 缓存时间, 解析数据(IP/别名/邮件服务器…)解析数据: 每条记录里真正用来查询的内容: IP地址, 别名,邮件服务器…,存在资源记录里面Windows: 目录–文件–数据Linux: 文件–标题–数据(以这个理解)资源记录类型:SOA记录(Start of Authority 起始授权机构): FQDN、缓存时间(所有区域都群在) Fully Qualified Domain Name 完全合格域名 www.baidu.com.作用: 用来标记这个区域的权威DNS服务器是谁(记录的FQDN就是那台DNS服务器IP转成的域名),携带相关时间NS记录(Name Server 名称服务器): FQDN(所有区域都存在作用: 负责解析本区域域名的DNS服务器FQDN(域名转IP的查询工作)例子: 外部用户想要查 www.sc.com的IP① 先查找sc.com区域的NS记录② NS 记录写了dns1.sc.com. 说明要查sc.com的域名, 去问这台DNS服务器③ 系统再查 dns1.sc.com 这条 FQDN 对应的A记录, 拿到这台DNS服务器的IP所有的区域都有上面俩个记录,在一个区域上面俩个的FQDN需要一样(二级或者三级域名)A主机记录(Address):作用: 正向解析记录(域名–IP), 放入正向区域中PTR记录(Pointer 指针):作用: 反向解析记录(IP-域名), 放入反向区域中MX(邮件交叉,Mail eXchange)记录: 指定邮箱服务器路由优先级,只有搭建邮件DNS的时候, 才需要在DNS里面加这个东西CNAME(别名)记录: Linux会说SRV(服务)记录:例子:正向区域: 把域名翻译成IPsc.comSOA (FQDN,相关事件)NS (FQDN)A: (www.sc.com—IP)abc.comSOA (FQDN,相关事件)NS (FQDN)A: (www.abc.com—IP)sc.com.SOA dns.sc.com. adminsc.com (序列号 刷新 重试 过期 TTL)NS dns.sc.com.www IN A 168.166.10.89abc.com.SOA dns.abc.com. adminabc.com (…)NS dns.abc.com.www IN A 对应IP反向区域: IP解析成域名10.166.168 ip前三个数是网段SOA (FQDN,相关时间)NS (FQDN)PTR: (89(ip最后一个位-www.sc.com)10.166.168.in-addr.arpa.SOA dns.sc.com. adminsc.com (…)NS dns.sc.com.89 IN PTR www.sc.com.5 DNS实验实验准备:桥接网络,保证真实机和虚拟机网络通畅虚拟机和真实机,首选DNS服务器,指向虚拟机的IP建议关闭IPV6网络把真实机和虚拟机的首选DNS都设置为我们自己搭建的假的DNS(写虚拟机的IP我们需要搭建一个假的DNS服务器, 完成下面俩个问题的解释① 虚拟机中搭建的首选DNS服务器, 是否可以访问真公网?可以, 原因: 所有的DNS服务器,都知道根域的IP(这样就可以完成解析过程)② 虚拟机中假首选DNS服务器,和真首选DNS服务,有什么区别?(实验用域名访问没有出来)有区别, 真DNS的ip在根域里面注册过, 因此也可以看成二级域DNS, 首选DNS可以找到根域, 根域也可以找到真首选DNS实验步骤:添加角色服务器管理-添加角色-勾选DNS服务-安装安装完毕后, 真实机使用我们虚拟机搭建好的DNS服务器, 访问百度, 发现可以访问此时回答了第一个问题[虚拟机中搭建的首选DNS服务器, 是否可以访问真公网?] 因为所有的DNS服务器都知道根域, 直接通过根域一级一级的把域名解析成IP就可以访问了所有的DNS都保存了根域, 下面是我搭建好的DNS服务器里面的13组根域名配置DNS服务新建正向查找区域: 正向查找区域-新建区域-使用主要区域-填写根域名称(sc.com)-不允许动态更新-完成此时就建立了sc.com的正向区域, 自动生成了SOA和NS俩个资源记录类型SOA: 完全合格域名(FQDN)缓存时间NS: FQDN(完全合格域名)新建A记录:填写名称,IP地址(一定要写对)-添加主机然后我们可以在真实机来解析一下/访问一下我们的域名:www.sc.com 发现显示出来的是我们搭建的IIS服务, 说明我们在虚拟机搭建的DNS服务域名解析成功了, 只要使用的是这个DNS, 那么输入这个域名就会显示IIS服务页面, 而不是国外的那个页面指令: nslookup 域名不搭建反向区域是不影响网页访问的, 但是解析域名会报错(邮箱服务是必须要搭建反向区域新建反向查找区域: 新建区域-使用主要区域-写网段-不允许动态更新-完成新建PTR记录: 填写虚拟机IP地址主机名-确定再次使用nslookup来解析域名补充:主要区域(主DNS): 允许手工搭建本机域名,也允许去找根域访问公网的域名辅助区域(辅DNS): 不允许手工搭建本机域名,需要从主DNS同步本机域名, 允许去找根域访问公网的域名要想搭建辅DNS就必须要有主DNS, 辅DNS的本机数据是从主DNS同步过去的,这样访问压力过大, 可以搭建个主从集群, 一部分用主DNS来上网, 一部分用辅DNS来上网, 这样可以分摊访问压力, 此时如果需要维护数据,如:改一个域名或者改一个IP, 主DNS修改了,辅DNS就能直接同步过来, 不需要改俩次, 这样可以节约资源注意浏览器的缓存: 之前访问的是用8.8.8.8的DNS服务器访问的www.sc.com, 后面改成我自己搭建的DNS服务器, 再去访问www.sc.com, 可能会有缓存导致浏览器还是能够访问www.sc.com, 清掉缓存即可