电脑知识铺
第二套高阶模板 · 更大气的阅读体验

标准网络访问控制列表与扩展ACL的区别详解

发布时间:2025-12-15 00:19:22 阅读:91 次

在配置端口映射时,很多人会遇到“要不要加访问控制列表”的问题。尤其是当你把家里的摄像头或NAS通过路由器对外提供服务时,光做端口转发还不够,还得考虑谁可以访问这些端口。这时候,标准网络访问控制列表(Standard ACL)就常被提到,但很多人并不清楚它和扩展ACL到底有啥不同。

标准ACL:只看IP,不问其他

标准ACL的规则很简单,它只关心数据包的源IP地址。比如你想让办公室的电脑能访问你家里映射出来的监控服务,但不想让外人连上,就可以用标准ACL限制只有公司公网IP才能通过。

举个例子,在Cisco设备上写一条标准ACL:

access-list 1 permit 192.168.10.0 0.0.0.255
access-list 1 deny any

这条规则的意思是:允许来自192.168.10.0网段的流量通过,其他全部拒绝。注意,这里没有提任何端口号,也不管你访问的是80还是3389端口,全看IP。

扩展ACL:精细到端口和协议

而扩展ACL就不一样了,它能控制得更细。除了源IP,还能指定目标IP、使用的协议(TCP/UDP)、源端口、目标端口等。这在做端口映射时特别有用。

比如你只希望外部能访问你家Web服务器的80端口,但不能碰SSH的22端口,就得靠扩展ACL来实现。

access-list 101 permit tcp any host 192.168.1.100 eq 80
access-list 101 deny tcp any host 192.168.1.100 eq 22
access-list 101 permit ip any any

这条规则明确放行对192.168.1.100的80端口访问,阻止连22端口,其余默认允许。这种控制粒度是标准ACL做不到的。

应用场景对比

如果你只是想简单地“让某台机子能通”,比如分公司访问总部的某个服务,用标准ACL足够,配置也简单。

但如果你做了多个端口映射,比如同时开了远程桌面、网页服务、FTP,那就必须用扩展ACL来区分哪些端口开放给谁。不然随便一个扫描器扫到你的公网IP,可能就把所有服务都暴露出去了。

编号范围也有讲究

标准ACL通常使用1-99或1300-1999的编号,而扩展ACL用100-199或2000-2699。看到ACL编号,老手一眼就能判断它是哪种类型。

比如你在路由器配置里看到access-list 50,就知道这是个只看IP的标准规则;如果是access-list 150,那基本就是带端口和协议的扩展规则了。

放在哪也很关键

标准ACL因为只认源IP,所以应该尽量靠近目标设备部署。比如你想保护内网服务器,就得把标准ACL放在靠近服务器的接口上,否则容易误伤其他流量。

而扩展ACL由于判断条件多,可以放在靠近源的位置,尽早过滤掉非法请求,减轻网络负担。这也是为什么在外网出口上常见扩展ACL的原因。