dipea Asked: 2022-07-25 01:48:53 +0800 CST2022-07-25 01:48:53 +0800 CST 2022-07-25 01:48:53 +0800 CST 如何判断我使用的是哪个 DNS 服务器? 772 如果我刚刚更改了家庭路由器上配置的 DNS 服务器,例如使用 1.1.1.1 或 8.8.8.8 而不是我的 ISP 的默认 DNS 服务器,是否有一种简单的方法可以检查我的更改是否已正确应用,使用MacOS上的挖掘或其他工具? domain-name-system 2 个回答 Voted Best Answer raj 2022-07-25T15:25:01+08:002022-07-25T15:25:01+08:00 如果您的 MacOS 将路由器用作 DNS 服务器,则它是它使用的唯一服务器。因此,MacOS 上的任何工具都不会显示任何其他服务器。 使用 1.1.1.1 或 8.8.8.8 作为 DNS 服务器的是您的路由器,而不是您的 MacOS,因此要验证您的路由器是否真的使用它,您需要捕获路由器和 Internet 之间的DNS 流量。 如果您有一个路由器,您可以通过 ssh 登录并使用命令行界面(例如基于 OpenWRT),您很可能可以在路由器本身上运行数据包捕获(例如使用tcpdump)并查看输出。这将是最简单的方法。 否则,这可能需要在路由器的WAN 端口(外部端口)和 Internet 连接(例如电缆调制解调器上的以太网端口)之间插入一些流量拦截设备 - 例如具有监控功能的交换机 - 然后将计算机与数据包捕获软件(如 Wireshark)到此设备。 ErrySreez 2022-07-25T07:11:22+08:002022-07-25T07:11:22+08:00 您可以尝试遵循此处的解决方案吗? 命令行工具 scutil 返回系统上配置的名称服务器: scutil --dns | grep 'nameserver\[[0-9]*\]' 如果它返回 homerouter IP,那应该很好,因为你的 homerouter 会将你的 DNS 请求转发到其配置的 DNS。 在家庭网络配置中,无论如何您都不用担心太多。 如果您从未在客户端设备上设置静态 IP 配置,则您的家庭路由器应该已经提供了 DNS 服务器,这意味着,如果您更改了家庭路由器上的设置,客户端设备应该会跟随。 您应该只在以下情况下担心: 您已经在系统上设置了一个主机文件(用于静态 DNS 查询)。 你错误地配置了家庭路由器(如果你这样做了,房子现在应该着火了,因为没有人可以访问互联网)。 你调整了你的家庭网络,以至于有多个路由器/交换机/vlan,无论你的 DHCP 提供的 DNS 服务器是一个没人知道的隐藏设备。 如果您真的想检查您的 DNS 更改是否传播,您可以尝试以下一个或多个命令(我不是 Macos 专家,也不知道这些工具的可用性,我使用 ubuntu 进行测试),来自终端: dig whoami.akamai.net 它返回响应您请求的服务器 挖掘 ubuntu nslookup somewebsite.com 它还返回有关 dns 服务器的信息: ubuntu 上的 nslookup 关键是要确保回答您问题的服务器不再是您的 ISP。它可能不是 1.1.1.1 也不是 8.8.8.8(取决于 dig 和 nslookup 在您的设备上的行为方式),它可能会返回权威答案(这意味着发出请求的最终服务器)。
如果您的 MacOS 将路由器用作 DNS 服务器,则它是它使用的唯一服务器。因此,MacOS 上的任何工具都不会显示任何其他服务器。
使用 1.1.1.1 或 8.8.8.8 作为 DNS 服务器的是您的路由器,而不是您的 MacOS,因此要验证您的路由器是否真的使用它,您需要捕获路由器和 Internet 之间的DNS 流量。
如果您有一个路由器,您可以通过 ssh 登录并使用命令行界面(例如基于 OpenWRT),您很可能可以在路由器本身上运行数据包捕获(例如使用
tcpdump
)并查看输出。这将是最简单的方法。否则,这可能需要在路由器的WAN 端口(外部端口)和 Internet 连接(例如电缆调制解调器上的以太网端口)之间插入一些流量拦截设备 - 例如具有监控功能的交换机 - 然后将计算机与数据包捕获软件(如 Wireshark)到此设备。
您可以尝试遵循此处的解决方案吗?
命令行工具 scutil 返回系统上配置的名称服务器:
如果它返回 homerouter IP,那应该很好,因为你的 homerouter 会将你的 DNS 请求转发到其配置的 DNS。
在家庭网络配置中,无论如何您都不用担心太多。
如果您从未在客户端设备上设置静态 IP 配置,则您的家庭路由器应该已经提供了 DNS 服务器,这意味着,如果您更改了家庭路由器上的设置,客户端设备应该会跟随。
您应该只在以下情况下担心:
如果您真的想检查您的 DNS 更改是否传播,您可以尝试以下一个或多个命令(我不是 Macos 专家,也不知道这些工具的可用性,我使用 ubuntu 进行测试),来自终端:
它返回响应您请求的服务器
挖掘 ubuntu
它还返回有关 dns 服务器的信息:
ubuntu 上的 nslookup
关键是要确保回答您问题的服务器不再是您的 ISP。它可能不是 1.1.1.1 也不是 8.8.8.8(取决于 dig 和 nslookup 在您的设备上的行为方式),它可能会返回权威答案(这意味着发出请求的最终服务器)。