基于DHCP SNOOPING的DHCP网络部署

2017-05-30 16:28孙雁杰刘良
科技风 2017年6期
关键词:IP地址交换机端口

孙雁杰 刘良

摘 要:在公司或企业内部网络中,为了更好的管理用户的IP地址分配,通常让用户自动获取IP地址。这种技术就称为动态的主机计算机分配协议,传输层协议使用UDP, 用来给lan网络的用户分配IP地址。DHCP因为IP地址管理的方便而被广泛采用。

关键词:服务器;网络部署

在DHCP服务的管理和运营上,通常也会产生一些问题,比如:DHCP Server的冒充,有可能是有意的也可能是无意的;DHCP的服务器也会受到攻击,比如说最常见的DOS攻击,或者是DHCP耗尽攻击;有些用户使用手动配置IP地址的方式,随意配置IP地址,通常会导致LAN网络内的IP地址冲突,影响用户正常使用。下面,我们来详细探讨以上问题:

1 山寨DHCP服务器

通常部署的DHCP服务器,在server和client之间没有做相应的安全措施。这时,如果在网络中出现一个山寨的DHCP服务器,它能够接收client主机的地址分配请求,同时也可以为client主机分配IP地址。这种情况存在有意为之的,那危害就可能很大,存在用户信息暴露的风险;也有无意的,有用户的路由器具备DHCP的功能,无意中打开该功能,会造成为其他用户分配地址的情况,从而影响网络的运行。

2 如何防范对DHCP服务器的冒充MAC攻击

一般来说,DHCP server需要检查客户端的硬件地址,这就需要检查client发送的DHCP请求消息中的Client MAC address来分析客户端的MAC address是否合法。在没有MAC冒充的情况下,Client MAC address消息里携带的MAC ADDRESS与用户的真实MAC address是一致的。网络破坏者使用冒充MAC的方式向DHCP SERVER发送DHCP请求,这就是冒充MAC攻击。

我们如何防范呢?在Cisco 交换机中,可以通过配置交换机的端口安全属性特性来实现。具体来说,就是针对端口,绑定地址,从而有效防范攻击。

3 client主机不按规定私自配置IP地址

client主机在配置了DHCP服务的网络中,也可以不使用DHCP的方式获取IP地址。它可以使用手工配置IP地址的方式与网络建立连接,这也是允许的。但是如果CLIENT主机不按规定私自配置IP地址,很容易与别的用户的地址冲突,从而导致网络故障。

针对以上可能存在的问题,我们必须采取一些措施来解决这些问题,因此,引入DHCP Snooping技术就显得很有必要了。DHCP嗅探(snooping)是保障DHCP安全的一种属性。在Cisco交换机配置中,支持针对VLAN来开通DHCP 嗅探(snooping)功能。开通这种功能后,交换机可以通过检测VLAN中的DHCP消息,来判断有没有异常消息,从而保证DHCP服务的安全。

DHCP嗅探(snooping)根据使用不同把交换机端口分成两种:

第一种是untrusted Port:这种端口是用来连接普通用户的,例如client PC,打印机等;第二种是trusted port:此端口连接网络认可的DHCPserver或者连接汇聚交换机,汇聚交换机可能连接DHCP server。

开通DHCP嗅探(snooping)功能后,连接在交换机上的untrusted Port,只允许发送DHCP请求,过滤掉来自用户端口的所有其它DHCP报文。DHCP仿冒的问题就轻松解决了。

那我们怎么解决DHCP耗尽攻击呢?虽然来自用户端口的DHCP请求可以被允许通过,交换机还会做另外一项检查工作,比对DHCP 请求消息里携带的源MAC地址和DHCP client主机的MAC地址,两个地址一致才可以继续转发,不一致就会丢掉。DHCP耗尽攻击就避免了。

trusted port可以接收全部的DHCP消息。网络中合法的DHCP服务器一定要连接到交换机的trusted port,别的端口设置为intrusted port。山寨DHCP服务器发出的DHCP请求会被过滤掉,不会影响用户的正常使用。

DHCP的网络部署,网络拓扑图如下:

图中,DHCPServer作为服务器,为PC客户分配动态IP地址,DHCPRelay作为中继,SWITCH是接入侧的交换机,PCclient是用路由器来模拟客户端PC机,具体配置如下:

3.1 DHCPServer数据设置

ip dhcp excluded-address 10.2.100.1,将10.2.100.1排除,同样排除10.2.100.253,10.2.100.254。

配置名字为DHCP的服务:ip dhcp pool DHCP

配置网段:network 10.2.100.0 255.255.255.0

设置网关的地址:default-router 10.2.100.1

设置DHCP配置,地址池组里共包含10.2.100.0/24地址可供分配,排除掉10.2.100.1/253/254不能分配,默认网关的地址是10.2.100.1。

3.2 DHCPRelay配置

interface Vlan100

ip dhcp relay information trusted

ip address 10.2.100.1 255.255.255.0

ip helper-address 10.255.1.15

VLAN100是连接SWITCH的端口,在该端口上配置了DHCP relay的信任端口配置,可以进行DHCP消息的中级转发;ip helper-address 10.255.1.15,是配置了DHCP服務器的loopback地址。

3.3 SWITCH配置

Ip dhcp snooping

Ip dhcp snooping vlan 100

Interface portchannel1

Ip dhcp snooping trust

打开交换机的DHCP snooping功能,将portchannel1端口设置为trust端口,其他端口为非信任端口。通过建立信任端口和非信任端口,对非法DHCP服务器进行隔离,信任端口正常转发DHCP数据包,非信任端口收到的服务器响应的DHCP offer和DHCPACK后,做丢包处理,不进行转发。

3.4 PCclient配置

Interface e0/0

Ip address dhcp

No shutdown

设置PC机的E0/0端口为连接交换机的端口,端口IP地址获取方式为DHCP自动获取方式。

按照以上的配置进行组网后,经过测试,PC机可以正常获取IP地址,地址范围是10.2.100.0/24网段,可以进行正常的互通。在SWITCH交换机的其他端口模拟开通非信任的DHCP服务器,可以正常屏蔽其DHCP server的功能,达到了DHCP snooping安全组网的预期。

参考文献:

[1] RFC 2131:动态主机地址指配协议.

[2] RFC 3046:DHCP Relay Agent Information Option.

猜你喜欢
IP地址交换机端口
一种端口故障的解决方案
铁路远动系统几种组网方式IP地址的申请和设置
修复损坏的交换机NOS
IP地址切换器(IPCFG)
端口阻塞与优先级
使用链路聚合进行交换机互联
基于SNMP的IP地址管理系统开发与应用
公安网络中IP地址智能管理的研究与思考
8端口IO-Link参考设计套件加快开发速度
PoE交换机雷击浪涌防护设计