具有数据库后端的DHCP服务器


8

我一直在寻找替代我的(古老的)ISC-DHCPd服务器的工具。

对我来说,带有数据库后端的DHCP服务器听起来是个好主意,因为这样我就可以为服务器提供一个友好的Web界面了。令人惊讶的是,我无法提供任何主要的开源项目。

有人知道吗?我还读过有关修改ISC以使用数据库后端的信息...谁能告诉我这种解决方案对于繁忙的生产服务器是否足够稳定?还是一起使用Bad Bad™数据库?

PS- /programming/893887/dchp-with-database-backend看起来无法回答这个类似的老问题。

编辑:我正在寻找免费的OS平台,Linux或BSD上的东西。如果有绝对伟大的东西仅适用于Windows,仍然会感兴趣。


什么操作系统?我猜它是Linux,但我们永远不必猜测。
约翰·加迪尼尔

我可以看到想要一个数据库支持的DHCP服务器。这将使多个DHCP服务器之间的高可用性和负载共享变得相当容易。在拥有大量客户的环境中,这可能会很不错。另一件事要添加到“如果有时间我会做的事情”一堆...>感叹<
Evan Anderson

@Evan,即使没有数据库,您也可以通过运行多个dhcp服务器来提供高可用性
topdog 2010年

@topdog:但是,如果他们没有共享相同的租约信息,我不认为它们是“高可用性”。Windows DHCP的旧“高可用性”技巧(例如,运行“重叠” DHCP服务器)在我的书中不是“高可用性”,因为当客户端“故障转移”到不知道任何内容的DHCP服务器时,客户端会收到虚假的NAK。关于他们先前的租约。
埃文·安德森

只是好奇,您是否找到过执行此操作的软件?我的处境大致相同。
devicenull 2012年

Answers:


4

ISC DHCP 4.x允许DHCP服务由LDAP数据库(本地或远程)支持。

Fedora 12+和Ubuntu(版本未知)上的软件包均包含LDAP模式文件。

您启动DHCP服务器并将其指向LDAP数据库(通过简短的配置文件)。如果选择动态数据库,则每个DHCP查询将成为一个LDAP查询/响应。

使用LDAP,您可以使用任何语言通过LDAP库从任何可路由到LDAP服务器的地址更新DHCP内容。LDAP DB可以为无限数量的DHCP服务器提供服务。

我用它来允许工程师向网络添加和删除测试盒,而无需他们登录到DHCP服务器,编辑文件或使用root privs。


这看起来很有希望...
Evan Anderson

最后,我了解到这一点,LDAP包含项是“ v1”功能,因为它是最近引入产品中的,可能仍然不稳定。@markllama,您是否发现dhcpd配置的某些部分仅在服务重启后才生效?我已经阅读了一些报告,其中一些配置项是实时访问的,有些配置项仅在启动时加载-对我来说这很有意义,因为dhcpd传统上只在服务启动时读取config / host文件。
aNullValue 2010年

@Stemen:是的-看来它尚未被接受到上游。这对我来说不太有用,因为我真的不希望不在修补的程序发行版上运行生产系统。
埃文·安德森

@埃文·安德森:这里也是。对于多个DHCP服务器使用LDAP服务器,您还必须考虑系统可靠性...它根本无法满足许多正常运行时间要求,尽管它对于那些能够接受DHCP可能的用户来说是可行的如果LDAP和/或连接中断,请关闭一段时间。
aNullValue 2010年

3

我有一个类似的问题。

我最终写了几行Python代码来从数据库后端生成DHCP配置文件。我使用diff定期检查生成的文件是否对旧配置进行了更改,在这种情况下,我将重新加载DHCP服务器。

对于我来说,在多个数据中心,数十个网络和数百个IP上运行效果很好。

还允许您拥有“ Web界面”并保持开源。


3

在这些家伙ISC(BIND和ISC DHCP服务器的作者)正在研究KEA,一个新的DHCP服务器实现, -其他不错的功能之中-有SQL支持。源代码已经支持SQLite和MySQL多年了,最近增加了PostgreSQL支持。

目前尚无适当的版本,其开发人员 / 用户邮件列表上的活动很少。希望随着代码的成熟,发布,发行版开始打包而改变,并在用户中引起关注。


实际上,到目前为止,只有部分PostgreSQL支持-在1.0.0版中-它不支持将主机信息存储在Postgres中(它们声称很快就会发布)-仅在MySQL中。
大卫

3

我一直在自己进行研究,从而发现了这个话题。我发现:

  • Anemon DHCP,它似乎已失效/消失(因此archive.org链接)。“模块使anemon能够使用许多数据库作为后端(mysql,postgresql,mssql,sqllite,sybase等。)”
  • ISC的KEA “ MySQL,Postgres后端支持”。
  • staticDHCPd “数据库:Postgres,MySQL,Oracle,SQLite”

2

您在寻找什么优势?您多久更改一次DHCP配置?除了添加,删除或修改偶尔保留的DHCP外,DHCP还应该是一个设置即忘记的系统。如果您需要定期执行任何操作,则需要重新考虑您的方法。


2
究竟。添加,删除,修改保留。当我必须一直拆分/合并范围时,这是一种痛苦。另外,不必用脚本解析一个大的丑陋的租约文件,而是将当前的租约和租约历史记录放在数据库中会很不错。
科里(Cory J)2010年

也许我应该在原始帖子中提到我是ISP。DHCP绝对不是“设置并忘记”的。
Cory J

2
@Cory,确实可以改变一点。
约翰·加迪尼尔

2

BlueCat.com的设备非常酷,它们可以进行IP地址管理(DNS / DHCP),完全符合要求,但它们不是开源的/免费的。

Bluecat允许您委派角色,例如,可以为客户提供反向区域中/ 26或类似名称的编辑权限,并且所有内容都由DNS和DHCP的高可用性数据库处理。

如果有人在开放源代码世界中了解到类似的信息,我很想听听它。.我希望Microsoft能够像使用DNS一样将DHCP集成到Active Directory中。这对我来说是完美的(我知道-不是开源的,但是如果服务器中包含它,它将对我有用!)


0

如果您是ISP,请考虑使用VitalQIP。它是一种商业产品,但是我无法想象没有它。

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.