dnsmasq 中的静态 IP 和 DHCP 租用?

dnsmasq 中的静态 IP 和 DHCP 租用?

我正在路由器的 DMZ 上设置几个 Raspberry Pi(不用担心所有端口都已关闭);我的路由器使用 DNSMasq 作为 DNS,因此我添加了 MAC 地址; PI 的主机名和 IP 到 dhcp 静态租约。

话虽如此,我只是在学习使用 dhcpcd;我习惯了使用旧的方式来/etc/networking/interfaces配置IP地址分配。

在 pi 本身上,我已将它们配置为/etc/dhcpcd.conf具有静态 IP 地址,并将它们指向我的 DNSMasq DNS 服务器。

这样做似乎有点奇怪,但是这样做可以吗?

这样我的 pi 就可以获得 DNS 记录(以便设备可以找到彼此)和静态 IP 地址;我想我可以配置它,以便它使用客户端根据 MA​​C 地址提取 IP dhcpcd

也就是说,我真的不知道如何配置dhcpcd从 DNSMasq 中提取它的 IP 地址;我计划添加额外的 DNS 记录(可能来自/etc/hosts),以便 pi 为单独的 nginx 拾取服务器块dhcpcd,那么在配置静态 DHCP 租约时配置静态 IP 可以吗?或者这很奇怪,我不应该这样做?

答案1

我对你的设置有点困惑。也许我误解了它。

无论如何,通常的做法是有一个中心位置来配置所有内容(在您的情况下,这可能应该是您的路由器)。

那么你就不必关心 RaspPi 的配置了。事实上,您可以对它们进行相同的配置;所有差异都将由 RaspPi 使用 DHCP 解决。

如果你看dnsmasq 的手册页,它可以读取/etc/ethersman ethers了解详细信息)根据 RaspPi 的 MAC 地址为每个 RaspPi 分配一个静态 IP。它还读取/etc/hosts为这些静态 IP 地址提供 DNS 解析,因此您可以根据需要命名 RaspPi。

如果您这样做,RaspPi 上的普通开箱即用 dhcp 客户端就足够了。

你不需要dhcpd任何地方。

编辑

因为当已经有静态分配的 IP 时,为什么还要通过 DHCP 分配 IP?

因为您不想单独配置每个 RaspPi。 “静态”并不意味着“本地配置”。静态意味着“每台机器始终获得相同的 IP 地址”。您可以通过查看计算机的 MAC 地址来使用 DHCP 来完成此操作。

想象一下您有一千个 RaspPi。您单独管理这些吗?不,您可以在中央位置管理它们,并保持它们在其他方面相同。

原因是我不知道如何设置 dhcpcd 去从 dnsmasq 寻找地址。

我不明白为什么你认为你需要dhcpd在 RaspPi 上运行。如果他们需要通过 DHCP 获取其他信息,您需要DHCP客户端,不是一个DHCP服务器。如果您想在本地为它们配置每个静态地址,那么您也可以在不使用DHCP服务器

如果您还想通过在它们上运行 DHCP 服务器来在本地配置每个 DNS 名称,那么这是行不通的。 (虽然你可以通过运行让它工作DHCP 客户端并让它们在 DHCP 请求中告诉中央 DHCP 服务器(您的路由器)它们的主机名)。

对于 DNS,您需要拥有一个存放所有信息的中央服务器。

相关内容