DHCP 日志分析

DHCP 日志分析linux

DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一种有效的IP 地址分配手段,现已经被普遍地应用在各类局域网管理。它能动态地向网络中每台计算机分配惟一的IP 地址,并提供安全、可靠、简单和统一的TCP/IP网络配置,确保不发生IP地址冲突。当在服务器上启用DHCP后,咱们但愿了解服务的运行状况,但愿看到详细日志。能够经过下面的命令了解到dhcp server的日志文件在什么地方。以RHEL系统为例,命令以下:安全

rpm –ql dhcp-server

DHCP服务的默认日志不会输出到指定文件,而是和NFS服务同样,输出到/var/log/messages文件中,成了日志的大杂烩,不便于分辨,也不便于查找故障,一旦messages文件遭到破坏,DHCP的日志也跟着受影响。服务器

wKiom1TbD_jj1VZ8AAWFPjgF4d0399.jpg
对于以上日志咱们能够把在1.2节学到的脚本放到这里进行分析。还有没有其余什么文件,记录了DHCP的分配IP的信息呢?那就是/var/lib/dhcp/db/dhcpd.leases文件,它记录了客户机分配IP的详细信息。下面咱们经过一个例子解读一下。
客户机每次获取地址后会产生以下信息:
Lease 192.168.150.207 {
Starts 12012/12/31 11:23:32
End 1 2012/12/31 11:25:32;
Tstp 1 2012/12/31 11:25:32;
Cltt 1 2012/12/31 11:25:32;
Bindingstate free;
Hardwareethernet 00:0c:29:51:b3:d9;
Uid“\001\000\014)Q\263\331”;
Client-hostname “linux-5jlv”;
}
每当发生租约变化的时候,都会在文件结尾添加新的租约记录,也就是说这个文件是在不断变化的。表1作出解释。
表1 DHCP日志含义
参数
含义网络

Lease
租用IP日志

starts
开始时间code

end
结束时间orm

tstp
指定租约过时时间server

cltt
客户端续约时间ci

Binding state
租约绑定状态自由(free)、激活(active)get

Hardware ethernet
客户机网卡MAC地址

UID
客户端标识符由三位八进制表示用于与MAC匹配

Client-hostname
客户机名称

从上面分析看到,DHCP服务器的日志在messages和dhcpd.leases里分别有一部分都不全面,如何将DHCP的日志专门转储到特定文件中呢?下面介绍一种方法。

假设咱们须要将日志记录在/var/log/目录下,咱们先touch一个dhcp.log文件。
1).建立dhcp.log文件

touch /var/log/dhcp.log

chmod 640 /var/log/dhcp.log

2).修改/etc/dhcpd.conf配置文件,而后保存并退出。(注意不一样Linux发行版配置文件路径有所不一样)
log-facility local4;
3).在/etc/rsyslog.conf文件中添加
Local4.* /var/log/dhcp.log
注意要把下面这行语句注销
Local4,local5.* -var/log/localmessages;RSYSLOG_TraditionalFileFormat
重启DHCP服务便可生效,这时的日志文件就是DHCP服务器出现故障后排除错误的一个重要基础数据。因此,咱们还须要按期对这个日志文件做好备份工做。不然,当这个日志意外丢失后,咱们就很难查清DHCP服务器的故障。
另外,对于Windows Server 平台DHCP日志,请参考http://support.microsoft.com/kb/298367/zh-cn

更多日志分析精彩实战请参考《UNIX/Linux网络日志分析与流量监控》一书

相关文章
相关标签/搜索