DNS解析与DNS缓存清理

DNS是什么?

域名系统 (DNS) 将人类可读的域名 (例如,www.amazon.com) 转换为机器可读的 IP 地址 (例如,192.0.2.44)。

DNS解析流程

以dns解析www.example.com 为例。

  • 从浏览器dns缓存中,获取dns解析结果,获取成功的话,直接返回。失败进入下一步
  • 从本地dns缓存获取解析结果,失败的话进入下一步
  • 向设置的dns服务器(一般为ISPInternet 服务提供商的dns服务器)发起dns解析请求(其中路由器缓存和运营商dns缓存需要考虑),失败的话进入下一步
  • ISP 的 DNS 解析程序将 www.example.com 的请求转发到 DNS 根名称服务器。
  • ISP 的 DNS 解析程序再次转发 www.example.com 的请求,这次转发到 .com 域的一个 TLD 名称服务器。.com 域的名称服务器使用与 example.com 域相关的四个 Amazon Route 53 名称服务器的名称来响应该请求。
  • ISP 的 DNS 解析程序选择一个 Amazon Route 53 名称服务器,并将 www.example.com 的请求转发到该名称服务器。
  • Amazon Route 53 名称服务器在 example.com 托管区域中查找 www.example.com 记录,获得相关值,例如,Web 服务器的 IP 地址 (192.0.2.44),并将 IP 地址返回至 DNS 解析程序。
  • ISP 的 DNS 解析程序最终获得用户需要的 IP 地址。解析程序将此值返回至 Web 浏览器。DNS 解析程序还会将 example.com 的 IP 地址缓存 (存储) 您指定的时长,以便它能够在下次有人浏览 example.com 时更快地作出响应。有关更多信息,请参阅存活期 (TTL)。
  • Web 浏览器将 www.example.com 的请求发送到从 DNS 解析程序中获得的 IP 地址。这是您的内容所处位置,例如,在 Amazon EC2 实例中或配置为网站终端节点的 Amazon S3 存储桶中运行的 Web 服务器。
  • 192.0.2.44 上的 Web 服务器或其他资源将 www.example.com 的 Web 页面返回到 Web 浏览器,且 Web 浏览器会显示该页面。

修改dns解析

hosts文件保存了本地的dns解析映射关系,通过修改hosts文件,可以改变请求时的域名解析。

windows修改hosts

文件路径:C:/Windows/System32/drivers/etc/hosts

在文件后面添加域名映射关系,一行一条数据,ip在前,域名在后,多个域名可以解析成同一ip。

案例:

# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
#      102.54.94.97     rhino.acme.com          # source server
#       38.25.63.10     x.acme.com              # x client host

# localhost name resolution is handled within DNS itself.
#	127.0.0.1       localhost
#	::1             localhost
10.4.112.202		win-op1a7tfrvi1

修改保存之后,本机访问win-op1a7tfrvi1域名的请求,都会解析为10.4.112.202。

Linux修改hosts

文件路径:/etc/hosts

修改方式与windows一致。

案例:

验证:

清理DNS缓存

windows清理缓存

查看缓存列表

命令:ipconfig /displaydns

作用:查看本机当前dns缓存

附图:

清理缓存

命令:ipconfig /flushdns

作用:删除本机dns缓存

附图:

chrome清理dns缓存

浏览器访问chrome://net-internals/#dns,可以看到dns选项中有clear host cache选项,点击即可。

Linux清理缓存

linux中的缓存管理工具有多种,主要包括nscd、dnsmasp、rndc等,只需要有一个管理工具即可,这里记录nscd清理缓存的方法。

命令:nscd -i hosts

作用:清理本机dns缓存

常见问题:

解决方法:

# 安装
yum install nscd -y
# 启动服务
systemctl start nscd
# 配置自启动
systemctl enable nscd

参考链接:https://aws.amazon.com/cn/route53/what-is-dns/

posted @ 2021-10-13 17:00  红雨520  阅读(971)  评论(0编辑  收藏  举报