Ubuntu

DHCP:在日誌文件中記錄主機聲明

  • July 8, 2009

我目前在 Ubuntu 8.04 上執行 ISC-DHCP 伺服器 v3。我想做的是記錄誰在什麼時候得到了什麼IP地址。

目前在 DHCP 日誌文件中,您可以看到以下內容:

DHCPDISCOVER from d0:50:56:ac:74:71 via eth0
DHCPOFFER on 208.x.x.75 to d0:50:56:ac:74:71 via eth0
DHCPREQUEST for 208.x.x.75 (172.18.1.2) from d0:50:56:ac:74:71 via eth0
DHCPACK on 208.x.x.75 to d0:50:56:ac:74:71 via eth0

我想達到我看到這個或類似的東西的地步:

DHCPDISCOVER from d0:50:56:ac:74:71 via eth0
DHCPOFFER on 208.x.x.75 to d0:50:56:ac:74:71 via eth0
DHCPREQUEST for 208.x.x.75 (172.18.1.2) from d0:50:56:ac:74:71 via eth0
DHCPACK on 208.x.x.75 to d0:50:56:ac:74:71 (TestPC001) via eth0

出於歷史目的,我需要記錄獲得 IP 地址的主機(日誌文件有時間戳,但我為這篇文章刪除了它們)。

在我的 dhcpd.conf 文件中,我有以下主機聲明:

host TestPC001 {
    hardware ethernet d0:50:56:ac:74:71;
    fixed-address 208.x.x.75;
}

如果有人知道如何使用 DHCP3 來做到這一點會很棒,我願意接受有關可以做到這一點的 3rd 方應用程序的建議。需要注意的一點是,dhcpd.conf 文件是使用執行 RADIUS 的第 3 方應用程序動態生成的,因此主機聲明可以並且將會更改,因此如果網路上的某人有問題,我不能只查看文件並得到他們的名字。

我已經想通了。

將以下內容添加到 dhcpd.conf 文件

if known { 
   log (info, concat ("HOSTNAME: ", host-decl-name, " on ",binary-to-ascii (10, 8, ".", leased-address)," at ", binary-to-ascii (16, 8, ":", substring (hardware, 1, 6)))); 
}  

將導致(我已經刪除了整潔的時間戳):

HOSTNAME: TestPC001 on 208.x.x.75 at d0:50:56:ac:74:71
DHCPDISCOVER from d0:50:56:ac:74:71 via eth0
DHCPOFFER on 208.x.x.75 to d0:50:56:ac:74:71 via eth0
DHCPREQUEST for 208.x.x.75 (172.18.1.2) from d0:50:56:ac:74:71 via eth0
DHCPACK on 208.x.x.75 to d0:50:56:ac:74:71 via eth0

引用自:https://serverfault.com/questions/37451