DNS缓存

DNS详细解释

DNS缓存(DNS Cache)是指操作系统或应用程序在本地保存的一份"域名与IP地址的对应关系"记录。

1. DNS的基本作用

当你访问一个网站(比如 www.jd.com)时,计算机需要先把这个域名转换成实际的IP地址(比如 211.151.90.53),这个转换过程叫做"域名解析",通常是通过DNS(域名系统,Domain Name System)服务器来完成的。

2. 为什么要有DNS缓存

每次访问网站都去DNS服务器查询,会增加网络延迟和负担。为了提高效率,操作系统、浏览器等会把已经解析过的域名-IP映射,暂时保存在本地,这份记录就是DNS缓存。

3. DNS缓存的好处
  • 加快网站访问速度:下次再访问同一个网站时,直接从本地读取IP地址,不用再去DNS服务器查询,速度更快。
  • 减少网络流量:减少了对DNS服务器的请求次数。
  • 减轻DNS服务器负担
4. DNS缓存的缺点
  • 缓存过期:如果网站IP更换,而缓存还没更新,可能会导致访问失败或访问到错误的服务器。
  • DNS污染:如果本地缓存被篡改,可能会被引导到恶意网站。
5. DNS缓存的刷新
  • 有时修改了/etc/hosts文件或网站IP变更,需要"刷新DNS缓存"(也叫清空DNS缓存),让系统重新获取最新的域名-IP关系。

  • 在macOS上,可以用以下命令刷新DNS缓存:

    bash 复制代码
    sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
6. 查看本地DNS缓存

不同操作系统有不同命令。例如在macOS,可以用:

bash 复制代码
sudo killall -INFO mDNSResponder

(输出会在系统日志里)


总结:

DNS缓存就是本地保存的"域名与IP地址"映射记录,用来加速访问和减少网络请求。遇到网络异常、网站打不开、hosts文件修改无效等情况,可以尝试刷新DNS缓存。

hosts 文件

/etc/hosts 文件是一个本地的"域名解析"文件。在 macOS、Linux 以及 Windows 等操作系统中都有类似的文件。

主要作用:

  1. 域名到IP的映射

    它可以把域名(如 www.example.com)直接映射到一个指定的IP地址。当你在浏览器或应用程序中访问这个域名时,系统会先查找 hosts 文件,如果找到对应的IP地址,就直接使用这个IP,而不用去DNS服务器查询。

  2. 加速访问

    通过在 hosts 文件中添加常用网站的域名和IP,可以减少DNS查询时间,加快访问速度(实际效果有限)。

  3. 屏蔽网站

    可以把某些域名映射到 127.0.0.1(本机地址),这样访问这些域名时就会被重定向到本地,从而达到屏蔽某些网站的效果。例如:

    复制代码
    127.0.0.1   www.blockedwebsite.com
  4. 测试和开发

    在开发网站时,可以把开发服务器的IP和测试域名写入 hosts 文件,方便本地测试,而不会影响到线上环境。

文件内容示例:

复制代码
127.0.0.1       localhost
255.255.255.255 broadcasthost
::1             localhost
192.168.1.10    mytest.local

注意事项:

  • hosts 文件的更改只对本机有效。
  • 每次修改后可能需要刷新DNS缓存。
  • 编辑时需要管理员权限。
相关推荐
G_H_S_3_4 小时前
【网络运维】Docker 存储:镜像层与数据卷的管理应用
linux·运维·网络·docker
还鮟6 小时前
靶机远程控制实验命令与入门实践(Linux)
linux·网络·安全
逆袭的菜鸟X7 小时前
极简HTTP缓存类封装
缓存
Hello.Reader8 小时前
Flink Process Table Functions(PTF)实战详解:把 SQL 变成“可编程算子”,状态、时间、定时器一把梭
网络·sql·flink
@淡 定9 小时前
Redis持久化机制
数据库·redis·缓存
2301_773730319 小时前
网络编程—TCP传输控制协议
服务器·网络·tcp/ip
云老大TG:@yunlaoda3609 小时前
华为云国际站代理商DAS的跨境合规适配是如何保障数据合规的?
网络·数据库·华为云
TG:@yunlaoda360 云老大10 小时前
华为云国际站代理商DAS的跨境合规适配在游戏出海场景中的应用
服务器·网络·游戏·华为云
没有bug.的程序员10 小时前
熔断、降级、限流:高可用架构的三道防线
java·网络·jvm·微服务·架构·熔断·服务注册
2501_9411481510 小时前
从边缘节点到云端协同的分布式缓存一致性实现原理实践解析与多语言代码示例分享笔记集录稿
笔记·分布式·物联网·缓存