我需要一些帮助来弄清楚如何在我的私人 WAN 网络上设置 DNS。我目前使用 Linksys e4200 无线路由器连接 WAN 上的所有计算机、服务器和其他设备。我希望能够设置名称服务器,以便我可以与所有服务器/计算机通信,而无需使用 IP 地址。据我发现,我有三个选项,其中一些比其他选项更直接、更清晰。我意识到所有选项都需要为我想分配名称的任何设备设置静态 IP 地址:
- 编辑我所有机器上的主机文件,将我选择的名称解析为特定的 IP 地址。
- 这种选择的问题在于,我必须在所有设备上执行此操作,保持一致性会很困难。我可以使用 Ansible 配置所有设备,这样会简单得多,但我最好避免这种方式。
- 将 DD-WRT 刷入我的 e4200 并使用 DNSMasq 在路由器上运行 DNS。
- 即使我不选择此选项,我也可能会将 DD-WRT 刷入我的路由器,但我更喜欢第三个选择。
- 设置运行 BIND9 的 DNS 服务器来解析我所有的本地域名,并将未知名称转发到外部 DNS 服务器并将完成的解析缓存到外部网站。
- 这将为我提供最大的灵活性,执行 DNS 设置的练习,也是我喜欢的方法。
- 这种方法的唯一问题是,我不知道这个 DNS 服务器应该在我的网络中的什么位置,也不知道如何在不修改我的所有设备以将其本地 IP 地址用作 DNS 服务器的情况下将请求指向它。如果这个假设不正确,请原谅我,因为我在这种方法中肯定是摸索着来的。BIND9 的设置似乎是我可以解决的问题,我只是不知道在哪里挂接 DNS 服务器,我希望得到一些帮助/建议。
答案1
我会选择第三个选项,你可以将它放在网络上的任何位置,我通常以类似的方式设置网络,.1 作为路由器,.2 作为第一个 DNS 服务器,依此类推。另外,如果你要将地址分配给多台 PC,输入起来会更容易 :)
您必须将 IP 添加到您的机器以允许它们在本地解析域名,或者您可以通过 DHCP 分配地址(如果您决定使用 DHCP 分配映射到 MAC 地址的 IP),这样相同的 IP 将始终分配给同一台计算机,这意味着它将始终具有相同的主机名等。不过,无论计算机使用什么方法定义 DNS 服务器,只需将 IP 添加到计算机中,工作量可能会减少。
答案2
如果您选择第三个选项,则必须更改所有机器上的 DNS 设置。对于任何使用 DHCP 的设备,这都是一个简单的更改。其他任何设备都应该可以编写脚本。关于设置静态地址,是的,通常建议您的服务器这样做。如果您希望客户端仍然接收 DHCP 地址,并且可以通过 DNS 解析,您可以让 DHCP 服务器更新 DNS。以下是示例: http://lani78.wordpress.com/2008/08/12/dhcp-server-update-dns-records/