一条 ACL 阻断整个业务流量?这些误操作很多人都踩过

号主:老杨丨11年资深网络工程师,更多网工提升干货,请关注公众号:网络工程师俱乐部

来了,这个坑实在太经典。

ACL 配错,轻则某个端口不通,重则整段业务直接凉凉。

你以为是服务挂了、链路问题,其实一查配置,一条 ACL 把关键流量给咔嚓了。

更坑的是,有些误操作,还能持续不被发现好几天。

这篇文章,就来讲一讲——

01|以为“默认放行”,结果忘了写 permit

很多人 ACL 写完 deny 条目就完事了,心想“不写就默认通”,大错特错!

在华为设备上,ACL 是精确匹配,一旦没有匹配项,默认就是 deny all。

看这个配置:

acl 3000
 rule 5 deny ip source 192.168.1.0 0.0.0.255

你是不是以为只禁掉 192.168.1.X 的流量,其他的都放行?

错! 其他没写的,也通不过,因为你没写 permit any。

正确写法:

acl 3000
 rule 5 deny ip source 192.168.1.0 0.0.0.255
 rule 10 permit ip

不写 permit,全阻断,这是第一大坑。

02|顺序写错,permit 被 deny 压住了

ACL 是自上而下匹配,匹配到就结束

下面是一个 ACL 规则各部分的解释:

你以为写了放行规则就 OK,结果顺序一反,照样被前面 deny 条目挡住。

例子:

acl 3000
 rule 5 deny ip
 rule 10 permit ip source 192.168.1.1 0

你想让 192.168.1.1 能访问?想多了。因为第 5 条 deny ip 已经把所有包全拦了,根本走不到第 10 条。

顺序搞错,权限就全挂。

03|用错 ACL 类型,结果匹配不到数据

华为 ACL 有很多种:basic、advanced、IPv6、layer2、MAC ACL……结果你访问的是 IP 层的流量,却拿了 MAC ACL 去匹配,当然啥都不管用。

举个常见误会:

你配置了 ACL 来限制某 IP 段访问出口:

acl 2000
 rule 5 deny ip source 192.168.1.0 0.0.0.255

然后你把它用在了交换机二层接口上:

interface GigabitEthernet 0/0/1
 traffic-filter inbound acl 2000

结果 ACL 根本不起作用。

为什么?因为这是一个二层接口,而你用的是三层 ACL。

在这种情况下,应该用 MAC ACL 或者 port-based VLAN ACL(PVACL)

04|IP、掩码、反掩码傻傻分不清

华为 ACL 有时候用子网掩码,有时候用反掩码(wildcard mask),不小心就写错了。

比如:

acl 3000
 rule 5 deny ip source 192.168.1.0 255.255.255.0

这条规则是错的,华为 basic/advanced ACL 用的是 反掩码,也就是说:

  • 0 = 精确匹配
  • 255 = 全匹配

你要匹配 192.168.1.0/24,正确写法是:

acl 3000
 rule 5 deny ip source 192.168.1.0 0.0.0.255

05|绑定了 ACL 却没激活/没方向

你 ACL 配好了,规则写对了,绑定也看起来做了,结果流量就是不受控。

你是不是没注意:

  • 没写 inbound / outbound → ACL 根本没启用
  • 接口虽然配置了 traffic-filter, 但方向错了
  • 防火墙/路由策略用了 ACL,但 ACL 号填错了

特别是防火墙里经常有多个 ACL,在引用时 一个小小编号写错,策略就失效或误杀。

06|多条 ACL 混用,命中冲突策略

如果你同时在:

  • 接口级 ACL
  • VLAN ACL
  • 路由策略引用的 ACL
  • 防火墙策略 ACL

配置了类似 deny 条目,但写法不一致、优先级未梳理清楚,你就很容易出现“本地能通,远端不通”这类问题。

排障排到怀疑人生,一查 ACL,发现其实是多层冲突。

总结|一张图看懂 ACL 最常见的坑

┌────────────┬──────────────────────────────┐
│ 误操作类型 │ 问题说明                    │
├────────────┼──────────────────────────────┤
│ 忘写 permit│ 默认 deny all,直接断流     │
│ 顺序写错   │ permit 被 deny 压住          │
│ 类型选错   │ 三层ACL配在二层口无效       │
│ 掩码写错   │ 掩码/反掩码用错,规则失效   │
│ 未激活ACL │ 方向未指定或接口未启用ACL   │
│ 多条冲突   │ 不同层ACL互相打架           │
└────────────┴──────────────────────────────┘

写在最后

ACL 是把双刃剑, 用得好,能保护网络,用得不好,一条 deny 就能把核心业务干废。

你只要记住三句话:

  1. ACL 默认不是“放行”,而是“拒绝”

  2. 顺序是关键,位置决定命运

  3. 配之前看清类型,绑之前明确方向

原创:老杨丨11年资深网络工程师,更多网工提升干货,请关注公众号:网络工程师俱乐部

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值