工厂网络规划:VLAN 划分与工业访问控制实战
背景:为什么工厂网络一通就出问题
MES 系统上线后,产线网络从"能上网"变成"能生产",问题却接踵而至:
- 设备掉线:某工位扫码枪突然无法连接 MES 服务器,排查发现是被同一 VLAN 里的另一台 PC 中了病毒,全网广播风暴;
- 数据泄露:产线员工用自己的笔记本接网线,下载了客户图纸,导致核心数据外泄;
- 远程运维受阻:工程师想通过 SSH 远程排查 PLC 问题,却发现网络策略把 22 端口全部封了,连内网都进不去。
问题根源:网络通了不等于安全,安全也不等于能生产。工厂网络需要兼顾连通性、隔离性、可追溯性,而 VLAN 划分和访问控制是核心手段。
解决思路:三层网络架构
我的做法是:办公网、产线网、设备网三层隔离,中间用三层交换机做路由,再配 ACL 控制访问。
第一步:VLAN 规划
典型工厂网络可以按以下逻辑划分:
VLAN 10 → 办公网(办公室 PC、打印机、无线 AP)
VLAN 20 → 产线网(MES 工站、操作终端、工控机)
VLAN 30 → 设备网(PLC、扫码枪、机器人、传感器)
VLAN 99 → 管理网(服务器、交换机管理口、运维终端)
划分原则:
- 按功能划分:办公、生产、设备、管理分开,避免"一网打尽";
- 按部门划分:不同车间可以进一步细分 VLAN(如 VLAN 31=总装车间、VLAN 32=焊接车间);
- 预留扩展:VLAN ID 从 10 开始,每次加 10,预留空号给未来扩展。
第二步:交换机配置示例
以华为/华三交换机为例:
# 创建 VLAN
vlan batch 10 20 30 99
# 配置接口
interface GigabitEthernet 0/0/1
port link-type access
port default vlan 10
description Office-PC
interface GigabitEthernet 0/0/10
port link-type access
port default vlan 20
description MES-Station-01
interface GigabitEthernet 0/0/20
port link-type access
port default vlan 30
description PLC-CNC-01
# 配置 VLAN 接口(三层网关)
interface Vlanif 10
ip address 192.168.10.1 255.255.255.0
interface Vlanif 20
ip address 192.168.20.1 255.255.255.0
interface Vlanif 30
ip address 192.168.30.1 255.255.255.0
interface Vlanif 99
ip address 192.168.99.1 255.255.255.0
# 配置 DHCP(可选)
dhcp server ip-pool office
network 192.168.10.0 mask 255.255.255.0
gateway-list 192.168.10.1
dns-list 114.114.114.114
第三步:访问控制列表(ACL)
VLAN 划分后,默认三层交换机可以互相访问。需要加 ACL 限制访问方向:
# 只允许产线网访问设备网,反过来禁止
acl number 3000
rule 5 permit ip source 192.168.20.0 0.0.0.255 destination 192.168.30.0 0.0.0.255
rule 10 deny ip source any destination 192.168.30.0 0.0.0.255
# 只允许管理网访问所有 VLAN 的管理接口
acl number 3001
rule 5 permit tcp source 192.168.99.0 0.0.0.255 destination 192.168.10.0 0.0.0.255 destination-port eq 22
rule 10 permit tcp source 192.168.99.0 0.0.0.255 destination 192.168.20.0 0.0.0.255 destination-port eq 22
rule 15 permit tcp source 192.168.99.0 0.0.0.255 destination 192.168.30.0 0.0.0.255 destination-port eq 4488 # PLC 通信端口
rule 20 deny ip source any
# 应用 ACL
interface Vlanif 30
traffic-filter inbound acl 3000
interface Vlanif 10
traffic-filter inbound acl 3001
第四步:防火墙策略(可选进阶)
如果交换机不支持 ACL 或需要更细粒度控制,可以加一层防火墙:
# 防火墙规则示例(华为 USG)
security-policy
rule name MES_to_PLC
source-zone trust
destination-zone untrust
source-address 192.168.20.0 24
destination-address 192.168.30.0 24
service tcp 4488
action permit
rule name Office_to_Internet
source-zone trust
destination-zone untrust
source-address 192.168.10.0 24
service dns http https
action permit
踩坑记录:五个真实案例
坑 1:VLAN 间没有路由
一开始只配置了 VLAN,没配 VLAN 接口(Vlanif),结果产线网和设备网互 ping 不通。解决方案:三层交换机必须配置 VLAN 接口作为网关,并开启 IP 路由(有些设备默认关闭)。
坑 2:ACL 把管理端口也封了
配置 ACL 时为了安全,把所有非管理网段的 SSH 访问都禁止了,结果运维团队无法远程登录交换机。后来改成白名单模式:只允许特定 IP 访问管理接口。
坑 3:PLC 通信被误拦截
西门子 S7 协议用的是 TCP 102 端口,一开始 ACL 没放行,导致 MES 无法读取 PLC 数据。解决方案:先梳理所有设备协议端口(OPC UA=4840、Modbus TCP=502、S7=102 等),再统一配 ACL。
坑 4:VLAN 数量超限
工厂扩张后 VLAN 数涨到 50 个,超过交换机支持的上限(有些老设备只支持 32 个)。解决方案:合并小 VLAN(如把 5 个车间合并为一个大 VLAN+子网划分),或更换支持更多 VLAN 的交换机。
坑 5:无线 AP 没划对 VLAN
办公室无线 AP 默认桥接到办公 VLAN,但产线无线 PDA 接入了设备 VLAN,导致 PDA 无法访问 MES。解决方案:AP 支持多 SSID,每个 SSID 绑定不同 VLAN(办公 SSID→VLAN 10,产线 SSID→VLAN 20)。
进阶:网络拓扑图(文字版)
┌──────────────┐
│ 防火墙 │
│ (USG6000) │
└──────┬───────┘
│
┌─────────────┼─────────────┐
│ │ │
┌────▼────┐ ┌───▼────┐ ┌───▼────┐
│核心交换机│ │无线 AP │ │ 出口 │
│(S5720) │ │ │ │ (路由器)│
└────┬────┘ └────────┘ └────────┘
│
┌────────────┼────────────┬────────────┐
│ │ │ │
┌────▼────┐ ┌───▼────┐ ┌───▼────┐ ┌───▼────┐
│VLAN 10 │ │VLAN 20 │ │VLAN 30 │ │VLAN 99 │
│办公网 │ │产线网 │ │设备网 │ │管理网 │
│192.168.10│ │192.168.20│ │192.168.30│ │192.168.99│
└─────────┘ └────────┘ └────────┘ └────────┘
总结
工厂网络规划的核心是隔离 + 可控:VLAN 划分实现物理逻辑隔离,ACL 控制访问方向,防火墙做最终把关。
- VLAN 规划:办公、产线、设备、管理四层分离,预留扩展空间;
- 交换机配置:VLAN 接口做网关,DHCP 自动分配 IP;
- 访问控制:ACL 白名单模式,只允许必要访问;
- 设备协议梳理:提前收集所有设备端口(OPC UA/Modbus/S7/HTTP),避免 ACL 误拦截。
附:设备协议端口清单(常见)
- SSH: 22
- HTTP: 80
- HTTPS: 443
- Modbus TCP: 502
- OPC UA: 4840
- 西门子 S7: 102
- Mitsubishi MC: 6000
- Omron FINS: 9600
按这个清单做网络规划,产线网络问题能减少 80%。记住:网络通了只是第一步,安全可控才是最终目标。