我想设置一个 DNS 服务器,用于在 LAN 中查找机器。也就是说,当计算机从我的路由器 DHCP 服务器收到 IP 地址后,我希望计算机名称(由操作系统分配)可用作域名,代替分配的 IP 地址。
设备:
- 路由器。
- A纳米Pi M4作为 DNS 服务器。
- PC、其他 Pi 和 Android 手机。我希望手机能够获得自己的域名,并可以通过 IP 与 ADB 一起使用,而无需使用 USB 电缆。
如何在 Pi 上设置 DNS 服务器?目前,我必须为设备分配固定 IP 地址。我了解到您可以设置 DNS 服务器绑定,然后将此私有 DNS 服务器添加到路由器,对吗?
答案1
如何在 Pi 上设置我的 DNS 服务器?
在线教程,例如针对 Raspberry Pi/BIND 的教程可能有助于在您的设备上设置基本的 DNS 服务器。
我读到您可以为 DNS 服务器设置 BIND,然后将这个私有 DNS 服务器添加到您的路由器,对吗?
从技术上讲,这取决于您的路由器,但在大多数情况下,是的。您基本上告诉路由器(通过其配置选项)将其所有 DNS 查询发送到您的 DNS 服务器(Raspberry Pi),而不是您的 ISP。
需要记住的一件事是,您必须配置 DNS 服务器以将非本地流量(例如 LAN 之外的任何流量google.com
)转发到另一个 DNS 服务器(例如您的 ISP)。在上面链接的教程中,这是forwarders {}
下面的部分named.conf.options
。如果您未能正确设置,您将无法访问互联网。
在计算机从我的路由器 DHCP 服务器接收 IP 地址后,我希望计算机名称(由操作系统分配)可以用作域名,代替分配的 IP 地址。
我不太清楚您所说的“由操作系统分配”是什么意思。名称到 IP 地址的映射由 DNS 服务器软件控制。例如,典型的 BIND 条目可能如下所示:
example.lan. IN A 10.0.0.10 ; A Record for a basic domain name
因此,在使用任何域名引用设备(IP 地址)之前,需要在 BIND 等中创建设备(IP 地址)的任何条目。实际上,这意味着分配给每个设备的 DHCP 地址需要保持(相对)静态,并且您的所有域名条目都需要出现在 BIND 等中,然后才能访问它们。
我希望手机能够拥有自己的域名,并且可以通过 IP 使用 ADB,而无需使用 USB 线。
您需要在 DNS 服务器软件中为每个设备(IP 地址)创建单独的域。连接到该设备所需的其他更改可能需要在 ADB、路由器或设备本身上完成。
目前,我必须为设备分配固定的 IP 地址。
您不需要使用 DNS 服务器执行此操作,但(如前所述)每个设备的 IP 地址确实需要保持(相对)静态(由您的 DHCP 服务器/路由器分配)。