==== 原理 ==== **dns服务器由若干个本地区域(由当前dns直接管辖的区域),和一个根域(全球13个根几节点)组成** - dns收到一个查询请求www.baidu.com - 如果查询主机是本地区域: - 则查询区域数据文件,返回权威结果 - 如果查询主机非本地区域: - 查询缓存,如果在则直接返回。 - 如果缓存中不存在 - 向跟域发起请求,返回com的dns服务器ip,缓存com服务器的ip - 向com服务器发起请求,返回baidu.com的dns服务器ip,缓存baidu.com服务器ip - 向baidu.com发起请求,返回www.baidu.com的ip,并缓存www.baidu.com的ip * 下次请求 mail.baidu.com 时会自动去缓存中找baidu.com的dns服务器ip(因为缓存中已经有baidu.com就不会再死板的从根域开始找了) ==== dns可提供的功能 ==== * localhost 解析 * 127.0.0.1 反解析 * 内网域名解析,反解析 * 子dns服务器(管理子域) * 备用dns服务器(备份,负载均衡) ==== 角色类型 ==== * 主dns * 备dns * 缓存dns服务器 * 转发器 * 转发类型 * first:转发给某个节点,如果得不到结果就转发给根 * only:转发给某个节点,如果得不到结果就放弃 ==== 记录类型 ==== * A记录 (如果一个域名对应多个ip,dns服务器会使用自动轮询机制) * www.fang.com IN A 1.1.1.3 * www.fang.com IN A 1.1.1.4 * mail.fang.com IN A 1.1.1.5 * MX记录,邮件记录 * NS记录,子dns服务器 ==== bind 默认acl组 ==== * none 禁止所有 * any 所有 * localnet 本地局域网络 * local 本机 ==== 其他 ==== * 权威应答:从dns服务器的本地区域给出的答复 * 非权威应答:从dns服务器缓存中给出的答复 ==== 测试常用命令 ==== * dig -t axfr fang.com @10.0.2.10 去 10.0.2.10上去同步区域 (10.0.2.10装了dns服务器) * dig -t A www.baidu.com @10.0.2.10 去 10.0.2.10上查询www.baidu.com(10.0.2.10装了dns服务器) * dig -x 10.0.2.14 在本机反向解析10.0.2.14的域名(本机装了dns服务器)