交换机端口VLAN划分,隔离网站业务流量
交换机端口VLAN划分实战:隔离网站业务流量
当网站业务、数据库和管理后台都接在同一台交换机上时,广播报文和ARP请求会互相影响,一台服务器中毒或环路可能拖慢整个局域网。
通过端口VLAN划分,可以把不同业务流量隔离到独立广播域,提升安全性和稳定性。
下面以一台三层交换机为例,把Web服务器、MySQL数据库和管理电脑分到三个VLAN,零基础也能照着做。
先理清VLAN与端口的关系
VLAN是逻辑上的局域网,同一VLAN内的设备可以直接通信,不同VLAN默认隔离。
交换机的每个物理端口可以划入不同VLAN,端口类型主要分两种:Access端口只属于一个VLAN,通常连接服务器或电脑;Trunk端口允许多个VLAN通过,用于交换机之间或连接路由器、防火墙。
本次规划:VLAN 10给Web服务器,网段192.168.10.0/24;
VLAN 20给数据库,网段192.168.20.0/24;
VLAN 30给管理电脑,网段192.168.30.0/24。
网关都配置在交换机上,方便后续做ACL控制。
登录交换机并创建VLAN
用Console线或SSH登录交换机,进入系统视图。
华为、H3C、思科命令略有差异,下面分别给出。
华为交换机:
system-view
vlan 10
description Web_Server
vlan 20
description Database
vlan 30
description Management
quit
H3C交换机:
system-view
vlan 10
description Web_Server
vlan 20
description Database
vlan 30
description Management
quit
思科交换机:
enable
configure terminal
vlan 10
name Web_Server
vlan 20
name Database
vlan 30
name Management
exit
创建完成后用display vlan(华为/H3C)或show vlan brief(思科)确认VLAN已存在。
把物理端口划入对应VLAN
假设Web服务器接在G0/0/1,数据库接在G0/0/2,管理电脑接在G0/0/3。
这些端口都配置为Access模式。
华为:
interface GigabitEthernet0/0/1
port link-type access
port default vlan 10
quit
interface GigabitEthernet0/0/2
port link-type access
port default vlan 20
quit
interface GigabitEthernet0/0/3
port link-type access
port default vlan 30
quit
H3C命令与华为类似,端口类型命令为port link-type access和port access vlan 10。
思科:
interface GigabitEthernet0/1
switchport mode access
switchport access vlan 10
interface GigabitEthernet0/2
switchport mode access
switchport access vlan 20
interface GigabitEthernet0/3
switchport mode access
switchport access vlan 30
配置后可以用display port vlan或show vlan brief查看端口所属VLAN,确认没有划错。
配置VLAN网关实现三层互通
不同VLAN之间默认不能通信,但网站需要访问数据库,管理电脑也需要连到服务器。
在三层交换机上给每个VLAN配置IP地址作为网关。
华为:
interface Vlanif10
ip address 192.168.10.1 255.255.255.0
interface Vlanif20
ip address 192.168.20.1 255.255.255.0
interface Vlanif30
ip address 192.168.30.1 255.255.255.0
H3C使用interface Vlan-interface10。
思科使用interface Vlan10并配合ip routing开启路由功能。
服务器和电脑的网关分别设置为对应VLAN的IP地址,例如Web服务器网关填192.168.10.1。
用ACL限制不必要的访问
三层互通后,管理VLAN可以访问所有服务器,但Web服务器不应该能直接访问管理网段。
可以配置ACL做精细控制。
华为示例,禁止VLAN 10访问VLAN 30:
acl number 3000
rule deny ip source 192.168.10.0 0.0.0.255 destination 192.168.30.0 0.0.0.255
rule permit ip
quit
interface Vlanif10
traffic-filter inbound acl 3000
思科使用扩展ACL并应用到VLAN接口。
配置ACL后,用display acl 3000检查规则是否生效。
验证隔离效果与排错
配置完成后,按下面顺序验证:
- 同VLAN互通:Web服务器ping同网段另一台服务器,应通。
- 跨VLAN受控:Web服务器ping数据库网关192.168.20.1,应通;ping管理电脑192.168.30.x,根据ACL应不通。
- 广播隔离:在Web服务器上抓包,应看不到数据库VLAN的ARP广播。
- 上网正常:如果交换机上联路由器,确认默认路由和NAT配置正确。
如果ping不通网关,先检查端口是否划入正确VLAN、VLANif是否up、服务器网关是否填对。
如果跨VLAN不通但网关通,检查ACL是否拦截了流量。
如果Trunk链路不通,确认两端Trunk允许的VLAN列表一致,例如华为port trunk allow-pass vlan 10 20 30。
容易忽略的几个细节
- Trunk链路要放行所有业务VLAN,否则跨交换机时部分VLAN会断。
- 管理VLAN不要和业务VLAN混用,否则管理流量可能被业务广播影响。
- 修改端口VLAN前先记录原配置,避免误操作导致断网。
- ACL规则顺序很重要,拒绝规则要放在允许规则前面,否则可能不生效。
- 保存配置,华为/H3C用
save,思科用write memory,否则重启后丢失。
常见疑问
问:VLAN划分后网站访问变慢怎么办?
先检查Trunk链路是否成为瓶颈,以及ACL是否匹配了过多流量。可以在交换机上查看接口流量和CPU利用率。
问:不同VLAN的服务器需要互相访问,一定要用三层交换机吗?
如果只是少量互访,可以用路由器单臂路由实现,但性能不如三层交换机。三层交换机直接配置VLANif更简单高效。
问:划分VLAN后还能用原来的IP地址吗?
可以,但不同VLAN必须使用不同网段,否则网关无法正确路由。建议提前规划好网段,避免后期调整。
按照以上步骤完成交换机端口VLAN划分,网站业务流量就能得到有效隔离。
建议先在测试环境验证,再应用到生产网络,并保存配置和文档,方便日后排查。