当前位置: 首页 > article >正文

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缓存:

    sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
    
6. 查看本地DNS缓存

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

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缓存。
  • 编辑时需要管理员权限。
http://www.lryc.cn/news/2397212.html

相关文章:

  • MySQL垂直分库(基于MyCat)
  • Rust 变量与可变性
  • 深入理解 C++ 中的 list 容器:从基础使用到模拟实现
  • 状态机实现文件单词统计
  • 从0开始学习R语言--Day13--混合效应与生存分析
  • 基于mediapipe深度学习的虚拟画板系统python源码
  • 复变函数 $w = z^2$ 的映射图像演示
  • Python实现P-PSO优化算法优化循环神经网络LSTM回归模型项目实战
  • 复合机器人:纠偏算法如何重塑工业精度与效率?
  • 审计- 1- 审计概述
  • 在MDK中自动部署LVGL,在stm32f407ZGT6移植LVGL-8.4,运行demo,显示label
  • 模块二:C++核心能力进阶(5篇) 篇一:《STL源码剖析:vector扩容策略与迭代器失效》
  • 计算机组成原理核心剖析:CPU、存储、I/O 与总线系统全解
  • 数据分类分级的实践与反思:源自数据分析、治理与安全交叉视角的洞察
  • 自动化立体仓库WCS的设计与实现
  • 百度蜘蛛池的作用是什么?技术@baidutopseo
  • 8.linux文件与文件夹内处理命令cp,mv,rm
  • JavaScript性能优化:实战技巧提升10倍速度
  • 核函数:解锁支持向量机的强大能力
  • UE5 2D地图曝光太亮怎么修改
  • C# 类和继承(基类访问)
  • 帕金森带来的生活困境
  • 集成测试的流程总结
  • Redis最佳实践——性能优化技巧之Pipeline 批量操作
  • Node.js 项目调试指南
  • win32相关(虚拟内存和物理内存)
  • Linux操作系统安全管理概述与命令操作
  • 《操作系统真相还原》——中断
  • [yolov11改进系列]基于yolov11引入特征融合注意网络FFA-Net的python源码+训练源码
  • 助力活力生活的饮食营养指南