Lvs的TUN模式(隧道模式)

实验前提:

  • 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

猜你喜欢

转载自blog.csdn.net/weixin_43328213/article/details/87193029