NAT Model:
192.168.89.100 (DIP) eth0
1)in DIP
vip=192.168.10.10
dip=192.168.89.100
ifconfig eth1 $vip netmask 255.255.255.0 up
echo 1 >/proc/sys/net/ipv4/ip_forward
ipvsadm -C
ipvsadm -At $vip:80 -s rr
ipvsadm -at $vip:80 -r 192.168.89.101:80 -m
ipvsadm -at $vip:80 -r 192.168.89.102:80 -m
ipvsadm -L
2)in RS:
dip=192.168.89.100
route add default gw $dip
IP tunneling:
200.168.89.100 (DIP) eth0
1) in DR
#!/bin/bash
#tun.sh
vip=200.168.10.10
tunl0
dip=200.168.10.100 eth1
rip1=200.168.10.101 eth1
rip2=200.168.10.102 eth1
ifconfig eth1 $dip netmask 255.255.255.0 up
ifconfig tunl0 $vip netmask 255.255.255.255 up
route add -host $vip dev tunl0
echo "1" >/proc/sys/net/ipv4/ip_forward
ipvsadm -C
ipvsadm -At $vip:80 -s rr
ipvsadm -at $vip:80 -r $rip1:80 -i
ipvsadm -at $vip:80 -r $rip2:80 -i
ipvsadm -L -n
2) in RS
vip=200.168.10.10
rip=200.168.10.101
ifconfig eth1 $rip netmask 255.255.255.0 up
ifconfig tunl0 $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/eth1/rp_filter
#echo "0" >/proc/sys/net/ipv4/conf/all/rp_filter
echo 0 > /proc/sys/net/ipv4/conf/tunl0/rp_filter
echo "completed!"
DR:
200.168.89.100 (DIP) eth1
1) in DR
vip=200.168.10.10
dip=200.168.10.100
rip1=200.168.10.101
rip2=200.168.10.102
ifconfig eth1 $dip netmask 255.255.255.0 up
ifconfig eth1:0 $vip netmask 255.255.255.255
route add -host $vip dev eth1:0
ipvsadm -C
ipvsadm -At $vip:80 -s rr
ipvsadm -at $vip:80 -r $rip1:80 -g
ipvsadm -at $vip:80 -r $rip2:80 -g
ipvsadm -L -n
2) in RS
vip=200.168.10.10
rip=200.168.10.101
ifconfig eth1 $rip netmask 255.255.255.0 up
ifconfig lo:0 $vip netmask 255.255.255.255 up
route add -host $vip dev lo:0
echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce