栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

lvs 代理三种模式

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

lvs 代理三种模式

1.tunnel模式

四台服务器:

DR=192.168.84.130
VIP=192.168.84.199
RIP1=192.168.84.131
RIP2=192.168.84.132
RIP3=192.168.0.102

lvs服务器脚本:

#!/bin/bash
#lvs script(tunnel mode)
DR=192.168.84.130
VIP=192.168.84.199
RIP1=192.168.84.131
RIP2=192.168.84.132
RIP3=192.168.0.102
ifconfig ens33:0  $VIP broadcast $VIP netmask 255.255.255.255 up
route add -host $VIP dev ens33:0
echo "1" > /proc/sys/net/ipv4/ip_forward
/sbin/iptables -F
/sbin/ipvsadm -C
/sbin/ipvsadm -A -t $VIP:80 -s rr
/sbin/ipvsadm -a -t $VIP:80 -r $RIP1:80 -i
/sbin/ipvsadm -a -t $VIP:80 -r $RIP2:80 -i
/sbin/ipvsadm -a -t $VIP:80 -r $RIP3:80 -i
/sbin/ipvsadm
;;
stop)
echo "stop LVS TUN"
echo "0" > /proc/sys/net/ipv4/ip_forward
/sbin/ipvsadm -C
/sbin/ifconfig eth0:0 down
;;
*)
echo :Usage:$0{start|stop}
exit 1
esac

后端真实服务器

#!/bin/bash
#lvs script(dr mode)
VIP=192.168.84.199
case "$1" in
start)
ifconfig tunl0 $VIP broadcast $VIP netmask 255.255.255.255 up
route add -host $VIP dev tunl0
echo "1" > /proc/sys/net/ipv4/conf/tunl0/arp_ignore
echo "2" > /proc/sys/net/ipv4/conf/tunl0/arp_announce
echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" > /proc/sys/net/ipv4/conf/all/arp_announce
echo "0" >/proc/sys/net/ipv4/conf/tunl0/rp_filter
sysctl -p
;;
stop)
echo "stop LVS TUN"
/sbin/ifconfig tunl0 down
echo "0" > /proc/sys/net/ipv4/conf/tunl0/arp_ignore
echo "0" > /proc/sys/net/ipv4/conf/tunl0/arp_announce
echo "0" > /proc/sys/net/ipv4/conf/all/arp_ignore
echo "0" > /proc/sys/net/ipv4/conf/all/arp_announce
echo "1" >/proc/sys/net/ipv4/conf/tunl0/rp_filter
;;
*)
echo :Usage:$0{start|stop}
exit 1
esac

客户机访问的是DR

2.LVS的NAT模式

DR有两块网卡

DR:192.168.0.102

         192.168.84.130

RIP1:192.168.84.131

RIP2:192.168.84.132

lvs服务器脚本:

#!/bin/bash
#describe:lvs NAT模式
F=192.168.0.0/24
DROUT=192.168.0.103
DRIN=192.168.84.130
RIP1=192.168.84.131
RIP2=192.168.84.132
#开启路由转发功能
case "$1" in
start)
echo  1  > /proc/sys/net/ipv4/ip_forward
ipvsadm -A -t $DROUT:80  -s   rr
ipvsadm -a -t $DROUT:80 -r $RIP1:80 -m
ipvsadm -a -t $DROUT:80 -r $RIP2:80 -m
echo "$1成功"
;;
stop)
echo 0 >/proc/sys/net/ipv4/ip_forward
ipvsadm -C
echo "$1成功"
;;
*)
echo "输入有误,请输入 start|stop"
esac

RS脚本

F=192.168.0.0/24
DROUT=192.168.0.102
DRIN=192.168.84.130
RIP1=192.168.84.131
RIP2=192.168.84.132
case "$1" in
start)
route add -net $F gw $DRIN
echo "$1成功"
;;
stop)
route del -net $F
echo "$1成功"
;;
*)
exit
esac

3.LVS 的DR模式

DIP=192.168.84.130
VIP=192.168.84.190
RIP1=192.168.84.131
RIP2=192.168.84.132
 

lvs代理服务器脚本 

#!/bin/bash
#describe:lvs DR模式
DIP=192.168.84.130
VIP=192.168.84.110
RIP1=192.168.84.131
RIP2=192.168.84.132
case $1 in
start)
#添加VIP
ifconfig ens33:0 $VIP  broadcast 192.168.31.255 netmask 255.255.255.0 up
route add -host $VIP dev ens33:0
#设置路由转发
cat /etc/sysctl.conf < /etc/sysconfig/ipvsadm
systemctl enable ipvsadm
systemctl restart ipvsadm
echo "$1成功"
;;
stop)
ifconfig ens33:0 down
sed -ri 's/1/0/g' /etc/sysctl.conf
ipvsadm -C
echo "$1成功"
;;
*)
echo "请输入start/stop"
esac

RS配置

#!/bin/bash
#describe:RS配置DR模式
DIP=192.168.84.130
VIP=192.168.84.190
RIP1=192.168.84.131
RIP2=192.168.84.132
case $1 in
start)
ifconfig lo:0 192.168.84.190/32
#忽略arp响应 ,不允许收
echo 1 >/proc/sys/net/ipv4/conf/all/arp_ignore
#为了让vip发包出去,但允许发
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
echo "$1成功"
;;
stop)
ifconfig lo:0 down
echo 0 >/proc/sys/net/ipv4/conf/all/arp_ignore
echo 0 > /proc/sys/net/ipv4/conf/all/arp_announce
echo "$1成功"
;;
*)
echo "请输入start/stop"
exit
esac

客户机访问的是VIP

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/748035.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号