case $1 in
start|START)
start_vip
if [ $? == "0" ];then
echo "setting vip success"
else
echo "setting vip fault"
fi
;;
stop|STOP)
stop_vip
if [ $? == "0" ];then
echo "remove vip success"
else
echo "remove vip fault"
fi
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
;;
esac
在real上执行此脚本(前提是给定执行权限):#/etc/rc.d/init.d/addVIP start
绑定效果如下;
开启lvs服务器的keepalived服务,如果freeradius服务正常,则lvs看到效果如下:
最后找一台服务器用radius的测试命令radtest去测试吧!
说明一下为什么需要在real服务器上绑定VIP:在 DR 模式下,由于 UDP 是无连接状态的,当 RS 回应结果时默认采用原先的地址,Client 在转发数据包时,源地址不是原先请求的 IP(VS IP),所以会存 在问题 。
下面再分享一些关于LVS知识的文档。