I am trying to load balance ISAKMP using linux load balancing. Google searches indicate others have used LVS to load balance udp services successfully. I cant seem to get the load balancer to rewrite the source IP/port no matter what I do.
I have tried using ldirectord as well as direct ipvsadm commands. I am trying to get this to operate in masquerade mode using source IP hash as the scheduling algorithm. All I see the LB doing is rewrite destination (correctly) to that of a real server but leaving the source IP/port alone. Naturally this breaks the protocol. Has anyone else tried anything like this ? Here is my ldirector config file: (not a production quality config. I am just trying to get the rewrites to work first)
checktimeout=25
checkinterval=1
autoreload=yes
logfile="/var/log/ldirectord.log"
virtual=A.B.C.D:500
protocol=udp
real=E.F.G.H:500 masq
scheduler=sh
checktype=on