用户内网中有两台Web服务器和两台认证服务器,通过L5000做服务器负载分担后,外网通过VIP:210.XX.169.141可以正常打开Web服务器登录界面,但输入登录账号一直登录失败,无法继续访问业务。
组网图:
通过了解得知,访问Web服务器需要先输入账号做认证,在认证服务器上认证通过后才能继续访问Web服务器。网络中没有部署L5000时,Web服务上指定认证服务器的实IP地址,业务正常,目前已改成VIP:210.XX.169.142,确认服务器配置无误。认证服务器也是使用的TCP协议,通过Telnet方式对VIP:210.XX.169.142:80端口的测试虚服务正常。
通过排查服务器和L5000设置,都未发现问题。分析组网情况,Web服务器和认证服务器使用相同网段地址接在二层交换机上,怀疑和数据交换方式有关。由于现场催的急,没有抓取认证报文是怎么交互的。猜测认证过程是Web服务器收到登录请求后,以自己网卡IP地址做为源地址,将认证报文发送VIP:210.XX.169.142,L5000将业务下发给下面某一个认证服务器,认证服务器处理完后,回应报文,此时以自己网卡IP做源IP地址,目的地址是Web服务器网卡地址,数据传到二层交换机上,源目地址是同网段,数据直接转发给Web服务器,数据没回到LB上,出现来去路径不一致,Web服务器收到回应报文,发现报文中源IP地址并不是自己请求的IP地址,将报文丢弃,导致认证通不过。
只需要将认证服务器回应的报文再回到LB上即可解决路径不一致问题,在L5000上添加如下配置,问题解决,证实猜测正确。
acl number 3000
rule 0 permit ip source 10.10.33.0 0.0.0.255 destination 10.10.33.0 0.0.0.255
interface GigabitEthernet1/0/1
nat outbound 3000
相关配置:
L5000-C软件版本:version 7.1.054, Ess 8105P01
acl number 3000
rule 0 permit ip source 10.10.33.0 0.0.0.255 destination 10.10.33.0 0.0.0.255
#
interface GigabitEthernet1/0/0
port link-mode route
description to_out
ip address 210.XX.169.140 255.255.255.128
ip address 210.XX.169.141 255.255.255.128 sub
ip address 210.XX.169.142 255.255.255.128 sub
#
interface GigabitEthernet1/0/1
port link-mode route
description to_server
nat outbound 3000
ip address 10.10.33.254 255.255.255.0
#
ip route-static 0.0.0.0 0 210.XX.169.254
//创建ICMP类型的NQA模板
nqa template icmp t1
创建实服务组
server-farm web
probe t1
#
server-farm radius
probe t1
//配置实服务器
real-server web-01
ip address 10.10.33.36
port 9080
server-farm web
#
real-server web-02
ip address 10.10.33.37
port 9080
server-farm web
#
real-server radius-01
ip address 10.10.33.40
port 80
server-farm radius
#
real-server radius-02
ip address 10.10.33.41
port 80
server-farm radius
//配置虚服务器
virtual-server web type http
port 8000
virtual ip address 210.XX.169.141
default server-farm web
service enable
#
virtual-server radius type tcp
port 80
virtual ip address 210.XX.169.142
default server-farm radius
service enable
该案例暂时没有网友评论
✖
案例意见反馈
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作