DNS 如何工作?
DNS 解析过程涉及将主机名(例如 www.example.com)转换为计算机友好的 IP 地址(例如 192.168.1.1)。Internet 上的每个设备都被分配了一个 IP 地址,必须有该地址才能找到相应的 Internet 设备 - 就像使用街道地址来查找特定住所一样。
当用户想要加载网页时,用户在 Web 浏览器中键入的内容(example.com)与查找 example.com 网页所需的机器友好地址之间必须进行转换。
所以,一个优秀的DNS,域名到IP的转换速度也是影响网站打开速度的一个重要因素。
- dig (域信息搜索器)命令是一个用于询问DNS 域名服务器的灵活的工具。
它执行DNS 搜索,显示从受请求的域名服务器返回的答复。 多数DNS 管理员利用dig 作为DNS 问题的故障诊断,因为它灵活性好、易用、输出清晰。 虽然通常情况下dig 使用命令行参数,但它也可以按批处理模式从文件读取搜索请求。
示例:(默认使用的是你电脑上配置的 DNS 服务器。我们这里请求 dig 帮助查询 “www.idonglei.com”)
主要看Query time ,10ms就是解析时间。server就是当前解析的DNS服务器(本地)。
dig命令做迭代查询
在命令后加上 trace可以跟踪整个解析流程:
- 由根域名服务器查找到负责解析.com的顶级域名服务器
- 由顶级域名服务器查找到idonglei.com的二级域名服务器
- 最后返回A记录对应的IP地址
- nslookup命令用于查询DNS的记录,查看域名解析是否正常,在网络故障的时候用来诊断网络问题。 nslookup的用法相对来说还是蛮简单的,主要是下面的几个用法。
1 直接查询
这个可能大家用到最多,查询一个域名的A记录。
代码语言:javascript复制nslookup domain [dns-server]
如果没指定dns-server,用系统默认的dns服务器。下面是一个例子:
2 查询其他记录
直接查询返回的是A记录,我们可以指定参数,查询其他记录,比如AAAA、MX等。
代码语言:javascript复制nslookup -qt=type domain [dns-server]
其中,type可以是以下这些类型:
A 地址记录 AAAA 地址记录 AFSDB Andrew文件系统数据库服务器记录 ATMA ATM地址记录 CNAME 别名记录 HINFO 硬件配置记录,包括CPU、操作系统信息 ISDN 域名对应的ISDN号码 MB 存放指定邮箱的服务器 MG 邮件组记录 MINFO 邮件组和邮箱的信息记录 MR 改名的邮箱记录 MX 邮件服务器记录 NS 名字服务器记录 PTR 反向记录 RP 负责人记录 RT 路由穿透记录 SRV TCP服务器信息记录 TXT 域名对应的文本信息 X25 域名对应的X.25地址记录
例如:
3 查询更具体的信息 查询语法:
代码语言:javascript复制nslookup –d [其他参数] domain [dns-server]
只要在查询的时候,加上-d参数,即可查询域名的缓存。