网络管理员:现在用户真是不省心,自己改个IP地址;私接AP、忘关DHCP,还有的下个小黑客程序,就想在你内网里试试。单靠交换机能管吗?
测试工程师:能!很多交换机上的小功能都可帮大忙。
测试实况:
IP与MAC绑定
思科的Catalyst 3560交换机支持DHCP Snooping功能,交换机会监听DHCP的过程,交换机会生成一个IP和MAC地址对应表。思科的交换机更进一步的支持IP source guard和Dynamic ARP Inspection功能,这两个功能任启一个都可以自动的根据DHCP Snooping监听获得的IP和MAC地址对应表,进行绑定,防止私自更改地址。
Dynamic ARP Inspection功能还有一个好处是可以防范在2层网络的中间人攻击(见图4)。
思科在DHCP Snooping上还做了一些非常有益的扩展功能,比如Catalyst 3560交换机可以限制端口通过的DHCP数据包的速率,粒度是pps,这样可以防止对DHCP服务器的进行地址请求的DoS攻击。另外Catalyst 3560交换机还支持DHCP Tracker,在DHCP请求中插入交换机端口的ID,从而限制每个端口申请的IP地址数目,防止黑客程序对DHCP服务器进行目的为耗尽IP地址池的攻击。华硕虽然不能调整速率,但是也会限制DHCP请求的数量。
DHCP(动态主机配置协议)是一种简化主机IP地址配置管理的TCP/IP标准。该标准为DHCP服务器的使用提供了一种有效的方法:即管理网络中客户机IP地址的动态分配以及启用网络上DHCP客户机的其它相关配置信息。
在基于TCP/IP协议的网络中,每台计算机都必须有唯一的IP地址才能访问网络上的资源,网络中计算机之间的通信是通过IP地址来实现的,并且通过IP地址和子网掩码来标识主计算机及其所连接的子网。在局域网中如果计算机的数量比较少,当然可以手动设置其IP地址,但是如果在计算机的数量较多并且划分了多个子网的情况下,为计算机配置IP地址所涉及的管理员工作量和复杂性就会相当繁重,而且容易出错,如在实际使用过程中,我们经常会遇到因IP地址冲突、网关或DNS服务器地址的设置错误导致无法访问网络、机器经常变动位置而不得不频繁地更换IP地址等问题。
DHCP则很好地解决了上述的问题,通过在网络上安装和配置DHCP服务器,启用了DHCP的客户机可在每次启动并加入网络时自动地获得其上网所需的IP地址和相关的配置参数。从而减少了配置管理,提供了安全而可靠的配置。
配置DHCP服务的服务器可以为每一个网络客户提供一个IP地址、子网掩码、缺省网关,以及DNS服务器的地址。DHCP避免了因手工设置IP地址及子网掩码所产生的错误,也避免了把一个IP地址分配给多台主机所造成的地址冲突。降低了IP地址管理员的设置负担,使用DHCP服务器可以大大地缩短配置网络中主机所花费的时间。
但是,随着DHCP服务的广泛应用,也产生了一些问题。首先,DHCP服务允许在一个子网内存在多台DHCP服务器,这就意味着管理员无法保证客户端只能从管理员所设置的DHCP服务器中获取合法的IP地址,而不从一些用户自建的非法DHCP服务器中取得IP地址;其次,在部署DHCP服务的子网中,指定了合法的IP地址、掩码和网关的主机也可以正常地访问网络,而DHCP服务器却仍然会有可能将该地址分配给其他主机,这样就会造成地址冲突,影响IP地址的正常分配。
针对上述问题,本文给出了一个解决方案,即通过使用Cisco提供的DHCP Snooping技术和Dynamic ARP Inspection技术,可以有效地防止以上问题的发生。
这里首先对两种技术做一个简要的介绍,然后将给出一个应用实例加以说明。
#p#FW: 以一个配置案例来做总结吧:router1 的int fa0/0 上接有dhcp server 。和router2 通过s0/0 连接IP 地址方案如下:
route1:
int fa0/0 10.1.1.254/24
int fa0/1 10.1.2.254/24
int s0/0 192.168.0.1/30
route2:
int fa0/0 10.2.1.254/24
int fa0/1 10.2.2.254/24
int s0/0 192.168.0.2/30
dhcp server adderss:10.1.1.1
配置:
router1:
ip forward-protocol udp
int fa0/0
ip addr 10.1.1.254 255.255.255.0
no shutdown
int fa0/1 ip addr 10.1.2.254 255.255.255.0
ip helper-address 10.1.1.1
no shut
int s0/0
ip addr 192.168.0.1 255.255.255.252
no shut
encap ppp
!
ip route 10.2.0.0 255.255.0.0 192.168.0.2
router2: !
ip forward-protocol udp
!
int fa0/0
ip addr 10.2.1.254 255.255.255.0
ip helper-address 10.1.1.1
no shutdown
!
int fa0/1
ip addr 10.2.2.254 255.255.255.0
ip helper-address 10.1.1.1
no shut
!
int s0/0
ip addr 192.168.0.2 255.255.255.252
no shut
encap ppp
!
ip route 10.1.0.0 255.255.0.0 192.168.0.1
!
dhcp server:
scope 11: router:10.1.1.254
scope 12: router:10.1.2.254
scope 21: router:10.2.1.254
scope 22: router:10.2.2.254
使用VLAN 的情况配置与此相同。只不过把int fa 换成int vlan 而已。
转:
你只需要将VLAN 当做是第N 个SCOPE 的ROUTE 选项就行了。
在你的交换机上按常规划分好VLAN:
假设有:VLAN20 和VLAN30, 你先在交换机上划分好(这步应该都会做), 然后在路由器上设置VLAN 网关(假设是FA0/0.1:192.168.20.254/24 和FA0/0.2:192.168.30.254/24), 在VLAN20 接口和VLAN30 接口下分别设置ip help-address DHCP_SERVER_ADD,IP FORWARD UDP 等,其实DHCP_SERVER 接在哪里无所谓,只要能够ROUTE 通,就行。关键是DHCP_SERVER 上设置SCOPE 时,你分两个,其中一个为192.168.20.0 网段的,它的相应ROUTE 选项为192.168.20.254, 另一个SCOPE 为192.168.30.0 网段的,它的相应ROUTE 选项为192.168.30.254 。上述设置完成后,记得在两个网段都要能和DHCP_SERVER 通。 #p#
四、应用实例
我校1#学生公寓,PC拥有数量大约1000台。采用DHCP分配IP地址,拥有4个C类地址,实际可用地址数约1000个。由于楼内经常存在私开的DHCP服务器,导致大量主机无法分配到合法IP地址;另外,由于有相当数量的主机指定IP地址,因此造成了与DHCP分配的IP地址冲突。以上两方面,均造成了该公寓楼大量主机无法正常访问网络。
经过一段时间的分析、实验,我们决定对该公寓楼部署DHCP Snooping和Dynamic ARP Inspection两项技术,以保证网络的正常运行。
该公寓网络设备使用情况如下,接入层为××台Cisco 2950交换机上联至堆叠的4台Cisco 3750,再通过光纤上联至汇聚层的Cisco 3750交换机。同时汇聚层的Cisco 3750交换机还兼做DHCP服务器。
部署过程
首先按如下过程配置DHCP Snooping
1 configure terminal
2 ip dhcp snooping 在全局模式下启用DHCP Snooping
3 ip dhcp snooping vlan 103 在VLAN 103中启用DHCP Snooping
4 ip dhcp snooping information option Enable the switch to insert and remove DHCP relay information(option-82 field) in forwarded DHCP request messages to the DHCP server. The default is enabled.
5 interface GigabitEthernet1/0/28,进入交换机的第28口
6 ip dhcp snooping trust 将第28口设置为受信任端口
7 ip dhcp snooping limit rate 500 设置每秒钟处理DHCP数据包上限
