31 我知道在Windows上我可以发布,ipconfig /displaydns并且可以看到本地DNS的缓存内容。 如何在Linux中列出DNS的缓存内容? 我想获得尽可能多的跨发行版解决方案。 linux dns cache — 哈南 source 4 据我所知,除非系统在客户端上仅使用本地缓存dns服务,否则在Linux(解析器)中的客户端上没有维护DNS缓存。 — Nikhil Mulley,2012年 您始终拥有/etc/hosts可能包含由DNS黑名单服务生成的条目的文件。
15 在此之前systemd,几乎没有操作系统级DNS缓存 此前systemd有在Linux(和可能大多数Unix)没有操作系统级别的DNS缓存,除非nscd或dnsmasq安装和运行。 即使这样,nscd至少在Debian中也默认禁用了DNS缓存功能,这仅仅是因为它已损坏。 至于默认情况下dnsmasq,缓存似乎发生在RAM中。 — Serge Stroobandt source 2 如今,许多系统dnsmasq默认情况下都在使用,因此unix.stackexchange.com/q/162973/79839可能会有用。 — 小鸡 1 而这些天,用什么systemd将有可能systemd-resolved在默认情况下它不会根据TTL缓存DNS结果运行 — 德鲁
9 nscd是名称服务缓存守护程序。这是Linux,Solaris和其他服务器用来缓存名称服务查找的实用程序。在这种情况下,名称服务是一个通用术语,不严格限于主机解析,还包括用户,组等。 虽然您可以使用显示统计信息,但我不知道查看缓存实际内容的方法/usr/sbin/nscd -g。 这至少可以告诉您缓存的效率如何,尽管不完全是解析的结果。 如果您使用的是备用缓存工具,例如DNSMASQ,则可能还有其他选择。 — 蒂姆·肯尼迪 source
3 如果使用nscd,则可以通过显示二进制缓存文件中的ASCII字符串来查看内容(可能还有一些其他垃圾)。在Debian / Ubuntu中,该文件/var/cache/nscd/hosts用于主机/ DNS缓存,因此您可以运行strings /var/cache/nscd/hosts以查看缓存中的主机。 请注意,这完全是骇客,因为似乎没有nscd不解码二进制格式就无法检查缓存的适当方法。 — 史蒂夫·克 source