![让路由器使用局域网内PC的DNS服务器](https://linux22.com/image/1048983/%E8%AE%A9%E8%B7%AF%E7%94%B1%E5%99%A8%E4%BD%BF%E7%94%A8%E5%B1%80%E5%9F%9F%E7%BD%91%E5%86%85PC%E7%9A%84DNS%E6%9C%8D%E5%8A%A1%E5%99%A8.png)
我通过 TP-Link 路由器连接到互联网。路由器使用 ISP 提供的 DNS 服务器。我已经在 PC 内设置了绑定 DNS 服务器,我希望路由器使用 PC 上的 DNS 服务器,而不是 ISP 的 DNS 服务器。
当我在路由器的首选 DNS 服务器设置中提供我的 IP (192.168.0.105) 时,我认为路由器会在 LAN 外搜索此 IP。这是真的吗?如果是,那么将 DNS 查询重定向到我的 PC 的方法是什么?
答案1
您需要实际确认路由器正在 LAN 之外寻找 DNS 服务器的假设。确认您的想法很棘手。如果您没有可以进行完整数据包跟踪的路由器,这几乎是不可能的。
但实际上,您的路由器只会获取这些 DNS 服务器,以便稍后通过 DHCP 将它们提供给内部的机器。这是因为大多数 DNS 查找发生在端点客户端/机器/工作站级别,而不是路由器,除非您的路由器具有将 DNS 查找转发到外网的 DNS 转发器。因此,计算机本身将依赖给定的 IP 地址。路由器足够智能,可以知道 IP 地址位于内部 LAN 子网中(有编程逻辑可以知道 RFC 指定的专用网络范围,而不是公共网络和 bogons),并将其发送到内部而不是外部 Internet。但是,DNS 数据包的 IP 目的地大部分是在内部端点计算机而不是路由器上确定的。
您应该能够更改路由器上的 DHCP 设置,这样连接到路由器的机器将自动获取内部机器的 DNS 服务器条目,而不是 ISP 服务器。从那里,您应该能够测试您的内部 DNS 是否正常工作。将 ISP(或者如果您比较偏执,Google)DNS 服务器作为端点机器上的备份,以防您的绑定服务器不工作,这绝不会有什么坏处。