号主:老杨丨11年资深网络工程师,更多网工提升干货,请关注公众号:网络工程师俱乐部
“刚配完ACL,整个VLAN的用户全上不了网!”
“明明只拦一个IP,结果全网瘫痪……”
访问控制列表(ACL)是咱们工作中控制流量、保障安全的利器。
但它的“威力”也意味着高风险——
一条规则写错,就可能引发全网访问中断。
尤其在汇聚层或核心层部署ACL时,影响范围广,恢复不及时,可能导致业务长时间中断。
今天就通过一个真实案例,深入剖析ACL配置中的“致命陷阱”,并给到你安全配置清单,帮你避开“一条命令毁全网”的悲剧。

一、事故现场
网络环境:
- 用户VLAN:VLAN 10(192.168.10.0/24)
- 网关:三层交换机 S6730,接口 Vlanif 10
- 需求:禁止IP为192.168.10.100的终端访问外网
工程师操作:
# 创建ACL 3000
[Huawei] acl 3000
[Huawei-acl-adv-3000] rule 5 deny ip source 192.168.10.100 0.0.0.0 destination any
[Huawei-acl-adv-3000] rule 10 permit ip source any destination any
[Huawei-acl-adv-3000] quit
# 在Vlanif 10接口入方向应用ACL
[Huawei] interface Vlanif 10
[Huawei-Vlanif10] traffic-filter inbound acl 3000
结果:
✅ 192.168.10.100 确实无法上网
❌ VLAN 10内所有用户(包括192.168.10.1)都无法上网!
❌ 用户之间也无法互访!
🔥 一条规则,导致整个VLAN业务中断。
二、根本原因
ACL默认隐含“deny ip any any”
这是ACL最常被忽视的默认行为!
当你创建一个ACL时,系统会在最后自动添加一条隐式规则:
deny ip any any
即:拒绝所有未明确允许的流量。
在上述案例中,ACL逻辑看似正确:
rule 5: 拒绝 192.168.10.100 访问任何地方
rule 10: 允许任何人访问任何地方
但问题出在——
permit ip source any destination any 并不能匹配所有流量!
关键误区:ACL中的 ip 不等于“所有协议”
ip 类型ACL:只匹配三层IP流量,不包含:
ARP(二层广播,用于IP→MAC解析)
ICMP重定向
OSPF、BGP等路由协议
当ACL应用在Vlanif接口后:
用户开机 → 发送ARP请求:“谁是192.168.10.1?”
ARP是二层广播帧,不属于ip协议
不匹配 rule 10(因为不是IP流量)
匹配隐式 deny ip any any → 被丢弃!
网关无法响应ARP → 用户拿不到网关MAC → 无法通信
✅ 结论:
ip 类型ACL会意外拦截ARP,导致用户无法获取网关,全网中断。
三、正确配置方法
必须显式放行ARP
方案1:使用 basic ACL 并允许ARP(推荐)
# 方法一:先放行ARP,再控制IP流量
[Huawei] acl 3000
[Huawei-acl-adv-3000] rule 5 permit arp source-mac any destination-mac any # 允许所有ARP
[Huawei-acl-adv-3000] rule 10 deny ip source 192.168.10.100 0.0.0.0 destination any
[Huawei-acl-adv-3000] rule 15 permit ip source any destination any
[Huawei-acl-adv-3000] quit
方案2:使用 traffic-filter 精确控制方向
# 方法二:只在出方向限制外网访问,不影响内网和ARP
[Huawei] interface Vlanif 10
[Huawei-Vlanif10] traffic-filter outbound acl 3000 # 改为出方向
这样,ARP请求(入方向)不受影响,只拦截该IP的出站流量。
四、ACL配置安全清单(必读)

五、其他常见ACL陷阱
陷阱1:用标准ACL(2000系列)限制源IP,但无法控制目的
标准ACL只能基于源IP,无法指定协议或端口
应使用高级ACL(3000系列) 实现精细控制
陷阱2:ACL应用在物理接口,影响多个VLAN
应优先在SVI接口(Vlanif) 或特定业务接口应用ACL
避免在上行口或核心口随意部署
陷阱3:忘记删除旧ACL
修改ACL后,原规则可能仍生效
使用 undo traffic-filter inbound 明确移除
六、排错命令:快速定位ACL问题
# 查看接口是否应用了ACL
<Huawei> display traffic-filter applied-record
# 查看ACL匹配计数(看是否被命中)
<Huawei> display acl 3000
# 查看ARP表是否正常学习
<Huawei> display arp all | include 192.168.10
# 抓包确认ARP是否被拦截
<Huawei> capture-packet interface Vlanif 10 destination flash:/arp.pcap
# 然后用Wireshark分析
总结
ACL的强大,源于它的“精确控制”,
它的危险,也源于“精确控制”。
记住三条铁律:
- 永远记得隐式 deny ip any any
- 在Vlanif接口用ACL,必须 permit arp
- 先测试,再上线,配置留退路
🔚 最后忠告:
当你敲下 traffic-filter 命令时,
请多问自己一句:
“这条规则,会不会把网关的ARP也拦了?”
多一秒思考,少一小时抢救。
原创:老杨丨11年资深网络工程师,更多网工提升干货,请关注公众号:网络工程师俱乐部
ACL配置致VLAN全断真相
4392

被折叠的 条评论
为什么被折叠?



