策略路由不生效缘由防火墙不支持不同VPN实例的策略路由

发布时间:  2013-12-28 浏览次数:  395 下载次数:  0
问题描述
拓扑图如下:

由于客户内网存在不同业务,设计时在Eudemon200E上配置了不同的VPN实例用来隔离不同的应用。Eudemon200E跟公网连接都接口G0/0/0上不属于任何VPN实例,配置了公网IP1.1.1.1, 1.1.1.1作为NAT Server都global地址,让内网都邮件服务器对外提供服务。反垃圾网关所在的网段10.148.151.0/24和Mail Server所在都网段10.148.104.0/24都在VPN实例VPN piis中。在接口G0/0/0上配置了策略路由,目的是把到邮件服务器的数据包先引流到反垃圾邮件网关上过滤一遍后,再把数据流送到邮件服务器。
但是测试结果发现,策略路由不生效,发垃圾邮件网关没有收到数据包,公网访问1.1.1.1的邮件直接被送到邮件服务器10.148.104.11上。
相关配置如下:
#
nat server 3 zone untrust global 1.1.1.1 inside 10.148.104.11 vpn-instance piis
#
acl number 3001 vpn-instance piis
description For Web_Mail Redirection
rule 5 permit tcp destination 10.148.104.11 0 destination-port eq smtp
rule 10 permit tcp destination 10.148.104.11 0 destination-port eq www
rule 15 permit tcp destination 10.148.104.11 0 destination-port eq pop2
rule 20 permit tcp destination 10.148.104.11 0 destination-port eq pop3
#
policy-based-route email permit node 5
  if-match acl 3001
  apply ip-address next-hop 10.148.151.11     --下一跳指向反垃圾邮件网关
#
interface GigabitEthernet0/0/0
description T0->Public_Network_Internet
ip address 1.1.1.1 255.255.255.252
ip policy-based-route email            -----应用策略路由
#
interface Vlanif104
ip binding vpn-instance piis      ----绑定VPN实例piis
ip address 10.148.104.1 255.255.255.0
#
interface Vlanif151
ip binding vpn-instance piis      --绑定VPN实例piis
ip address 10.148.151.1 255.255.255.0
#
firewall zone untrust
set priority 5
add interface GigabitEthernet0/0/0    ----连接公网的接口加入到根防火墙的untrust区域
#
firewall zone vpn-instance piis dmz
set priority 50
add interface Vlanif104    ----邮箱服务器所在的网段
add interface Vlanif151    ----反垃圾邮件网关所在的网段
#
policy interzone untrust vpn-instance piis dmz inbound
policy 1
action permit
policy destination 10.148.104.11 mask 255.255.255.255  //允许域间策略
policy 5
action permit
policy destination 10.148.151.11 mask 255.255.255.255   ////允许域间策略
#

告警信息
NONE
处理过程
1. 在防火墙Eudemon200E上ping反垃圾邮件网关的IP地址10.148.151.11,可以ping通,所以不存在策略路由下一跳不可达的情况。
2. 查询ACL3001的命中情况,发现该ACL的命中计数为0.
<Eudemon200E-X5>display acl 3001
11:00:20 2013/10/31
Advanced ACL 3001, 4 rules,binding with vpn-instance piis
for Web_Mail Redirection
Acl's setp is 5
rule 5 permit tcp destination 10.148.104.11 0 destination-port eq smtp  (0 times matched)
rule 10 permit tcp destination 10.148.104.11 0 destination-port eq www  (0 times matched)
rule 15 permit tcp destination 10.148.104.11 0 destination-port eq pop2 (0 times matched)
 rule 20 permit tcp destination 10.148.104.11 0 destination-port eq pop3 (0 times matched)

查询会话表,发现从公网进来的邮件直接到达邮件服务器,并没有先流到反垃圾邮件网关。
<Eudemon200E-X5>display firewall session table verbose destination inside 10.148.104.11
10:44:26 2013/10/31
current Total Session: 1

smtp VPN: public --> piis                                                    
Zone: untrust --> trust TTL: 00:00:10 Left: 00:00:01
Interface: vlanif104 Nexthop: 10.148.104.11  MAC: 00-00-00-00-00-00                       
<--packets: 1 bytes: 40 -->packets: 1 bytes: 58                             
1.1.1.10:41673 --> 1.1.1.1:25[10.148.104.11:25]
跟研发人员确认,目前的防火墙软件并不支持跨VPN实例的策略路由。
本问题中,防火墙连接公网的接口GigabitEthernet0/0/0属于根防火墙,应用在该接口下的策略路由的下一跳10.148.151.11属于VPN实例piis中,属于跨VPN实例的场景。由于GigabitEthernet0/0/0属于根防火墙,在防火墙中通过display arp命令,看不到反垃圾邮件网关10.148.151.11对应的MAC地址,在display arp vpn-instance piis中才能看到看不到反垃圾邮件网关10.148.151.11对应的MAC地址。
解决方案是防火墙上取消策略路由配置,在交换机上配置vlanif,把策略路由应用在交换机上。经测试,问题解决。
根因
1. 策略路由的下一跳不可达。
2. 产品不支持跨VPN实例的策略路由
建议与总结
防火墙产品截止目前最新版本V300R001C00SPCa00不支持跨VPN实例的策略路由,所以在配置策略路由时需要注意这点,否则会导致策略路由不生效。

END