1. 实例需求 (1)需要对内网所有VLAN 间的流量设置统一的安全管理策略,允许VLAN 间流量的单向、双向访问或拒绝访问。
(2)保持现有网络架构不变,防火墙两侧接二层交换机,交换机直连服务器和用户。
(3)对于需要加强访问控制的流量由防火墙处理,而部分无须进行访问控制的流量则直接由交换机进行转发。
2. 网络规划与拓扑
根据实例的网络安全性需求及结合本单位网络的实际需求,共划分两个VLAN :A 部门用户,VLAN 号为20 ;其他部门用户,VLAN 号为10。
本例中采用的主要网络设备为:天融信网络卫士NGFW4000 系列防火墙、Cisco 3560G 二层交换机和中兴ZTE ZXR10 2826S 二层交换机。
天融信网络卫士防火墙在二层交换机协助下通过Trunk 进行连接,并将不同的VLAN 子接口放在不同的区域中,通过策略来控制VLAN 之间流量访问。
为了提高流量的吞吐量,可以在交换机和防火墙间通过千兆以太网捆绑通道相连,提高网络的带宽和可靠性。
网络拓扑图如图1 所示,其中,Cisco 3560G 二层交换机为核心交换机;中兴ZTE ZXR10 2826S 二层交换机为A 部门接入交换机;天融信NGFW4000 防火墙为基于VLAN 的内网防火墙。这是因为A 部门的数据比较重要,出于保密需要,要防范内网用户,所以在A 部门的网络VLAN 出口加装防火墙B,并配置相应的策略,以抵御内网不良用户的攻击。
图1 网络拓扑图
防火墙A 为对外网防火墙,配置和原理不是本文讨论的重点,在此不再叙述。
3. 实例应用中的难点
实例中内网防火墙B 的配置和应用是关键,先前由于忽视了天融信NGFW4000 系列防火墙为基于VLAN 应用的防火墙,配置网络参数时没有考虑VLAN 的配置,所以在应用中遇到了不少困难。
困难一:将此防火墙等同于一般网络的防火墙,没有仔细查阅相关的技术资料,误将此防火墙端口的Access 模式理解为交换机的透明交换模式,造成网络不通。
困难二:在花费大量时间后,笔者抱着试一试的心态采用防火墙端口的Trunk 模式,但没有在内网防火墙A 中定义正确的A 部门VLAN 号,网络仍然不通。
实例中防火墙与交换机的具体配置
一、基于防火墙端口Trunk 模式应用的配置
1. 天融信NGFW4000 配置
第一步: 在防火墙“网络”→“物理接口”选项中,设置端口Eth1、Eth2 为“Trunk”模式,所示。

图2设置端口为Trunk 模式(3)

图3 设置端口为Trunk 模式(2)
其中,Native 表示Trunk 端口的默认VLAN ID。由于Trunk 端口属于多个VLAN,所以需要设置默认VLANID,以便在该交换接口接收到没有标记的报文时,该Trunk 端口将此报文发往默认VLAN ID 标识的VLAN。
VLAN 的范围表示该Trunk 接口属于哪些VLAN,即允许哪些VLAN 通过。本实例只要求VLAN 20 通过。
1 ~ 20 表示属于VLAN 1 到20 ;或1,10 表示属于VLAN 1 和VLAN 10 ;Trunk 类型选择“802.1q”, 因为与其互联对应的思科交换机的协议选择的是“dot1q”。
第二步:在防火墙“网络→ VLAN”选项中,定义A部门为VLAN 20,如图4 所示。

第三步:将防火墙端口Eth1、Eth2 划分到VLAN 20 中,如图5 所示。

图5 将防火墙端口划分为VLAN 20 中
2.Cisco 3560G 配置
Switch(config)#vlan 10 /定义VLAN 10Switch(config)#int GigabitEthernet0/2Switch(config-if)# switchport access
vlan 10 /将交换机第2端口划分到VLAN 10中,接其他部门用户的交换机。
Switch(config)#vlan 20 /定义VLAN 20Switch(config)#int GigabitEthernet0/1
Switch(config-if)# switchport modetrunk /交换机第1端口设置为Trunk模式
Switch(config-if)# switchport trunkencapsulation dot1q /交换机第1端口封装dot1q协议。通过接外网防火墙A连接路由器,在路由器上设置VLAN 10和VLAN 20的子接口,为VLAN之间设置直接路由。
Switch(config)#int GigabitEthernet0/24
Switch(config-if)# switchport mode
trunk /交换机第24端口设置为Trunk模式,接内网防火墙B的Eth1口,此时内网防火墙B的Eth1口设置为Trunk模式。
Switch(config-if)# switchport trunkencapsulation dot1q /交换机第24端口封装dot1q协议。
3. 中兴ZXR10 2826S 交换机配置
zte(cfg)#set vlan 20 en /定义VLAN 20zte(cfg)#set port 1-23 pvid 20 /将交换机的1~23端口划分到VLAN 20中。
zte(cfg)#set vlan 20 ad