服务器的 DHCP 寻址与静态寻址

thi*_*ams 11 dhcp static-ip

我正在与一位同事就在网络环境中的服务器上使用或反对使用 DHCP 的原因进行“热烈”辩论。特别是网络环境是一个相对较小的网络,但根据我的经验,将服务器放在静态地址上总是更好,尤其是对于远程管理等。

我看了看,可以找到支持或反对在服务器上分配动态地址的任何具体原因,所以我想我会在这里询问人群。

我的同事主张使用 DHCP 分配的服务器地址以便于管理,并说明如果地址发生变化,您不必手动更改服务器 IP。我对这个回应表示怀疑。

出于管理目的,这个网络很小,更改静态设备的IP没什么大不了的,因为很少。

有什么建议、想法或意见吗?

Jef*_*ser 6

虽然有些服务器功能必须具有本地定义的 IP,但我非常喜欢使用 DHCP 作为服务器地址。

首先,正如其他人所指出的,您可以(并且应该)使用 DHCP 来提供静态地址。假设使用 Linux,您希望在 dhcpd.conf 中包含以下内容:

host server {
        option host-name "server.example.com";
        hardware ethernet  xx:xx:xx:xx:xx:xx;
        fixed-address server.example.com;
}
Run Code Online (Sandbox Code Playgroud)

并在您的 DNS 区域文件中,将 IP 分配给server.example.com.

优点:

  • DNS 区域文件现在是所有 IP 分配的“唯一真实来源”。可以轻松查找错误(重复的 IP、拼写错误),并确保每个人都可以准确无误地找到服务器的 IP 地址
  • 对网络基础设施的更改可以轻松传播。部署备用 DNS 服务器?只需将其添加到 DHCP 配置文件中,所有系统在续订租约时都会选择它。
  • 根据定义,对计算机 IP 和计算机 DNS 条目的更改不能不同步。将计算机移动到新的子网?在一处更改 IP,一切就完成了。

缺点:

  • 您添加了一个重要的故障点。使用备份 DHCP 服务器来缓解这种情况。较长的租赁时间也有帮助。
  • 生成树学习模式会阻止 DHCP 请求,这会显着延长计算机启动时间,甚至导致 DHCP 超时。使用portfast关闭选定端口上的生成树。顺便说一句,对于工作站来说也是个好主意。

  • 如果有人可以在您的网络上运行恶意 DHCP 服务器,您为何认为他们无法想出六种其他方法来引发问题? (3认同)

Sam*_*cke 5

为什么还没有提出类似cfengineorpuppet和静态 IP 地址的组合?从鸟瞰的角度来看,这是两者中最好的——集中配置,无需担心丢失关键路径服务。它是否提供了一个把事情搞砸的中心方式?是的,但 DHCP 也是如此。

在我工作过的大型安装中,这一切都是通过托管 kickstarts 和cfengine...的组合完成的,而且效果很好。此外,大多数(如果不是全部)VPS 提供商都使用配置工具来计算 IP 地址并在创建的实例中静态设置它们——配置管理 + 静态 IP 地址的另一个示例。

对于足够大的安装,您应该使用配置管理并按原样接近完全自动化的部署,更不用说更改控制程序(理想情况下)会详细说明这些程序。


Rob*_*oir 1

我不同意为服务器使用 DHCP 的想法 - 尽管在非常大的网络上我可以想象这可能会有点模糊 - 但这是一个偏好问题而不是一个硬而快的事情恕我直言 - 你可以为服务器等保留地址(虽然如果你这样做,那么为什么不让它们静态,这让我回到为什么我不同意它......)。

我认为一些服务器应用程序要么明确需要静态 IP 地址,要么如果它们的地址确实发生变化,则根本无法正常运行。对我来说,那些人往往强烈指出这是一个坏主意。