ACL(Access Control List)即访问控制列表,是网络设备上用来做安全防护的重要手段,通过下发各种ACL策略,可以保障非授权用户只能访问特定的网络资源,从而达到对访问进行控制的目的。所以,自从有了网络,ACL就得到了广泛应用。数据中心的兴起,赋予了ACL更多的功能与使命。在数据中心网络中,各种应用流量纷繁复杂,只有通过ACL才能确保网络安全,并且完成一些特殊转发路径的业务部署,本文就来说一说ACL那些为人少有所知的功能,这些功能也凸显了ACL在数据中心网络中的重要作用。
ACL是通过匹配经过设备某类特征的流量,对这些流量做处理,从而达到安全防范的目的。ACL按照匹配的内容差别,分为四种类型,第一种叫二层的ACL,主要匹配MAC地址、以太类型,VLAN等以太报文头主要特征;第二种叫三层的ACL,主要匹配IP地址、四层端口号、IP类型等IP报文头主要特征;第三种叫二三层混合ACL,即匹配二层,又匹配三层报文内容;第四种叫自定义ACL,这种ACL最灵活,用户可以根据实际应用任意组合需要匹配的内容,不过这种ACL也是最不好掌握的,需要使用者对以太报文的格式非常熟悉,才能用好。这四种类型,每种类型又分为IPv4和IPv6两种模式,适用于IPv4和IPv6两种场景,这样总共有八种类型。将ACL分了这么多种类型,主要还是考虑使用上的便利性。通常情况下,三层ACL是使用最为广泛的ACL类型,自定义ACL使用很少,一般只有在网络设备厂家人员的指导下,才能使用。
ACL匹配的内容做好后,关键在于下发的处理,这个决定了匹配上ACL的流量在网络设备上如何走向。ACL有一个3P原则,就是为每个协议、每个方向和每个接口配置一个ACL,3P原则指定了ACL需要匹配的内容,下发的是出方向还是入方向,下发的位置在端口还是VLAN还是基于全局下发,这些内容都准备好了之后,就要明确执行的动作了。也就是ACL只是明确匹配报文的内容,执行还需要与具体动作的结合才能完成。现在的ACL动作非常丰富,早就不止是Permit/Deny的安全过滤动作。比如重定向Redirect、镜像Mirror、Copy to CPU、修改优先级、限速、修改报文特征、QINQ、策略路由等等,有了这些功能,可以让网络设备实现更多的功能,和不同的动作结合也衍生出来很多的网络设备功能。
安全过滤功能自不必细说,通过在不同的端口或者接口的出入方向上下发ACL防病毒列表,从而达到防攻击的目的。当然,这个安全过滤非常的初级,和专业的防火墙过滤不能相比,但两者实现的机制是一样的,只不过防火墙的过滤更加细致,支持的条目也更多,一般一台高级防火墙下发是十几万条ACL都可以,但网络设备很少能做到。安全过滤动作就是Deny,将不安全的流量直接Deny,在设备的入方向丢弃,以免影响网络设备转发,也防止流量再转到其它地方。除了安全过滤,Permit/Deny也适用于流量的隔离和访问控制。比如在一个数据中心承载的两个客户业务,客户A和客户B共用一个网络设备,客户之间当然不能业务打通,要进行隔离,这样就可以通过ACL来下一些规则来达到隔离的客户A和B之间访问隔离的目的。
重定向和策略路由也是在网络设备上高频率使用的功能,通过重定向和策略路由可以改变原有报文的转发路径,发送到客户希望的目的设备上。比如流量经过网络设备时,客户希望流量经过负载均衡LB设备,做个均流,然后流量再回到网络设备,这时可以通过重定向将流量掰到LB设备上,改变原有的报文转发路径。策略路由也是如此,使报文不按照路由表来转发,而是转发到客户希望的下一跳设备上。重定向和策略路由的主要区别,重定向更多的是应用到二三层转发中,策略路由应用到三层转发中,如果只希望对三层转发报文生效,那只能采用策略路由。重定向的动作可以是端口、下一跳接口或下一跳地址,而策略路由只有下一跳地址。
修改报文内容也是在特定网络应用中被使用的,其中最常用的要数修改报文优先级了。网络设备通过对进入设备的不同类型的应用流量打上不同的优先级标记,这样可以为高优先级的报文优先分配带宽,在网络出现拥塞,不断丢包的情况下,高优先的业务可确保不受影响。报文在以太头和IP头里都有优先级,通过、可以任意修改两个部分的优先级,所有的网络设备都可以识别这两个部分的报文优先级,从而在设备内部的转发通道里优先通过。这就好比是救护车,在道路行驶上有优先权,在道路堵车的情况下,救护车可以走紧急通道,快速通过,优先保障救护病人,修改报文优先级希望达到的目的也是如此。有时修改报文也有其它目的,比如修改报文的VLAN,让报文在新的VLAN中转发,或者增加VLAN,减少VLAN,修改报文的目的MAC,改变报文的转发路径等等,通过这些修改可以使网络设备应用非常灵活。
除了以上说的功能,ACL还可以做流量统计,流镜像,下发CAR限速等,还有很多网络功能实际上也是通过ACL来实现的,比如IP绑定,Portal认证,MAC认证,防攻击虽然命令行上看不到ACL的影子,实际在网络软件实现上也是用ACL来实现的,这些功能足以说明ACL功能的强大,可以说网络设备离不开ACL,没有ACL网络设备根本玩不转。数据中心对网络的要求很高,既要安全运行,又要部署业务灵活,这些都离不开ACL。随着数据中心的各种复杂应用越来越多,更好地使用ACL,丰富ACL的各种功能,是未来网络的必然选择。
本文转自d1net(原创)
相关资源:七夕情人节表白HTML源码(两款)