Windows DHCP Server基于MAC地址过滤客户端请求实现IP地址的分配

简介:

企业中,为了降低管理员对于IP地址管理、分配的复杂繁琐性,很多企业都会架设Windows DHCP服务器,通过DHCP服务器为企业中的客户端自动分配IP地址。

但是面对现代如此庞大数量的客户端PC、手机、平板等,也导致安全性面临巨大挑战。其实DHCP可以通过MAC地址过滤来实现IP地址分配,可以将企业中多有授权的客户端MAC地址收集起来,在DHCP服务器中进行设置,使其顺利获取IP,而没有被授权的客户端则不能获取IP。

从Windows Server 2008 R2开始,基于MAC地址过滤已经集成在DHCP中,作为一大特性存在。但是早期的Windows Server 2003、Windows Server 2008 并没有包含该特性,那么仍然使用这些低于server 08 R2版本的DHCP Server的企业该怎么解决这个问题呢?这里给大家做详细的介绍。

对于仍然基于 2K03、2K08平台架设的DHCP服务器来说,只要安装 MacFilterCalloutInstaller(有x86和x64之分),然后进行简单的配置即可实现。

环境介绍:

VMware Workstation  虚拟机两台(运行在同一宿主机);

一台安装Windows Server 2003 SP2 (32位), 并安装DHCP  Server角色;

另一台 XP Pro  sp3, 作为DHCP Client,进行测试。

查看DHCP Server系统版本信息:

wKioOVLD9-rxEN6TAAD9mNsEkoM088.jpg

查看客户端MAC地址:

wKioOVLD--GxcIDRAABph4l6h_k034.jpg

为了防止DHCP Server对生产环境PC分配IP,造成不能上网,所以分别对两台虚拟机网络适配器作如下设置:

wKioOVLD9t3wmfrpAADgqq2hA7Q102.jpg

安装MacFilterCalloutInstaller:  

双击"MacFilterCalloutInstaller-x86.msi" 可执行文件,启动安装向导;

勾选"接受许可协议":

wKioOVLD9b7jMrWHAACsQ81_tk0725.jpg

安装完成向导,【Finish】就安装完成了。

wKioJlLD-LahvEIuAABpTFTT5lg117.jpg

安装完成后会在 system32 目录下生成两个文件:"MacFilterCallout.dll" "SetupDHCPMacFilter.rtf"

如图示:

wKioJlLD-jGwcpSGAACwKrE08SE065.jpg

wKioOVLD-iryb8NJAADfumRS9MQ872.jpg

同时,system32\dhcp 目下,生成文件 "MACList.txt":

wKioJlLD-rvDQz-oAADDsQ3-rTw738.jpg

打开MACList.txt 文件,可以看到如下图:

wKioOVLD-xHjFASKAAAvhvsq5Vo558.jpg

"MACList.txt"是主要文件,DHCP Server处理请求时就是从这个文件中读取数据,然后匹配。

这是默认配置,默认情况下,允许所有客户端从DHCP Server 请求IP地址。MAC_ACTION的

可选参数值: ALLOW,DENY,分别用来设置允许列表和拒绝列表。

进行“允许列表”配置测试:

1. 向“MACList.txt”添加一个虚假MAC(内网没有该MAC),然后重新启动DHCP Server服务,

然后测试客户端能否正常获取IP:

wKioJlLD_X7h8lbDAAAy4CNXtds163.jpg


查看DHCP Client:

wKioOVLD_XbA6BQJAADUPQkvZ2A442.jpg

IP地址获取失败,因为client MAC地址没有加入允许列表。

2. 将Client MAC 加入到允许列表并重启DHCP Server服务,然后测试客户端:

wKioJlLD_mWCsnP-AAA3K-WlVms234.jpg

查看查看DHCP Client:

wKioOVLD_oeSkY4WAADf0Y_SX5Y689.jpg

可见,IP地址成功获取,配置无误。

下面我们将DHCP服务器修改为拒绝列表方式测试。

进行“拒绝列表”配置测试:

1. 打开"MACList.txt" 文件,将"ALLOW"改为"DENY",重启DHCP Server服务:

wKioOVLD_5zQiVjhAAAuIGUDLFA129.jpg


查看客户端IP地址获取情况:

wKioJlLD_6SgUVIaAAD8s2HVQUk859.jpg

客户端正常获取IP。说明:不管是允许列表还是拒绝列表,如果列表不进行配置(为空),则默认为DHCP Server 接受所有客户端发来的DHCP 请求。


2. 将虚假MAC地址加入文件中:

wKioOVLD_5yB59-sAAAuNH08JDQ931.jpg

重启DHCP Server服务,查看客户端IP地址获取情况:

wKioJlLEALDgMisPAAEINvx2RZQ988.jpg

可见,客户端不受影响,正常获取IP地址。

3. 将客户端MAC地址加入文件中:

wKioOVLEAPXAI2C3AAAxX7QAvuI430.jpg

重启DHCP Server服务,查看客户端IP地址获取情况:

wKioJlLEAP2jXtkeAAD1eZJj-pY998.jpg

客户端不能从DHCP Server 获取IP地址了。

由此,我们可以顺利的控制内网客户端IP地址分配了,同时如果内网有主机需要固定IP,在DHCP控制台的对应作用域的"保留"中创建保留就可以了。


注意: 每次修改列表都需要重启DHCP Server服务,然后才能生效。


相关技术介绍: http://blogs.technet.com/b/teamdhcp/archive/2007/10/03/dhcp-server-callout-dll-for-mac-address-based-filtering.aspx





     本文转自marbury 51CTO博客,原文链接:http://blog.51cto.com/magic3/1347423,如需转载请自行联系原作者



相关文章
|
6月前
|
编解码 Android开发
Android获取设备各项信息(设备id、ip地址、设备名称、运行商、品牌、型号、分辨率、处理器、国家码、系统语言、网络类型、oaid、android版本、操作系统版本、mac地址、应用程序签名..)1
Android获取设备各项信息(设备id、ip地址、设备名称、运行商、品牌、型号、分辨率、处理器、国家码、系统语言、网络类型、oaid、android版本、操作系统版本、mac地址、应用程序签名..)
322 1
|
6月前
|
缓存 网络协议 网络架构
【计算机网络】第三章 数据链路层(MAC地址 IP地址 ARP协议)
【计算机网络】第三章 数据链路层(MAC地址 IP地址 ARP协议)
117 1
|
2月前
|
iOS开发 MacOS Windows
Mac air使用Boot Camp安装win10 ,拷贝 Windows 文件时出错
Mac air使用Boot Camp安装win10 ,拷贝 Windows 文件时出错
|
23天前
|
网络协议 Windows
Windows Server 2019 DHCP服务器搭建
Windows Server 2019 DHCP服务器搭建
|
23天前
|
网络协议 Windows
Windows Server 2003 DHCP服务器搭建
Windows Server 2003 DHCP服务器搭建
|
6月前
|
编解码 开发工具 Android开发
Android获取设备各项信息(设备id、ip地址、设备名称、运行商、品牌、型号、分辨率、处理器、国家码、系统语言、网络类型、oaid、android版本、操作系统版本、mac地址、应用程序签名..)2
Android获取设备各项信息(设备id、ip地址、设备名称、运行商、品牌、型号、分辨率、处理器、国家码、系统语言、网络类型、oaid、android版本、操作系统版本、mac地址、应用程序签名..)2
358 2
|
3月前
|
芯片 iOS开发 MacOS
Mac上运行windows软件-GPTK
Mac上运行windows软件-GPTK
172 1
|
3月前
|
JavaScript 前端开发 Shell
mac和windows上安装nvm管理node版本
NVM(Node Version Manager)是前端开发者常用的命令行工具,用于管理计算机上的不同Node.js版本。通过NVM,开发者可以轻松地在多个项目间切换所需的Node.js版本。在Mac上,可以通过cURL或Wget下载安装脚本,或使用包管理工具brew安装。安装后需配置环境变量以识别NVM命令。Windows用户则可通过专用的nvm-windows安装程序完成安装。常用命令包括安装、卸载特定版本、列出已安装版本等。
295 0
|
3月前
|
文字识别 监控 Windows
Mac 常用软件、快捷健、常用操作 和 Windows 对比
Mac 常用软件、快捷健、常用操作 和 Windows 对比
38 0
|
6月前
|
监控 负载均衡 网络协议