一.1.1.1 配置二层ACL
使用下面的命令定义二层ACL。
1. 进入二层ACL配置模式
命令格式 | 命令模式 | 命令功能 |
acl link number <acl-number> | 全局 | 进入二层ACL配置模式 |
2. 配置ACL中的规则
命令格式 | 命令模式 | 命令功能 |
rule <rule-no> {permit|deny} any [{[vlan-id <vlan-id>][cos <cos-vlaue>] [source-mac {<source-mac> <source-mac-wildcard>|any}] [destination-mac {<dest-mac> <dest-mac-wildcard>|any}] }] [time-range <timerange-name>] | 二层ACL | 定义规则 |
3. 将某一条规则移到另一条规则的后面
命令格式 | 命令模式 | 命令功能 |
move <rule-no> after <rule-no> | 二层ACL | 将某一条规则移到另一条规则的后面 |
示例:定义一个二层ACL,允许VLAN 10中源MAC地址为00d0.d0c0.5741、802.1p为5的IP包通过,并丢弃收到的MPLS(以太网类型为8847)报文。
ZXR10(config)#acl link number 200 ZXR10(config-link-acl)#rule 1 permit ip cos 5 ingress 10 00d0.d0c0.5741 0000.0000.0000 ZXR10(config-link-acl)#rule 2 deny 8847 |
一.1.1.2 配置混合ACL
使用下面的命令定义混合ACL。
1. 进入混合ACL配置模式
命令格式 | 命令模式 | 命令功能 |
acl hybrid number <acl-number> | 全局 | 进入混合ACL配置模式 |
2. 配置ACL中的规则
命令格式 | 命令模式 | 命令功能 |
rule <rule-no> {permit|deny} {<ip-number>|ip} {<source> <source-wildcard>|any} {<dest> <dest-wildcard>|any} [<outer vlan id>] [bivlanid <inner vlan id>] [ingress {<smac> <smac-wildcard>|any}] [egress {<dmac> <dmac-wildcard>|any}] [time-range <timerange-name>] | 混合ACL | 定义基于IP或者IP协议号的规则(不包括TCP,UDP) |
rule <rule-no> {permit|deny} tcp {<source> <source-wildcard>|any} [<rule> <port>] {<dest> <dest-wildcard>|any} [<rule> <port>] [<outer vlan id>] [bivlanid <inner vlan id>] [ingress {<smac> <smac-wildcard>|any}] [egress {<dmac> <dmac-wildcard>|any}] [time-range <timerange-name>] | 混合ACL | 定义基于TCP的规则 |
rule <rule-no> {permit|deny} udp {<source> <source-wildcard>|any} [<rule> <port>] {<dest> <dest-wildcard>|any} [<rule> <port>] [<outer vlan id>] [bivlanid <inner vlan id>] [ingress {<smac> <smac-wildcard>|any}] [egress {<dmac> <dmac-wildcard>|any}] [time-range <timerange-name>] | 混合ACL | 定义基于UDP的规则 |
3. 将某一条规则移到另一条规则的后面
命令格式 | 命令模式 | 命令功能 |
move <rule-no> after <rule-no> | 混合ACL | 将某一条规则移到另一条规则的后面 |
示例:定义一个混合ACL,实现以下功能。
1. 对来自192.168.2.0/24网段的BGP报文,拒绝通过。
2. 允许SMAC为0000.0000.0001的数据包通过。
ZXR10(config)# acl hybrid number 300 ZXR10(config-hybd-acl)#rule 1 deny tcp 192.168.2.0 0.0.0.255 Eq BGP any ZXR10(config-hybd-acl)# rule 2 permit ip any any ingress 0000.0000.0001 0000.0000.0000 |
一.1.1.3 配置用户定义ACL
使用下面的命令定义用户关心字段
1. 配置定义字段
offset命令
命令格式 | 命令模式 | 命令功能 |
acl-userdefine <filed-no> layer-no <layer-value> offset-num <offset-value> data-length <length-value> forward-bit <notcare-value> back-bit <notcare-value> | 全局 | 定义用户字段 |
使用下面的命令定义用户定义ACL。
1. 进入用户定义ACL配置模式
命令格式 | 命令模式 | 命令功能 |
acl user-define number <acl-number> | 全局 | 进入用户定义ACL配置模式 |
2. 配置ACL中的规则
命令格式 | 命令模式 | 命令功能 |
rule <rule-no> {permit|deny} {[user1 <field-no> <value> <mask>] [user2 <field-no> <value> <mask>] [user3 <field-no> <value> <mask>] [user4 <field-no> <value> <mask>] |any} [time-range <timerange-name>] | 用户定义ACL | 定义基于用户定义字段的规则 |
3. 将某一条规则移到另一条规则的后面
命令格式 | 命令模式 | 命令功能 |
move <rule-no> after <rule-no> | 用户定义ACL | 将某一条规则移到另一条规则的后面 |
示例:定义一个用户定义ACL,实现以下功能。
允许SMAC为0000.0000.00011的数据包通过。
ZXR10(config)# acl-userdefine 1 layer-no 2 offset-num 6 data-length 6 forward-bit 0 back-bit 0 ZXR10(config)# acl user-define number 3000 ZXR10(config-user-acl)#rule 1 permit user1 1 000000000011 000000000000 |
一.1.2 将ACL应用到物理端口
定义ACL后,必须要把它们应用到物理端口上才能起作用。使用以下命令将ACL应用到相应的物理端口。
1. 进入端口配置模式
命令格式 | 命令模式 | 命令功能 |
interface <port-name> | 全局 | 进入端口配置模式 |
2. 将访问控制列表应用到物理端口
命令格式 | 命令模式 | 命令功能 |
ip access-group <acl-number> <profile-no> in | 端口 | 将ACL与物理端口在profile-no上进行绑定 |
说明:
一个物理端口只能应用一个ACL,新的配置会覆盖旧的配置。例如:在gei_4/1端口配置模式下,先后配置了以下两条命令:
ip access-group 10 0 in
ip access-group 100 0 in
那么只有ACL 100生效。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论