开发者社区> 技术小胖子> 正文

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,如需转载请自行联系原作者



版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
CCNA-思科网络基础(IP地址 MAC地址 DNS DHCP PING )
CCNA-思科网络基础(IP地址 MAC地址 DNS DHCP PING )
91 0
以太网数据链路层、Ethernet_II帧格式、IEEE802.3帧格式,以太网的MAC地址的组成,ARP地址解析协议的工作原理,单播帧、组播帧、广播帧的区别
数据链路层,Ethernet_II帧格式、IEEE802.3帧格式,帧格式的区分以及链路层每种帧格式有什么作用,怎么区别分辨帧格式,以太网MAC地址的组成,ARP地址解析协议原理、什么是单播帧?什么是组播数据帧?什么是广播帧?...............
139 0
认识中小型局域网MAC地址及分类
认识中小型局域网MAC地址及分类
171 0
linux实用技巧:使用脚本获取活动网卡的mac地址
linux实用技巧:使用脚本获取活动网卡的mac地址
146 0
Mac 地址会重复吗?Mac 地址也会耗尽吗?
Mac地址有点像身份证号码,而IP地址就像门牌号码。在茫茫大海中仅凭一个身份证号码找到一颗别样的沙粒很难,但如果先找到具体的沙滩,沙滩划分很小的网格片区,就很容易通过身份证找到这颗别样的沙粒了。
352 0
【计算机网络】网络层 : IP 组播 ( IP 数据报传输方式 | 组播 IP 地址 | 组播 MAC 地址 | IGMP 协议 | 组播路由选择协议 )
【计算机网络】网络层 : IP 组播 ( IP 数据报传输方式 | 组播 IP 地址 | 组播 MAC 地址 | IGMP 协议 | 组播路由选择协议 )
143 0
【计算机网络】数据链路层 : 以太网 ( 无连接、不可靠服务 | 以太网发展 | 10BASE-T 以太网 | MAC 地址 | 以太网 MAC 帧 | 高速以太网 )
【计算机网络】数据链路层 : 以太网 ( 无连接、不可靠服务 | 以太网发展 | 10BASE-T 以太网 | MAC 地址 | 以太网 MAC 帧 | 高速以太网 )
318 0
android获取Mac地址和IP地址
android获取Mac地址和IP地址
587 0
文章
问答
文章排行榜
最热
最新
相关电子书
更多
ECS运维指南之Windows系统诊断
立即下载
TAKING WINDOWS 10 KERNEL
立即下载
《云服务器运维之Windows篇》
立即下载