DNS 是域名系统 (Domain Name System) 的缩写,是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。
1.域名解析:
域名对应ip
www.baidu.com. 这个域名--对应 IP---183.232.231.174
如: www.aliyun.com.
- DNS里面顶层是: "." 表示根域 ( 一共有十三台根服务器)
- “ .com ”是顶级域名;分类: 职能: com 域,.org 域(非营利机构),edu 域名(教育)国家: .cn , .us ,
- “ aliyun.com ” 是主域名(二级域)
- “ example.aliyun.com ” 是子域名(也可称为托管三级域名);
- “ www.example.aliyun.com ” 是子域名的子域(也可称为托管四级域名)。
2. DNS查询所需的8个步骤:
1.用户在Web浏览器中输入 “ www.baidu.com”,浏览器先检查自身缓存中有没有解析过的这个域名对应的 ip 地址,如果有,解析结束. 如果浏览器没有缓存,那么就检查操作系统的 hosts文件,称为本地解析,比如 windows 就是C:\Windows\System32\drivers\etc\hosts文件,linux在 /etc/hosts 文件中配置。如果命中域名解析结束。 如果没有命中域名解析,浏览器会向本地的DNS服务器查询,如果命中域名解析就结束。
2. 如果本地DNS服务器没有命中域名解析,那么本地DNS服务器采用递归查询的方法,向根域名服务器进行查询。
3. 根域名服务器开启迭代查询方法告诉本地域名服务器,下一步应该查询的顶级域名服务器.com TLD的IP地址
4. 本地域名服务器向顶级域名服务器.com TLD进行查询
5. .com TLD服务器告诉本地域名服务器,下一步查询example.com权威域名服务器的IP地址
6. 本地域名服务器向example.com权威域名服务器发送查询
7. example.com权威域名服务器告诉本地域名服务器所查询的主机IP地址
8. 本地域名服务器最后把查询的IP地址响应给web浏览器
- 一旦DNS查询的8个步骤返回了example.com的IP地址,浏览器就能够发出对网页的请求:
9. 浏览器向IP地址发出HTTP请求
10. 该IP处的web服务器返回要在浏览器中呈现的网页
1、递归查询:是指DNS服务器在收到用户发起的请求时,必须向用户返回一个准确的查询结果。如果DNS服务器本地没有存储与之对应的信息,则该服务器需要询问其他服务器,并将返回的查询结果提交给用户。( 根服务器不会开递归查询。会开迭代查询)
2.迭代查询 是指DNS服务器在收到用户发起的请求时,并不直接回复查询结果,而是告诉另一台DNS服务器的地址,用户再向这台DNS服务器提交请求,这样依次反复,直到返回查询结果。
DNS支持A、CNAME、AAAA、NS等记录类型记录类型
功能描述
A ipv4记录,支持将域名映射到ipv4的地址使用
AAAA ipv6记录,支持将域名映射到ipv6的地址使用
CNAME 别名记录, 支持将域名指向另外一个域名
NS 名称服务器记录,支持将子域名委托给其他DNS服务商解析
DNS 客户端检测工具
1.域名查询工具,可以用来测试域名系统工作是否正常。
功能与 nslookup 类似,建议使用 dig 来取代 nslookup #dig
配置DNS方式本机解析:/etc/hosts 默认先使用本机解析
[root@linux-server ~]# vim /etc/hosts #本机解析文件---添加如下内容
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.246.160 www.soso666.cn
表示:cn域下面有一个soso666,soso666下面有一子域名www。仅供本地解析。
2.使用本地DNS服务器解析
DNS: domain name service
客户端设置(指定)DNS:
# vim /etc/resolv.conf #本地dns配置文件
# Generated by NetworkManager
search localdomain
nameserver 192.168.246.2
nameserver 114.114.114.114 #新添加