按源地址放行或拒绝
华为基本 ACL 编号 2000 到 2999,只能匹配源 IP 地址,写不出目的地址与端口的条件。它的典型用法是圈定网段:允许本网段访问、拒绝其他来源,然后通过接口的 traffic-filter 应用到入方向。因为只判断源地址,基本 ACL 部署在靠近源的位置就能过滤掉不合规流量,节省沿途带宽。
基本信息
| 适用平台 | 华为 VRP 全系列路由器与交换机 |
|---|---|
| 编号范围 | 基本 ACL 为 2000 到 2999,命名基本 ACL 用 acl name 名称 basic |
| 匹配条件 | 仅源 IP 地址,单位主机可写成地址加 0 |
| 规则号 | 默认步长 5,便于在两条规则之间插空号 |
| 应用命令 | 接口下 traffic-filter inbound acl 编号 |
典型使用场景
- 只允许指定网段访问某台服务器,其余来源一律拒绝
- 接入网段之间的隔离,禁止办公网访问财务网段
- NAT 的源选择:圈出需要做地址转换的网段
- 配合设备管理,只允许运维网段登录
- 作为临时管控手段,故障时快速收紧某个来源
华为 VRP
华为 VRP
acl number 2000
rule 5 permit source 192.168.10.0 0.0.0.255 # 放行办公网段
rule 10 deny source 192.168.20.0 0.0.0.255 # 拒绝该网段
rule 100 deny # 显式兜底,行为可控
display acl 2000 # 查看规则与匹配计数
interface GigabitEthernet0/0/1
traffic-filter inbound acl 2000思科 IOS
思科 IOS
ip access-list standard 10
permit 192.168.10.0 0.0.0.255
deny 192.168.20.0 0.0.0.255
! 末尾存在隐式 deny any,无需再写兜底(写了更直观)
interface GigabitEthernet0/1
ip access-group 10 inH3C Comware
H3C Comware
acl basic 2000
rule 5 permit source 192.168.10.0 0.0.0.255
rule 10 deny source 192.168.20.0 0.0.0.255
rule 100 deny
interface GigabitEthernet1/0/1
packet-filter 2000 inbound规则语法逐段读法
| 字段 | 含义 | 注意事项 |
|---|---|---|
| acl number 2000 | 创建或进入编号 2000 的基本 ACL | 编号不在 2000 到 2999 内会被识别为其他类型 |
| rule 5 | 规则序号,小的先匹配 | 步长 5 便于插空,重排规则顺序不用重建整表 |
| permit 或 deny | 命中后的动作 | 只匹配源地址,不判断目的与端口 |
| source 地址 通配符 | 源地址范围,通配符 0 表示单位主机 | 写成子网掩码是最常见的错误 |
| 接口 traffic-filter | 把 ACL 应用到接口并指定方向 | 同一接口同方向重复配置会覆盖上一条 |
使用要点
- 基本 ACL 无法匹配目的地址与端口,需要精细控制时必须改用高级 ACL
- 部署位置影响效果:靠近源部署可以省带宽,靠近目的部署便于集中管理与留证
- 规则计数会随流量增长,用它判断到底命中哪一条,比反复读配置高效
- 命名基本 ACL 便于在中间插入规则,编号 ACL 同样支持空号插入
- 变更前先记录原有规则与计数,回退时才有依据
与其他特性的分工
- 与高级 ACL 的分工:只判断来源用基本 ACL 就够了,一旦需要目的地址或端口条件就必须换成高级 ACL
- 与 NAT 的关系:源转换语句引用基本 ACL 圈定需要转换的网段,ACL 里的拒绝规则相当于把某些来源排除在转换之外
- 与管理面的关系:线路下引用 ACL 限制登录来源,与接口上的过滤是两处独立配置,不要指望配一处同时生效
- 与命名 ACL 的关系:命名基本 ACL 更利于中途插号与阅读,长期维护比纯编号方案清晰
- 与命中计数的关系:查看命令能显示每条规则的匹配次数,是判断规则到底有没有生效的直接证据
思考策略差异:思科标准 ACL 的传统建议是部署在靠近目的的位置,因为匹配条件单薄,靠近源容易误伤;华为与 H3C 的基本 ACL 常用于靠近源的入方向过滤,落地时按实际业务与安全要求选择。
同一个接口同一方向只保留最后一条 traffic-filter 配置:重复执行会覆盖前一条,多次改动后容易只剩一条生效,收尾时用查看命令核对实际引用了哪个 ACL。