linux下如何清理dns 缓存?首先我们要了解,dns查询的基本逻辑和缓存的存在位置,基本逻辑为:客户端 - 本机器dns解析器(如host,dnsmasq)- 本地dns服务器(比如家庭路由器)- 网络dns服务器,为了加速查询,在解析器和服务器上都有缓存在,一般而言我们要清理的是本机器上的dns缓存。
显然,我们必须首先了解本地机器用的是什么解析器,可以通过看哪个进程占据了53端口来查询,因为53端口是dns服务器端口。
可以通过以下指令:
分别会下列结果
针对不同的解析器
可以用不同的命令清理
针对system-resolved:
同时为了验证dns缓存真的被清理了,可以用命令来查看缓存
针对dnsmasq:
如何清除linux下DNS缓存
如果是清除NSCD上的Cache,可重新启动NSCD服务来达成清除DNS
Cache的效果。使用的命令是:
# service nscd restart或
# /etc/init.d/nscd restart如果是清除BIND服务器上的CACHE,使用的命令是:
# rndc flush如果是用dnsmasq实现的DNS服务器,使用的命令是:
$ sudo /etc/init.d/dnsmasq restart另外,重启系统也行。
如何清空linux的DNS缓存
如果是清除NSCD上的Cache,可重新启动NSCD服务来达成清除DNS
Cache的效果。用这个命令:
#
service
nscd
restart
或是
#/etc/init.d/nscd
restart
如果是清除BIND服务器上的CACHE,用这个命令:
#
rndc
flush
如果你的DNS服务器是用dnsmasq实现的,用下面这个命令:
$
sudo
/etc/init.d/dnsmasq
restart
另外,重启也行。
未经允许不得转载:国外服务器评测 » 如何清除linux下DNS缓存 linux清除dns缓存命令