三厂 ACL 分类对照
ACL 用来定义什么样的流量被放行或被拒绝,三厂的匹配逻辑一致:从上到下逐条比对,命中即执行动作并停止向下匹配。差异集中在分类命名与编号空间——华为 VRP 用 acl number 加编号段区分基本、高级与二层 ACL,思科 IOS 用 access-list 编号区分标准与扩展,H3C Comware 必须显式写 acl basic 或 acl advanced 关键字。跨厂复制配置时,编号必须整体重排,否则 ACL 会被建到错误的类型里。
基本信息
| 适用设备 | 三厂交换机、路由器与防火墙的 ACL 功能 |
|---|---|
| 匹配基础 | 使用通配符掩码而不是子网掩码,0 表示必须匹配、1 表示忽略 |
| 执行顺序 | 从上到下逐条匹配,命中即结束,规则顺序决定最终行为 |
| 命名方式 | 三厂都支持命名 ACL,便于插入与删除单条规则 |
| 典型应用 | 接口流量过滤、NAT 源选择、路由策略、VTY 与管理面限源 |
典型使用场景
- 接口入方向或出方向流量过滤,限制特定网段互访
- NAT 源地址选择:只让需要上网的网段走地址转换
- 限制设备管理入口,只允许运维网段登录
- 作为路由策略或策略路由的匹配条件
- 迁移厂商设备时把旧 ACL 重写为新设备语法与编号
华为 VRP
华为 VRP
acl number 2000 # 基本 ACL:只能匹配源 IP
acl number 3000 # 高级 ACL:协议、源目地址、端口、时间
acl number 4000 # 二层 ACL:按以太帧头匹配
acl name WEB advance # 命名高级 ACL,类型关键字是 advance
rule 5 permit source 10.1.1.0 0.0.0.255 # 规则号步长默认 5,便于中间插入思科 IOS
思科 IOS
access-list 10 permit 192.168.1.0 0.0.0.255 # 标准 ACL 编号 1 到 99
access-list 100 permit tcp any any eq 80 # 扩展 ACL 编号 100 到 199
ip access-list extended WEB_ACL # 命名扩展 ACL,可插入删除单条
permit tcp any host 10.1.1.10 eq 443
deny ip any any logH3C Comware
H3C Comware
acl basic 2000
rule 5 permit source 192.168.1.0 0.0.0.255
acl advanced 3000
rule 10 deny tcp destination-port eq 445
acl mac 4000
acl name WEB advanced # 命名高级 ACL,类型关键字是 advanced三厂分类与编号对照
| 分类 | 华为 VRP | 思科 IOS | H3C Comware |
|---|---|---|---|
| 只用源地址匹配 | 基本 ACL 编号 2000 到 2999 | 标准 ACL 编号 1 到 99、1300 到 1999 | acl basic 编号 2000 到 2999 |
| 协议与端口匹配 | 高级 ACL 编号 3000 到 3999 | 扩展 ACL 编号 100 到 199、2000 到 2699 | acl advanced 编号 3000 到 3999 |
| 二层帧头匹配 | 二层 ACL 编号 4000 到 4999 | 基于 MAC 的 ACL 需要具体特性支持 | acl mac 编号 4000 到 4999 |
| 命名 ACL 关键字 | acl name 名称加 advance | ip access-list extended 名称 | acl name 名称加 advanced |
| 规则编号 | rule 加序号,可插空号 | 命名 ACL 内可插入序号,编号 ACL 不可 | rule 加序号,可插空号 |
迁移与使用要点
- 编号不能照搬:思科的标准 ACL 编号 10 在华为与 H3C 上不属于任何合法段,必须按目标厂的编号空间重建
- 分类关键字不能省:H3C 必须写 basic 或 advanced,思科不写关键字时编号决定类型,华为由编号段决定类型
- 规则顺序是行为的一部分:一条 deny 放在 permit 之前和之后结果完全不同,迁移后要逐条核对顺序
- 通配符掩码三家写法相同,单位主机在华为与 H3C 可写成地址加 0,思科用 host 关键字
- 末尾兜底显式写出来:思科存在隐式 deny,华为与 H3C 建议显式写最后一条规则,行为才可控
三厂都把 ACL 定义与应用分开:定义只描述匹配与动作,真正生效要靠接口、线路、NAT 语句或路由策略去引用。排障时先确认引用关系存在,再排规则本身。
ACL 不只用于过滤:NAT 靠它圈定转换范围、路由策略靠它筛选路由、VTY 靠它限制来源。这些场景的缺省动作与接口过滤不同,照搬过滤的习惯容易算错放行范围。