Ubuntu20.04 Github等部分网页访问不了? 试下刷新DNS缓存吧!
Ubuntu20.04 Github等部分网页访问不了? 试下刷新DNS缓存吧!
在使用Ubuntu系统时,有时会遇到无法访问某些网站(如GitHub)的问题。这可能是由于DNS缓存导致的。本文将详细介绍如何查看和刷新DNS缓存,帮助你快速解决网络连接问题。
DNS被认为是Internet连接的关键部分之一。其主要目的是更快地访问访问的网站。更常见的是,计算机会跟踪DNS记录,或者将其缓存。
DNS缓存是用于DNS查找的临时存储系统,负责将域名转换为IP地址。进行DNS查询时,系统会检查缓存中的相关信息。如果找到了,那么它会加速域名解析的过程。如果DNS缓存中的数据过时或不正确,则需刷新它以确保使用正确的信息。
刷新本地DNS缓存需要向当前系统配置的DNS服务器发起查询请求,获取到最新的域名-IP地址对应关系后更新本地DNS缓存。
如果从未清除过DNS缓存,则可能导致不同类型的错误。 尤其是当网站更改其IP地址时,可能会发生这些错误。因此,为避免此问题,计算机的DNS缓存应定期刷新。此外,清除DNS缓存将有助于消除占用系统的不必要数据,并解决与“过时的条目“。
查看DNS缓存
在Ubuntu系统中,可以使用以下命令查看DNS缓存状态:
sudo systemd-resolve --statistics
或者
resolvectl statistics
命令运行结果:
根据屏幕输出,当前的缓存大小为 10。
刷新DNS缓存
在Ubuntu系统中,可以使用以下命令刷新DNS缓存:
sudo systemd-resolve --flush-caches
或者
sudo resolvectl flush-caches
命令运行结果:
当前的DNS缓存大小参数为零,这意味着缓存已成功清除。
注意事项
在刷新DNS缓存之前,应该使用命令行实用程序(如nslookup)了解系统上的DNS缓存是否已启用。
如果在Ubuntu上没有安装该命令行实用程序,则可参考以下步骤逐步操作:
- 运行下面命令,安装dnsutils软件包。
sudo apt install dnsutils
- 使用nslookup命令来查看系统上是否启用了DNS缓存。
nslookup www.idcspy.com
如果输出的结果中,能正确查看到DNS服务器的IP地址,则表示DNS缓存已启用。如果它被禁用,则会看到一个“connection refused”连接被拒绝的错误。
- 如果本地DNS缓存被禁用,可以运行下面命令以启用本地DNS缓存。
sudo systemctl start systemd-resolved
Windows操作系统下查看DNS缓存相关操作
在Windows系统中,可以按照以下步骤查看和刷新DNS缓存:
- 进入cmd
- 查看dns服务ip:
命令: ipconfig/all - 查看dns缓存:
命令:ipconfig/displaydns - 强制更新缓存:
命令:ipconfig /flushdns