美文网首页
【DNS】Linux上DNS缓存的开启和清理

【DNS】Linux上DNS缓存的开启和清理

作者: Bogon | 来源:发表于2021-10-29 00:09 被阅读0次

    DNS 缓存是一个临时数据库,用于存储有关以前的 DNS 查找的信息。

    换句话说,每当你访问网站时,你的操作系统和网络浏览器都会保留该域和相应 IP 地址的记录。

    这消除了对远程 DNS 服务器重复查询的需要,并允许你的 OS 或浏览器快速解析网站的 URL。

    但是在某些情况下,例如:对网络问题进行故障排除,或者在更改 DNS 解析器之后,你将需要刷新 DNS 缓存。

    这将清除缓存的 DNS 条目,并根据新配置的 DNS 设置执行后续查找以解析域。

    对于所有Windows版本,清除DNS缓存的过程都是相同的。

    您需要使用管理员权限打开命令提示符并运行ipconfig /flushdns。

    在Linux上,除非已安装并运行诸如systemd-resolved,dnsmasq或nscd之类的缓存服务,否则没有操作系统级DNS缓存。

    根据Linux发行版和所使用的缓存服务,清除DNS缓存的过程有所不同。

    # yum -y install nscd

    # yum info nscd

    # rpm -ql nscd

    nscd会缓存三种服务passwd group hosts,所以它会记录三个库,分别对应 /etc/passwd, /etc/hosts 和 /etc/resolv.conf

    每个库保存两份缓存,一份是找到记录的,一份是没有找到记录的。

    每一种缓存都保存有生存时间(TTL)。其作用就是在本当中增加cache ,加快如DNS的解析等的速度。

    如果开启了本地缓存:

    Linux 机器要解析某个dns并不需要每次都去查询DNS server, 它会维护一个本地的cache. 通过TTL管理本地cache何时失效。

    TTL 由客户端所对应的authoritative server 决定。

    如果是做搜索引擎或是一些代理服务类的项目,比如短信通道,数据推送服务,这个性能提升还是比较可观的。

    但在一般的项目中,一台服务器每分钟发几十万次请求的情况是很少见的,所以这个性能提升也微乎其微。

    参考

    Linux开启nscd服务缓存加速

    https://www.cnblogs.com/xiewenming/p/8521059.html

    Unix Linux Windows 如何清除 DNS 缓存

    https://sysin.org/blog/how-to-flush-dns-cache

    如何清除DNS缓存

    https://www.myfreax.com/how-to-clear-the-dns-cache

    如何有效的清除 DNS 缓存

    https://www.hi-linux.com/posts/56208.html

    相关文章

      网友评论

          本文标题:【DNS】Linux上DNS缓存的开启和清理

          本文链接:https://www.haomeiwen.com/subject/zhgbaltx.html