本机DNS服务器与解析地址查看
1. DNS服务器地址1.1 Windows1.2 Linux1.3 macOS
2. 本地DNS解析缓存2.1 Windows2.2 Linux2.3 macOS
3. 本地 `hosts` 文件3.1 文件路径3.2 格式说明3.3 应用场景
4. 检测实际使用的DNS服务器
DNS(域名系统)是互联网的重要组成部分,它将域名解析为IP地址,方便用户访问网站。本文将介绍在不同操作系统上如何查看本机DNS服务器地址、解析缓存以及 hosts 文件的内容。
1. DNS服务器地址
1.1 Windows
使用命令提示符
打开命令提示符(Win + R,输入 cmd)。输入以下命令: ipconfig /all
在输出中找到 DNS Servers 字段,即为当前配置的DNS服务器地址。
通过网络设置界面
打开 控制面板 > 网络和共享中心 > 更改适配器设置。右键当前网络连接,选择 属性。双击 Internet 协议版本 4 (TCP/IPv4),查看DNS服务器地址。
1.2 Linux
查看 resolv.conf 文件 在终端输入:
cat /etc/resolv.conf
输出的 nameserver 字段即为DNS服务器地址,例如:
nameserver 8.8.8.8
nameserver 1.1.1.1
使用 nmcli 命令(适用于 NetworkManager)
nmcli dev show | grep 'IP4.DNS'
1.3 macOS
通过系统偏好设置
打开 系统偏好设置 > 网络。选中当前网络连接,点击 高级,切换到 DNS 标签页查看配置。 通过终端命令
scutil --dns
输出中包含 resolver 的部分会列出当前使用的DNS服务器。
2. 本地DNS解析缓存
DNS缓存存储了最近解析的域名和对应IP地址,有助于加速访问。
2.1 Windows
查看本地DNS缓存:
ipconfig /displaydns
清除本地DNS缓存:
ipconfig /flushdns
2.2 Linux
systemd-resolved 缓存 (CentOS 通常不启用本地 DNS 缓存)
resolvectl statistics
查看缓存内容:
resolvectl query <域名>
nscd 缓存 如果使用了 nscd(Name Service Cache Daemon),可以查看其缓存:
sudo strings /var/cache/nscd/hosts
2.3 macOS
查看DNS缓存:
sudo killall -INFO mDNSResponder
清除DNS缓存:
sudo killall -HUP mDNSResponder
3. 本地 hosts 文件
hosts 文件是一个纯文本文件,用于本地存储域名和IP地址的映射关系。修改 hosts 文件可以自定义解析,方便开发测试。
3.1 文件路径
Windows: C:\Windows\System32\drivers\etc\hostsLinux/macOS: /etc/hosts
3.2 格式说明
hosts 文件的内容通常按以下格式编写:
示例:
127.0.0.1 localhost.localdomain localhost
192.168.1.100 myserver.example.com myserver
其中:
第一列是IP地址。第二列是主机名。第三列是可选的别名。
3.3 应用场景
自定义域名解析: 如果 hosts 文件中定义了以下内容:(直接用记事本改)
192.168.1.100 example.local
访问 http://example.local 时会直接解析到 192.168.1.100。
屏蔽网站: 将某些域名映射到本地地址(如 127.0.0.1),可以阻止访问:
127.0.0.1 ads.example.com
4. 检测实际使用的DNS服务器
有时系统配置的DNS可能被上游路由器或运营商重定向,可以通过以下方法确认实际使用的DNS:
nslookup
进入交互模式后,第一行会显示默认的DNS服务器地址。例如:
Default Server: google-public-dns-a.google.com
Address: 8.8.8.8
我电脑的DNS服务器,连的学校校园网