DHCP服务器可以通过DHCP为自己分配IP地址吗


9

这似乎是一个愚蠢的问题(我担心可能是这样),但是充当网络唯一DHCP服务器的服务器是否有可能向网络发送IP地址请求,然后捕获其自己的请求并进行响应?

我所有的直觉都指向没有答案,理想情况下,我会对其进行测试,但是我目前没有时间/备用资源,因此我希望其他人也可能有相同的想法并尝试过。

这本来是一个通用问题,但是如果有人感兴趣,我会在ubuntu 11.04上运行isc-dhcp


我没有,但是魔鬼正在为懒惰的人工作。
James Butler

4
恶魔为空闲网络制作数据包。
汤姆·奥康纳

Answers:


9

从技术上讲,规范将允许这种情况发生,但尝试这样做绝非愚蠢。


2

从两个方面来说,这是一个坏主意,但是有可能的。

  1. 如果尚未启动同一台计算机上的DHCP服务器,则服务器无法在启动过程中分配IP。因此,在尝试分配IP之前,必须确保DHCP服务器已启动。
  2. 如果DHCP还为动态分配的主机更新了DNS,那么当DNS发生故障时(无论出于何种原因),很难知道DHCP服务器在哪里。

2

从理论上讲,我认为应该有可能,因为如果没有配置或提供,大多数Linux发行版都会提供一个apipa(169.254.0.1至169.254.255.254)地址。因此,dhcp服务器应该能够运行并可能回答请求。现在,如果您为服务器自己的mac地址配置了一个保留(固定)的IP地址,并且dhcp客户端守护程序保持运行并继续尝试,则理论上应该可以由dhcp服务器守护程序应答。然后,它应该能够设置自己的正确IP地址,并继续回答来自其他计算机的dhcp请求。

我不确定dhcp服务器是否可以具有apipa地址,我认为服务器守护进程需要在ip更改后重新启动,但是除此之外……我仍然无法想到任何明智的用例。


1

据我所知这是不可能的。DHCP不仅基于广播。DHCP协议的初始部分是基于广播的,但是在某些时候,服务器和客户端使用其IP地址进行通话。

如果我没记错(手头没有RFC),则服务器是会话中需要发送真实ip地址信息的第一台服务器。

这自动使服务器无法自行服务。

当然,服务器本身可能是从另一个DHCP服务器(通常是保留固定的ip)接收其DHCP配置的DHCP客户端。有点奇怪,但是我可以想象这种设置的一些用例。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.