我认为有2种办法
1。你可以查看防火墙信息,如图,可以清晰的看到,192.1681.200的IP给了哪个MAC地址
2. /var/lib/dhcpd/dhcpd.leases 这个文件专门记录了DHCP的分配情况
http://carywu.blog.51cto.com/13185/61628
========================
从dhcpd.lease中提取MAC和IP地址. 2008-01-10 22:17:26
本文出自 “风吹云动” 博客,请务必保留此出处http://coolerfeng.blog.51cto.com/133059/58773
1.DHCP配置文件中的parameters(参数):表明如何执行任务,是否要执行任务,或将哪些网络配置选项发送给客户。主要内容见表1
参数< XMLNAMESPACE PREFIX ="O" /> |
解释 |
ddns-update-style |
配置DHCP-DNS 互动更新模式。 |
default-lease-time |
指定确省租赁时间的长度,单位是秒。 |
max-lease-time |
指定最大租赁时间长度,单位是秒。 |
hardware |
指定网卡接口类型和MAC地址。 |
server-name |
通知DHCP客户服务器名称。 |
get-lease-hostnames flag |
检查客户端使用的IP地址。 |
fixed-address ip |
分配给客户端一个固定的地址。 |
authritative |
拒绝不正确的IP地址的要求。 |
2. DHCP配置文件中的declarations (声明):用来描述网络布局、提供客户的IP地址等。主要内容见表2:
声明 |
解释 |
shared-network |
用来告知是否一些子网络分享相同网络。 |
subnet |
描述一个IP地址是否属于该子网。 |
range 起始IP 终止IP |
提供动态分配IP 的范围。 |
host 主机名称 |
参考特别的主机。 |
group |
为一组参数提供声明。 |
allow unknown-clients ﹔deny unknown-client |
是否动态分配IP给未知的使用者。 |
allow bootp;deny bootp |
是否响应激活查询。 |
allow booting﹔deny booting |
是否响应使用者查询。
|
filename |
开始启动文件的名称,应用于无盘工作站。 |
next-server |
设置服务器从引导文件中装如主机名,应用于无盘工作站。 |
3. DHCP配置文件中的option(选项):用来配置DHCP可选参数,全部用option关键字作为开始,主要内容包括见表3:
选项 |
解释 |
subnet-mask |
为客户端设定子网掩码。 |
domain-name |
为客户端指明DNS名字。 |
domain-name-servers |
为客户端指明DNS服务器IP地址。 |
host-name |
为客户端指定主机名称。 |
routers |
为客户端设定默认网关。 |
broadcast-address |
为客户端设定广播地址。 |
ntp-server |
为客户端设定网络时间服务器IP地址。 |
time-offset |
为客户端设定和格林威治时间的偏移时间,单位是秒。 |
++++++++++++++++++++
rpm -qa | grep dhcpd #查看主机是否安装dhcp包
# cp /usr/share/doc/dhcp*/dhcpd.conf.sample /etc/dhcpd.conf
/var/lib/dhcpd/dhcpd.leases为dhcp服务器和客户端租约建立的启动和到期时间的记录文件。
# cat /etc/dhcpd.conf
ddns-update-style none; #设置不要更新DDNS的设置
subnet 192.168.23.0 netmask 255.255.255.0 { #定义网段IP范围,须在本机所处网段范围内,{}内的信息表示此网段的配置信息
# --- default gateway
option routers 192.168.23.1; #设置客户端默认网关
option subnet-mask 255.255.255.0; #设置客户端子网掩码
option domain-name "domain.org"; #设置域名
option domain-name-servers 192.168.23.128; #设置网络内部DNS服务器的IP地址
option time-offset -18000; # Eastern Standard Time
range dynamic-bootp 192.168.23.129 192.168.23.254; #定义DHCP地址池的服务范围,需排除静态地址
default-lease-time 21600; #设置默认租约时间
max-lease-time 43200; #设置最大租约时间
host ns { #设置静态IP地址,用于网络内固定服务器IP,不要置于定义好的DHCP地址池范围内,否则会引起IP冲突。
hardware ethernet 00:0C:29:00:5B:78; #设置静态主机的mac地址,与IP进行绑定
fixed-address 192.168.23.128;
}
}
配置/etc/dhcpd.conf
#为注释,除括号一行外,每行都应以;结尾,
设置的项目都具有独特的名称。形式为<参数代号><设置内容>,如default-time 20000
某些项目必须利用option设置,形式为option<参数代码><设置内容>
DHCP的ip分为静态ip和动态ip,如果设置静态ip需要知道要设置主机的MAC地址,#ping 目标主机ip,#arp –n查看。
parameters(参数):表明如何执行任务,是否要执行任务,或将哪些网络配置选项发送给客户
Defaults-lease-time:默认租约时间,默认单位为秒
Max-lease-time:最大租约时间,客户端超过租约但尚未更新IP时,最长可以使用该IP的时间
ddns-update-style 配置DHCP-DNS 互动更新模式
default-lease-time 指定确省租赁时间的长度,单位是秒
hardware 指定网卡接口类型和MAC地址
server-name 通知DHCP客户服务器名称
get-lease-hostnames flag 检查客户端使用的IP地址
fixed-address ip 分配给客户端一个固定的地址
authritative 拒绝不正确的IP地址的要求
option(选项):用来配置DHCP可选参数,全部用option关键字作为开始
option routers:为客户端设定默认网关
option subnet-mask:为客户端设定子网掩码
option domain-name:为客户端指明DNS名字
option domain-name-servers:为客户端指明DNS服务器IP地址
option time-offset:为客户端设定和格林威治时间的偏移时间,单位是秒
option ntp-server:为客户端设定网络时间服务器IP地址
option host-name 为客户端指定主机名称。若客户端使用windows,不要选择host-name,即不要为其指定主机名称。
option broadcast-address 为客户端设定广播地址
declarations (声明):描述网络布局、提供客户的IP地址等
shared-network:告知是否一些子网络分享相同网络
subnet:描述一个IP地址是否属于该子网
range:起始IP 终止IP 提供动态分配IP 的范围
host:主机名称参考特别的主机
group:为一组参数提供声明
allow unknown-clients/deny unknown-client:是否动态分配IP给未知的使用者
allow bootp/deny bootp:是否响应激活查询
allow booting/deny booting:是否响应使用者查询
filename:开始启动文件的名称,应用于无盘工作站
next-server:设置服务器从引导文件中装如主机名,应用于无盘工作站。
配置文件修改完成后,#/usr/sbin/dhcpd即可运行dhcpd服务,如有错误则会将错误信息显示在屏幕上。可以通过netstat –unlt|grep 67查看dhcp的信息。也可以通过查看/var/log.messages查看dhcp的日志信息
DHCP客户端
Oct 5 21:50:39 master dhcpd: DHCPDISCOVER from 00:0c:29:54:6b:77 via eth0
Oct 5 21:50:39 master dhcpd: DHCPOFFER on 192.168.23.132 to 00:0c:29:54:6b:77 (win2003) via eth0
Oct 5 21:50:39 master dhcpd: DHCPREQUEST for 192.168.23.132 (192.168.23.254) from 00:0c:29:54:6b:77 (win2003) via eth0
Oct 5 21:50:39 master dhcpd: DHCPACK on 192.168.23.132 to 00:0c:29:54:6b:77 (win2003) via eth0
dhcpd.leases:
# cat /var/db/dhcpd.leases #dhcp服务器和客户端租约建立的启动和到期时间的记录文件,仅在客户端申请IP地址之后才会有:
………………………………………………
lease 192.168.23.129 { #linux客户端申请IP地址
starts 2 2010/10/05 13:24:26; # lease 开始租约时间
ends 2 2010/10/05 19:24:26; # lease 结束租约时间
cltt 2 2010/10/05 13:24:26;
binding state active;
next binding state free;
hardware ethernet 00:0c:29:3e:1b:f2; #客户机网卡MAC地址
}
server-duid "\000\001\000\001\024=\257w\000\014)\000[x";
lease 192.168.23.132 { #windows客户端申请ip地址
starts 2 2010/10/05 13:50:39;
ends 2 2010/10/05 19:50:39;
cltt 2 2010/10/05 13:50:39;
binding state active;
next binding state free;
hardware ethernet 00:0c:29:54:6b:77;
uid "\001\000\014)Tkw"; #用来验证客户机的UID标示
client-hostname "win2003"; #客户机名称
}
注意:lease 开始租约时间和lease 结束租约时间是格林威治标准时间(GMT),不是本地时间
Dhcp客户端重新获取IP地址:#dhclient eth0