网站后台搭建教程,张家口网站建设公司,网站后台管理模板html,网站后台文本编辑器Linux DNS解析原理与配置
1、DNS缓存
作用#xff1a;
程序客户端、下游的 DNS 服务器每次查询 DNS 成功之后#xff0c;通常会将该 DNS 记录缓存一段时间#xff0c;避免频繁发出查询请求的耗时。
Linux下的DNS缓存#xff1a;
Linux 系统默认不会在本地建立 DNS 缓存…Linux DNS解析原理与配置
1、DNS缓存
作用
程序客户端、下游的 DNS 服务器每次查询 DNS 成功之后通常会将该 DNS 记录缓存一段时间避免频繁发出查询请求的耗时。
Linux下的DNS缓存
Linux 系统默认不会在本地建立 DNS 缓存可以安装 nscd、dnsmasq 等工具提供 DNS 缓存。
2、配置DNS的三种方式 2-1、本地hosts 修改本地hosts文件利用hosts自动解析域名到ip vim /etc/hosts 123.123.123.123 www.baidu.com 124.123.123.123 www.qq.com 2-2、修改网卡配置文件 假设我们的网卡名为eth0那我们可以修改配置文件/etc/sysconfig/network-scripts/ifcfg-eth0的内容增加dns规则 vim /etc/sysconfig/network-scripts/ifcfg-eth0从而添加规则 例如: DSN1114.114.114.114 DNS2xxx.xxx.xxx.xxx DNS3xxx.xxx.xxx.xxx 重启网络服务service network restart 重启服务后会在/etc/resolv.conf自动生成一样的DNS 2-3、修改系统默认DNS配置 linux上没有安装systemd-resolved这类DNS解析代理服务时 修改配置文件/etc/resolv.conf添加多条规则 例如: vim /etc/resolv.conf nameserver 114.114.114.114 nameserver 123.123.123.123 linux上安装了systemd-resolved这类DNS解析代理服务时 修改/etc/systemd/resolved.conf添加多条规则 例如: [Resolve] DNS114.114.114.114 DNS8.8.8.8 重启DNS代理服务systemctl restart systemd-resolved.service 查看是否生效systemd-resolve --status $ systemd-resolve --status Global DNS Servers: 114.114.114.114 8.8.8.8 DNSSEC NTA: 10.in-addr.arpa 16.172.in-addr.arpa 168.192.in-addr.arpa 17.172.in-addr.arpa 18.172.in-addr.arpa 19.172.in-addr.arpa
3、DNS解析优先级
本地/etc/hosts 网卡配置文件DNS服务地址 系统DNS配置文件/etc/resolv.conf
4、DNS多个nameserver的情况
example
nameserver 192.168.0.2
nameserver 127.0.0.1nameserver优先级
按照定义顺序从上至下默认情况
DNS解析流程 1、查询192.168.0.2如果服务器可以连接则响应对应ip或者响应无记录。 2、如果192.168.0.2服务器不可达则查询127.0.0.1
注意
192.168.0.2网络可达但没有查询出对应dns记录不会继续查询下面的dns服务器了。
解析过程debug host -v debug-domain
# host -v www.baidu.com
Trying www.baidu.com
;; -HEADER- opcode: QUERY, status: NOERROR, id: 30232
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0;; QUESTION SECTION:
;www.baidu.com. IN A;; ANSWER SECTION:
www.baidu.com. 134 IN CNAME www.a.shifen.com.
www.a.shifen.com. 134 IN A 14.215.177.39
www.a.shifen.com. 134 IN A 14.215.177.38Received 90 bytes from 223.5.5.5#53 in 22 ms
Trying www.a.shifen.com
;; -HEADER- opcode: QUERY, status: NOERROR, id: 45392
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0;; QUESTION SECTION:
;www.a.shifen.com. IN AAAA;; AUTHORITY SECTION:
a.shifen.com. 600 IN SOA ns1.a.shifen.com. baidu_dns_master.baidu.com. 2109090004 5 5 2592000 3600Received 97 bytes from 127.0.0.1#53 in 581 ms
Trying www.a.shifen.com
;; -HEADER- opcode: QUERY, status: NOERROR, id: 24903
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0;; QUESTION SECTION:
;www.a.shifen.com. IN MX;; AUTHORITY SECTION:
a.shifen.com. 600 IN SOA ns1.a.shifen.com. baidu_dns_master.baidu.com. 2109090004 5 5 2592000 3600Received 97 bytes from 127.0.0.1#53 in 25 ms5、DNS配置优化
example
options timeout:1 attempts:1 rotate
nameserver 10.0.0.1
nameserver 10.0.0.2
nameserver 10.0.0.3timeout 查询一个nameserver的超时时间单位是秒。系统缺省是5最大可以设为30。一般改为较小的值比较合适一些网络正常情况下缺省的5秒粒度太大 attempts 这个是查询的整个都尝试一遍的次数。缺省是2。根据需要来决定失败前的循环重试次数 rotate 这个参数的含义是随机选取一个作为首选查询的dns server系统缺省是从上到下的。如果彼此没有优先级是负载均衡的关系那么应该设置轮询有优先级关系的话就不用设置这个按照优先级从高到低依次定时nameserver即可