ACL简介
路由器为了过滤数据包,需要配置一系列的规则,以决定什么样的数据包能够通过,这些规则就是通过访问控制列表ACL(Access Control List)定义的。访问控制列表是由permit | deny等语句组成的一系列有顺序的规则,这些规则根据数据包的源地址、目的地址、端口号等来描述。ACL通过这些规则对数据包进行分类,这些规则应用到路由器或交换机接口上,它们根据这些规则判断哪些数据包可以接收,哪些数据包需要拒绝。
一、Acl对已经识别出来的流分类可以执行七种操作;
1. mirror-镜像:将识别出来的流量镜像一份到指定的端口,即流量的目的端口以
及指定的mirror端口都能收到相同的流量。
配置实例: access-list standard 5 mirror 2/3 ethernet dmac 11:22 smac 55:44:33:33:33:22
11:22:33:22:
2. redirect-重定向:将识别出来的流量重定向至指定端口,即流量的目的端口不
会收到,而指定的重定向端口能收到流量。
配置实例:access-list standard 5 redirect 2/3 ethernet dmac 11:22:33:22:11:22 smac 55:44:33:33:33:22
3. trap-to-cpu:将识别出来的流量转发到cpu进行处理,查看时进后台先kill
npd,再npd &,此时出现数据包的打印信息。
配置实例:access-list standard 5 trap ethernet dmac 11:22:33:22:11:
22 smac 55:44:33:33:33:22
4. ingress-qos:配置基于acl的QOS入口初始化,基于源up,源dscp,如果
这两位设置为 none,则代表不关注,不修改相应的up,或者dscp。Qos-marker如果为disable时,表示入口引擎之后的其他markers无法修改qos属性
配置实例:access-list standard 5 ingress-qos 5 sub-qos-markers enable
source-up none source-dscp 50
(对入口报文的dscp修改为索引值为5的qos profile中的dscp值,up值不做修改,且随后的其他的markers可以对Up,dscp进行修改 )
5. egress-qos: 配置基于acl的QOS出口重新初始化,基于源up,源dscp。如
果这两位设置为none,则代表不关注,不修改相应的up,或者dscp,则相应的egress-up和egress-dscp设置为任何位都不起作用。
配置实例:access-list standard 5 egress-qos egress-up 4 egress-dscp 34 source-up none source-dscp 50
(对于出口报文的dscp值修改为34,up不做修改)
6. permit: 允许识别出来的报文流量正常转发。
配置实例:access-list standard 5 permit tcp dip 10.1.1.5/32 dst-port 21 sip any src-port 1024
7. deny:拒绝识别出来的报文流量正常转发。
配置实例:access-list standard 5 deny tcp dip 10.1.1.5/32 dst-port 21 sip any src-port 1024
二、ACL rule分为两种类型:标准以及扩展类型
标准Acl能针对6种报文进行识别,分别是:
1. IP报文:能对IP报文的源IP以及目的IP进行流分类。
2. ICMP报文:能根据ICMP报文的源与目的IP以及type和code字段的值进行流分类。
3. TCP报文:能根据TCP报文的源与目的IP以及源与目的端口号进行流分类。
4. UDP报文:能根据UDP报文的源与目的IP以及源与目的端口号进行流分类。
5. ARP报文:能根据ARP报文的源MAC地址,vid以及source-port进行流分类。
6. Ethernet报文:能根据ethernet报文的源和目的MAC进行流分类。
扩展Acl则能针对TCP和UDP报文进行更深层次的识别,它能根据TCP/UDP报文的源/目的IP,源/目的端口号,源/目的MAC,以及vid和source-port进行识别。
三、ACL –group简介
ACL-group,顾名思义,就是将多个rule绑定在一起成为一个acl组,Acl-group分为ingress acl-group和egress acl-group,分别应用在入接口和出接口。
使用acl-rule的方法为,将access-list绑定在acl-group下,再将acl-group应用在端口或者vlan下,方可生效。
Access-list standard deny tcp dip 10.1.1.5/32 dst-port 1024
Create ingress acl-group 1
Config ingress acl-group 1
Add access-list 1
Exit
Config eth 1/15
Ingress access-list enable
Bind ingress acl-group 1
Exit
注意:
21 sip any src-port
1.acl-group下可以绑定多个acl-rule,当流量匹配多个Acl-rule时,不会依次执行每个操作,会根据编号小的进行rule进行匹配并执行相应的操作。
2.一个端口下只能下发一个acl-group,但是多个端口可以公用同一个acl-group。
3.已经绑定在一个Acl-group中的acl-rule不能再绑定在其他的acl-group中。
因篇幅问题不能全部显示,请点此查看更多更全内容