DHCP 服务器日志

1.10 DHCP 服务器日志

http://book.51cto.com/art/201411/458194.htm

DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一种有效的IP 地址分配手段,已经广泛地应用于各种局域网管理。它能动态地向网络中每台计算机分配唯一的IP 地址,并提供安全、可靠、简单和统一的TCP/IP 网络配置,确保不发生IP 地址冲突。当在服务器上启用DHCP 后,我们希望了解服务的运行情况,希望看到详细日志。可以通过下面的命令了解到DHCP 服务的日志文件在什么地方。

以RHEL 5 系统为例,命令如下:
 

 
  
  1. #rpm –ql dhcp-server 

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

DHCP 服务器日志_第1张图片

对于以上日志我们可以把在1.2 节学到的脚本放到这里进行分析。还有没有其他什么文件,记录了DHCP 的分配IP 的信息呢?那就是/var/lib/dhcp/db/dhcpd.leases 文件,它记录了客户机分配IP 的详细信息。下面我们通过一个例子解读一下。

客户机每次获取地址后会产生如下信息:

 
  
  1. Lease 192.168.150.207 {  
  2. Starts 1 2012/12/31 11:23:32  
  3. End 1 2012/12/31 11:25:32;  
  4. Tstp 1 2012/12/31 11:25:32;  
  5. Cltt 1 2012/12/31 11:25:32;  
  6. Binding state free;  
  7. Hardware ethernet 00:0c:29:51:b3:d9;  
  8. Uid "\001\000\014)Q\263\331";  
  9. Client-hostname "linux-5jlv";  

每当发生租约变化的时候,都会在文件结尾添加新的租约记录,也就是说这个文件是在不断变化的。表1-12 做出解释。

表1-12 DHCP 日志含义

DHCP 服务器日志_第2张图片

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

假设需要将日志记录在/var/log/目录下,则可以先用touch 命令创建一个dhcp.log 文件。

1)创建dhcp.log 文件
 

 
  
  1. #touch /var/log/dhcp.log  
  2. #chmod 640 /var/log/dhcp.log 

2)修改/etc/dhcpd.conf 配置文件,添加“log-facility”参数并赋值为local4,内容如下:
 

 
  
  1. log-facility local4; 

然后保存退出(不同Linux 发行版配置文件路径有所不同)。

3)在/etc/rsyslog.conf 文件中添加
 

 
  
  1. local4.* /var/log/dhcp.log 

将下面这条
 

 
  
  1. *.info;mail.none;authpriv.none;cron.none /var/log/mesages 

改为:
 

 
  
  1. *.info;mail.none;authpriv.none;cron.none;local4.none /var/log/messages 

目的是把消息传送到/var/log/messages 文件,而不再向local4 传送。

注意要把下面这行语句注销:
 

 
  
  1. $ActionFileDefaultTemplate,RSYSLOG_TraditionalFileFormat 

4)重启Rsyslog 和DHCP 服务
 

 
  
  1. #service rsyslog restart  
  2. #service dhcpd restart 

重启DHCP 服务即可生效,这时的日志文件就是DHCP 服务器出现故障后排除错误的一个重要基础数据。所以需要定期对这个日志文件作好备份工作。否则,当这个日志意外丢失后,就很难查清DHCP 服务器的故障。

1.10 DHCP 服务器日志

DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一种有效的IP 地址分配手段,已经广泛地应用于各种局域网管理。它能动态地向网络中每台计算机分配唯一的IP 地址,并提供安全、可靠、简单和统一的TCP/IP 网络配置,确保不发生IP 地址冲突。当在服务器上启用DHCP 后,我们希望了解服务的运行情况,希望看到详细日志。可以通过下面的命令了解到DHCP 服务的日志文件在什么地方。

以RHEL 5 系统为例,命令如下:
 

 
  
  1. #rpm –ql dhcp-server 

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

DHCP 服务器日志_第3张图片

对于以上日志我们可以把在1.2 节学到的脚本放到这里进行分析。还有没有其他什么文件,记录了DHCP 的分配IP 的信息呢?那就是/var/lib/dhcp/db/dhcpd.leases 文件,它记录了客户机分配IP 的详细信息。下面我们通过一个例子解读一下。

客户机每次获取地址后会产生如下信息:

 
  
  1. Lease 192.168.150.207 {  
  2. Starts 1 2012/12/31 11:23:32  
  3. End 1 2012/12/31 11:25:32;  
  4. Tstp 1 2012/12/31 11:25:32;  
  5. Cltt 1 2012/12/31 11:25:32;  
  6. Binding state free;  
  7. Hardware ethernet 00:0c:29:51:b3:d9;  
  8. Uid "\001\000\014)Q\263\331";  
  9. Client-hostname "linux-5jlv";  

每当发生租约变化的时候,都会在文件结尾添加新的租约记录,也就是说这个文件是在不断变化的。表1-12 做出解释。

表1-12 DHCP 日志含义

DHCP 服务器日志_第4张图片

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

假设需要将日志记录在/var/log/目录下,则可以先用touch 命令创建一个dhcp.log 文件。

1)创建dhcp.log 文件
 

 
  
  1. #touch /var/log/dhcp.log  
  2. #chmod 640 /var/log/dhcp.log 

2)修改/etc/dhcpd.conf 配置文件,添加“log-facility”参数并赋值为local4,内容如下:
 

 
  
  1. log-facility local4; 

然后保存退出(不同Linux 发行版配置文件路径有所不同)。

3)在/etc/rsyslog.conf 文件中添加
 

 
  
  1. local4.* /var/log/dhcp.log 

将下面这条
 

 
  
  1. *.info;mail.none;authpriv.none;cron.none /var/log/mesages 

改为:
 

 
  
  1. *.info;mail.none;authpriv.none;cron.none;local4.none /var/log/messages 

目的是把消息传送到/var/log/messages 文件,而不再向local4 传送。

注意要把下面这行语句注销:
 

 
  
  1. $ActionFileDefaultTemplate,RSYSLOG_TraditionalFileFormat 

4)重启Rsyslog 和DHCP 服务
 

 
  
  1. #service rsyslog restart  
  2. #service dhcpd restart 

重启DHCP 服务即可生效,这时的日志文件就是DHCP 服务器出现故障后排除错误的一个重要基础数据。所以需要定期对这个日志文件作好备份工作。否则,当这个日志意外丢失后,就很难查清DHCP 服务器的故障。

你可能感兴趣的:(linux应用)