实验前提:
- server1:172.25.55.1
搭建yum源,下载httpd,ipvsadm(下载ipvsadm要添加安装库,详见点击) - server2:172.25.55.2
搭建yum源头,下载httpd,编辑网页 - server3:172.25.55.3
搭建yum源头,下载httpd,编辑网页
实验操作
server1:
[root@server1 ~]# modprobe ipip
[root@server1 ~]# ip addr add 172.25.55.100/32 dev tunl0
[root@server1 ~]# ip addr show
3: tunl0: <NOARP> mtu 1480 qdisc noop state DOWN
link/ipip 0.0.0.0 brd 0.0.0.0
inet 172.25.55.100/32 scope global tunl0
[root@server1 ~]# ip link set up tunl0
[root@server1 ~]# ipvsadm -A -t 172.25.55.100:80 -s rr
[root@server1 ~]# ipvsadm -a -t 172.25.55.100:80 -r 172.25.55.2:80 -i
[root@server1 ~]# ipvsadm -a -t 172.25.55.100:80 -r 172.25.55.3:80 -i
server2:
[root@server2 ~]# modprobe ipip
[root@server2 ~]# ip addr del 172.25.55.100/32 dev eth0
[root@server2 ~]# ip addr add 172.25.55.100/32 dev tunl0
[root@server2 ~]# ip link set up tunl0
[root@server2 ~]# ip addr show
3: tunl0: <NOARP,UP,LOWER_UP> mtu 1480 qdisc noqueue state UNKNOWN
link/ipip 0.0.0.0 brd 0.0.0.0
inet 172.25.55.100/32 scope global tunl0
[root@server2 ~]# sysctl -a | grep rp_filter
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.all.arp_filter = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.arp_filter = 0
net.ipv4.conf.lo.rp_filter = 1
net.ipv4.conf.lo.arp_filter = 0
net.ipv4.conf.eth0.rp_filter = 1
net.ipv4.conf.eth0.arp_filter = 0
net.ipv4.conf.tunl0.rp_filter = 1
net.ipv4.conf.tunl0.arp_filter = 0
[root@server2 ~]# sysctl -w net.ipv4.conf.default.rp_filter=0
[root@server2 ~]# sysctl -w net.ipv4.conf.lo.rp_filter=0
[root@server2 ~]# sysctl -w net.ipv4.conf.eth0.rp_filter=0
[root@server2 ~]# sysctl -w net.ipv4.conf.tunl0.rp_filter=0
[root@server2 ~]# sysctl -p (激活)
[root@server2 ~]# sysctl -a | grep rp_filter
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.all.arp_filter = 0
net.ipv4.conf.default.rp_filter = 1(仍有一项为1)
net.ipv4.conf.default.arp_filter = 0
net.ipv4.conf.lo.rp_filter = 0
net.ipv4.conf.lo.arp_filter = 0
net.ipv4.conf.eth0.rp_filter = 0
net.ipv4.conf.eth0.arp_filter = 0
net.ipv4.conf.tunl0.rp_filter = 0
net.ipv4.conf.tunl0.arp_filter = 0
[root@server2 ~]# vim /etc/sysctl.conf(需要编辑文件修改)
10 net.ipv4.conf.default.rp_filter = 0
[root@server2 ~]# sysctl -p
[root@server2 ~]# sysctl -a | grep rp_filter(此时全部为0)
server3操作与server2相同。
测试
[root@foundation55 ~]# curl 172.25.55.100
HELLO server2
[root@foundation55 ~]# curl 172.25.55.100
www.westos.com server3
[root@foundation55 ~]# curl 172.25.55.100
HELLO server2
[root@foundation55 ~]# arp -an |grep 100
? (172.25.55.100) at 52:54:00:d1:f9:32 [ether] on br0