DNS解析相关知识点梳理

一、DNS解析的背景

由于DNS域名在计算机处理比较麻烦,所以要把它解析成标准的ip,比较ip格式是固定的,计算机处理起来比较方便。

二、DNS解析的过程

  1. 首先,会在本地hosts表解析;
  2. 如果hosts表找不到,就会到本地域名服务器解析,本地域名服务器具体是哪个,可以从配置中看到。如果是windows,可以用ipconfig查看,DNS服务器这一项就是本地域名服务器,如果是linux,可以查看/etc/resolv.conf文件中的相应配置;
  3. 本地域名服务器如果找不到,就会向根域名服务器发起解析,这个过程是迭代解析的过程;(如果是局域网,一般就没有这个过程,只是到本地域名服务器解析就结束了);

三、DNS域名相关linux命令

  1. dig(不走本地hosts表)
  2. nslookup(不会先走本地hosts表)
  3. ping会走本地hosts表

四、named服务相关配置

  • 主配置文件 named.conf
  • options中directory指定了zone文件存放位置,also-notify指定了通知更新的(master需要填),allow-transfer(master需要)可以指定那些slave可以来获取zone文件。zone标签里面可以指定master(slave需要)
  • zone文件(真正的解析规则文件)

五、DNS缓存清除(linux本身是没有dns缓存的,要缓存得使用nscd等服务实现)

  • linux环境下, /etc/init.d/nscd restart(前提是OS端有nscd缓存服务启动,常用的dns缓存服务有nscd,bind)
  • windows环境下, ipconfig/flushdns

六、dig服务返回详解

  • answer section中返回端数字是秒,60即60秒;
  • dig -x ip,可以根据ip查到对应的域名

七、linux下resolv.conf文件详解

resolv.conf的关键字主要有四个,分别是:

  • nameserver //定义DNS服务器的IP地址
  • domain //定义本地域名
  • search //定义域名的搜索列表
  • sortlist //对返回的域名进行排序

search和domain表示当我们请求解析的域名写的不完整时,比如我们想要请求解析www.sohu.com,但我们只使用www(nslookup www),这时domain和search就会将其补齐为www.sohu.com。另外,domain和search同时配置时,谁在后面谁就生效。通常可以用来配置后缀,比如sznsh-op.com,这时候ping xxx,就会自动补全为ping xxx.sznsh-op.com。(经测试,发现nslookup也会补全,dig则不会。)

options关键字可以添加一些参数,场景如下

  • options timeout:1,如果出现长时间域名查找问题,可以定义一个超时时间,超过之后会使用备用域名服务器;
  • otions attempts:1 重试次数,超过次数则使用备用域名服务器

以上两个参数,默认情况下前者是5s后者是2次。

八、关于dns缓存时间的小结

  • 1、浏览器DNS缓存的时间跟DNS服务器返回的TTL值无关。

  • 2、Java的网络应用程序的DNS缓存是由JVM的缓存策略控制的

  • 3、OS缓存会参考DNS服务器响应的TTL值,但是不完全等于TTL值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值