Debian
DHCP 動態塊分配
我們有大量客戶端連接到我們的 DHCP 機器。我們希望將其中一些分配給不同的 IP 塊,以較低的優先級路由。每次 DHCP 租約更新時,我們都想檢查數據庫並決定我們想將客戶分配給哪個 IP 塊。
在決定在哪個池中分配哪個地址時,有沒有辦法讓 DHCP 伺服器執行腳本、查看數據庫或執行一些動態程式碼?每個客戶端都由 option82 唯一標識,即“DHCP 中繼代理資訊選項”。
理想情況下,您應該修改 dhcpd 以支持基於 Option82 的地址分配,相當於主機對像中的“硬體”行。我在 ISP 工作時使用 OpenBSD dhcpd 完成了它,它的內部結構比 isc-dhcpd 更簡單。
如果您無法做到這一點,請查看 omapi(3) 和 omshell(1);您將使用 OMAPI 動態創建“類”和“池”對象,以實現 Zypher 的建議。我剛剛檢查
dhcpd.h
過,class
結構有一個OMAPI_OBJECT_PREAMBLE
,所以這應該是可能的。請注意,關於 OMAPI 的文件可能有點…… 吝嗇。