您的位置:首页 > 其它

统计 DHCP 服务器 ip 分配情况的脚本

2013-01-31 10:33 357 查看
2008-02-04 11:54:09
标签:IP 网络 DHCP 服务器 休闲
**************************************************************************************

作者 :ailms <ailms{@}qq{dot}com>

版本 :v1.1

完成时间 :2008/02/02 0:28

**************************************************************************************

一、介绍

由于 ISC DHCP 没有提供相应的统计工具,所以只能自己动手写一个。sourceforge.net 上也有很多,例如

QUOTE:

php DHCP hosts list : 一个 php 脚本,用于列出一个 DHCP 服务器上的 host 信息

rogueDetect :发送一个“诱骗”作用的 DHCP DISCOVER ,并等待非权威的 DHCP 服务器消息,以找出未授权的 DHCP 服务器

phpDHCPAdmin :一个基于 web 界面的管理 DHCP 工具。有认证、错误检查、数据库驱动,简单易用

Analyzes of behavior of protocol DHCP :dhcpmap 能够“注入”和捕捉 DHCP 流量

dhcpphp :一个 PHP 脚本,用于显示一个 DHCP 服务器的 leases 记录

webDHCP :类似 phpDHCPAdmin 的工具

DHCP lease parser :是一个简单的守护进程,它把 DHCP 服务器的 leases 状态的变化记录到一个数据库,以便历史查询。

同时该工具还提供了一个历史记录以供查询

Lanloard DHCP lease tracker :一个 CGI 程序,用于跟踪 DHCP leases

ISC DHCP dhcpd.conf parser and editor :以一个友好的界面方便你编辑 dhcpd.conf

DHCPdetector :用于检测网络上的 DHCP 服务,主要是为了找出 rogue DHCP

reportdhcp.pl :一个用于汇报 DHCP 统计信息的 perl 脚本,需要启用 web 服务

所以俺也动手写了一个,功能比较简单,主要有 :

1、查询某个 mac 的租用记录 (v1.0)

2、查询某个 ip 地址的租用记录 (v1.0)

3、查询某个主机名的租用记录 (v1.0)

4、允许指定查询的开始时间和结束时间。开始时间默认为当天0点,结束时间默认为当前。(v1.0)

5、列出所有曾经被租用的 ip 以及它们目前的状态 (v1.0)

6、许指定某个备份的 lease.record.<date> 进行查询。(v1.1)

7、每月15日的0点10分自动把 lease 记录以 lease.record.<date> 备份,所以意味着默认只能查15天内的数据 (v1.1)

二、限制

目前暂时不考虑 DHCP Failover 以及 DHCP Omshell 的分析(这两个东西都会在 dhcpd.leases 中写数据)。

该脚本只记录客户机的 mac、客户机的主机名(如果有的话)以及 lease 的开始/结束时间/状态。

由于环境所限,只有1台客户机可供测试,所以欢迎各位朋友多多指正

三、 脚本组成

a) lease_wath.sh ,主要是跟踪 /var/lib/dhcp/dhcpd.leases 文件的输出,并固定输出到某个文件(默认是 /tmp/lease.record)。

每次只能启动一个 lease_watch.sh ,否则程序会报错(Error!Another lease_watch is running!)

b) parse.sh :完成上述的功能的第1~6 项 。

c) rotate.sh :每月15日的0点10分自动把当前的 /tmp/lease.record 备份为 /tmp/lease.record.<date> ,同时重启 lease_watch。

四、屏幕截图

按 ip 选择:



按 mac 选择 :



按 hostname 选择:



指定某个历史文件进行查询



列出所有曾经被租用的 ip 以及其状态 :



语法 :

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: