关于配置lvs-tun时,在Director与Realserver在不同网段无法运行的疑惑

最近尝试了一下lvs集群,在LVS-DR模式下已经可以运行,而在使用LVS-TUN模式下,跨网段却怎么也调不通,而且也不知道如何从哪一方面跟踪问题,不得已请求援助,请高手指点,先谢谢了!:)
一.我的环境是Suse linux 10(Linux linux-105 2.6.16.46-0.12-bigsmp ),先用两台机器测试,网络环境如下:
Director:
58.1.32.43 255.255.255.192 eth0
VIP 58.1.32.31 58.1.32.192
RealServer:
58.1.32.105 255.255.255.192 eth0
二.负载均衡器配置文件如下:
#!/bin/bash
VIP1=58.1.32.31
RIP2=58.1.32.105
# Close IP Forwarding
echo "1"> /proc/sys/net/ipv4/ip_forward
ifconfig eth0:0 down
#ifconfig eth0 192.168.0.253 netmask 255.255.255.0 broadcast 192.168.0.255 up
ifconfig eth0:0 $VIP1 netmask 255.255.255.192 broadcast $VIP1 up
ipvsadm -C
ipvsadm -A -t $VIP1:8080 -s rr
ipvsadm -a -t $VIP1:8080 -r $RIP2:8080 -i -w 1
ipvsadm

实际服务器配置如下:
#!/bin/bash
#srcipt to start LVS DR realserver

VIP=58.1.32.31

#start LVS-DR real server on this machine
/sbin/ifconfig tunl0 down
/sbin/ifconfig tunl0 up
echo "1"> /proc/sys/net/ipv4/conf/tunl0/arp_ignore
echo "2"> /proc/sys/net/ipv4/conf/tunl0/arp_announce
echo "0"> /proc/sys/net/ipv4/conf/tunl0/rp_filter
echo "1"> /proc/sys/net/ipv4/conf/tunl0/forwarding

echo "1"> /proc/sys/net/ipv4/conf/all/arp_ignore
echo "2"> /proc/sys/net/ipv4/conf/all/arp_announce

/sbin/ifconfig tunl0 $VIP broadcast $VIP netmask 255.255.255.255 up
/sbin/route add -host $VIP dev tunl0

三:调试过程
1.网络没有问题,可以ping通各个服务器
2.tomcat服务没有问题,8080端口可以直接访问,直接测试实际服务器,输入http://58.1.32.105:8080/test/lvs-test.html显示正常
3.我用抓包命令: tcpdump | grep http分别在这两台机器上执行,(请帮忙分析)
结果如下:
负载均衡器(58.1.32.31)输入结果如下:
linux-lv86-test:/usr/local/bin # tcpdump | grep http
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
13:16:03.369656 IP 58.65.40.138.1140 > 58.1.32.31.http-alt: S 1568996789:1568996789(0) win 65535
13:16:03.369771 IP linux-lv86-test.site > 58.1.32.105: IP 58.65.40.138.1140 > 58.1.32.31.http-alt: S 1568996789:1568996789(0) win 65535 (ipip-proto-4)
13:16:06.356421 IP 58.65.40.138.1140 > 58.1.32.31.http-alt: S 1568996789:1568996789(0) win 65535
13:16:06.356589 IP linux-lv86-test.site > 58.1.32.105: IP 58.65.40.138.1140 > 58.1.32.31.http-alt: S 1568996789:1568996789(0) win 65535 (ipip-proto-4)
13:16:12.370612 IP 58.65.40.138.1140 > 58.1.32.31.http-alt: S 1568996789:1568996789(0) win 65535
13:16:12.370729 IP linux-lv86-test.site > 58.1.32.105: IP 58.65.40.138.1140 > 58.1.32.31.http-alt: S 1568996789:1568996789(0) win 65535 (ipip-proto-4)
实际服务器(58.1.32.105)输出结果如下:
linux-105:/usr/local/bin # tcpdump | grep http
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
13:14:27.027591 IP 58.1.32.43 > linux-105.site: IP 58.65.40.138.1140 > 58.1.32.31.http-alt: S 1568996789:1568996789(0) win 65535 (ipip-proto-4)
13:14:30.014470 IP 58.1.32.43 > linux-105.site: IP 58.65.40.138.1140 > 58.1.32.31.http-alt: S 1568996789:1568996789(0) win 65535 (ipip-proto-4)
13:14:36.028743 IP 58.1.32.43 > linux-105.site: IP 58.65.40.138.1140 > 58.1.32.31.http-alt: S 1568996789:1568996789(0) win 65535 (ipip-proto-4)

Forums:

在VS/TUN中,响应报文根据服务器的路由表直接返回给客户,而不经过负载调度器,所以负载调度器只处于从客户到
服务器的半连接中,VS/TUN 的TCP状态迁移与VS/NAT的不同。另外VS/TUN的TCP状态迁移是按照半连接的TCP有限状态机进行的。

我也遇到同样的问题,配置TUN模式后,LVS-server不转发。请高手解决

randomness