Lvs Tun隧道模式配置

######## 

TUN是IP Tunneling ,IP隧道的简称,它将调度器收到的IP数据包封装在一个新的IP数据包中,转交给应用服务器,然后实际服务器的返回数据会直接返回给用户

工作原理:

用户请求负载均衡服务器,当IP数据包到达负载均衡服务器后,根据算法选择一台真实的服务器,然后通过IP隧道技术将数据包原封不动再次封装,并发送给真实服务器,当这个数据包到达真实服务器以后,真实服务器进行拆包(拆掉第一层的IP包)拿到里面的IP数据包进行处理,然后将结果直接返回给客户端。

实验配置:

此实验需用到3台虚拟机和一台物理机

server1(directorserver):172.25.8.1

server2(realserver):172.25.8.2

server3(realserver):172.25.8.3

vip:172.25.8.100

 

server1:

[root@server1 ~]# ifconfig tunl0 172.25.8.100 netmask 255.255.255.255 up        ##创建tunl0 ip,并让其自己独处一个网段
[root@server1 ~]# route add -host 172.25.8.100 dev tunl0
[root@server1 ~]# ipvsadm -C
[root@server1 ~]# ipvsadm -A -t 172.25.8.100:80 -s rr
[root@server1 ~]# ipvsadm -a -t 172.25.8.100:80 -r 172.25.8.2:80 -i
[root@server1 ~]# ipvsadm -a -t 172.25.8.100:80 -r 172.25.8.3:80 -i
[root@server1 ~]# ipvsadm -Ln

 

ip addr

 

server2:

yum install httpd 

/etc/init.d/httpd start

[root@server2 ~]# ifconfig tunl0 172.25.8.100 netmask 255.255.255.255 up
[root@server2 ~]# route add -host 172.25.8.100 dev tunl0
[root@server2 ~]# echo "1" > /proc/sys/net/ipv4/conf/tunl0/arp_ignore
[root@server2 ~]# echo "2" > /proc/sys/net/ipv4/conf/tunl0/arp_announce
[root@server2 ~]# echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore
[root@server2 ~]# echo "2" > /proc/sys/net/ipv4/conf/all/arp_announce
ip addr

 

server3:

yum install httpd 

/etc/init.d/httpd start

[root@server3 ~]# ifconfig tunl0 172.25.8.100 netmask 255.255.255.255 up
[root@server3 ~]# route add -host 172.25.8.100 dev tunl0
[root@server3 ~]# echo "1" > /proc/sys/net/ipv4/conf/tunl0/arp_ignore
[root@server3 ~]# echo "2" > /proc/sys/net/ipv4/conf/tunl0/arp_announce
[root@server3 ~]#  echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore
[root@server3 ~]# echo "2" > /proc/sys/net/ipv4/conf/all/arp_announce
ip addr

 

测试:

curl 172.25.8.100
[kiosk@foundation8 Desktop]$ curl 172.25.8.100
<h1>server2-tun</h1>
[kiosk@foundation8 Desktop]$ curl 172.25.8.100
<h1>server3-tun</h1>
[kiosk@foundation8 Desktop]$ curl 172.25.8.100
<h1>server2-tun</h1>
[kiosk@foundation8 Desktop]$ curl 172.25.8.100
<h1>server3-tun</h1>

 

 

转载于:https://www.cnblogs.com/zhengyipengyou/p/9662473.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/250644.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql-常用sql

记录下工作中常用的sql 删除重复数据 delete from student where id not in (select min(id) from student group by name); -- 该语句在mysql下会报错&#xff0c; -- 执行报错&#xff1a;1093 - You cant specify target table student for update in FROM clause -- 原因是…

优雅的使用Laravel之phpstorm配置

优雅的使用Laravel之phpstorm配置 先打开一个Laravel 项目&#xff0c;然后在project tool 窗口选择根节点、然后右键->Composer | Init composer 。 如果你的电脑里没有composer.phar&#xff0c;可以点击链接来下载。然后点击项目 composer->add denpendency.. 搜索ba…

算法 --- 求两个集合的并集

const unionL (l1, l2)>{for(let i0; i <l1.length; i){if(l2.indexOf(l1[i]) -1){l2.push(l1[i])}}return l2 }let l1 [1,2,3,4]; let l2 [1,2,5]; console.log(unionL(l1,l2)); //[1, 2, 5, 3, 4]

java实验四——找鞍点

package hello;public class 实验四 {public static void main(String[] args) {// TODO Auto-generated method stubint[][] a {{9,8,6},{2,3,1},{8,5,2}};System.out.println("二维数组为&#xff1a;");for(int i0;i<a.length;i){for(int j0;j<a[i].length;…

BZOJ 4551树题解

好吧&#xff0c;洛谷的数据比较水暴力就可以过。。。。&#xff08;而且跑到飞快&#xff09; 不过&#xff08;BZ水不过去&#xff09;还是讲讲正规的做法。 其实一眼可以看出可以树剖&#xff0c;但是&#xff0c;码起来有点麻烦。 其实有一种更简单的离线做法。 我们很容易…

es6 --- 使用Symbol保护私有变量

定义一个人物类 假设其属性有姓名和性别我们希望,性别在声明后就固定不变 传统方法 var Person (function(){var _gender ;function P(name, gender){this.name name;_gender gender;}P.prototype.getGender function(){return _gender;}return P; })();var p1 new Pe…

组合数

long long factorial(int n) {long long m 1;for(int i1;i<n;i)m*i;return m; } long long C(int n,int m) {return factorial(n)/(factorial(m)*factorial(n-m));//可能会溢出 } 正解&#xff1a; long long C(int n,int m) {if(m<n-m) m n-m;long long ans 1;for(in…

Mysql中的联合索引、前缀索引、覆盖索引

Mysql中的联合索引、前缀索引、覆盖索引 索引 索引是一种特殊的文件&#xff0c;它们包含着对数据表里所有记录的引用指针。更通俗的说&#xff0c;数据库索引好比是一本书前面的目录&#xff0c;能加快数据库的查询速度。 联合索引 又名复合索引&#xff0c;由两个或多个列…

LVM逻辑卷管理

什么是逻辑卷&#xff1f;因为可以将文件系统像卷一样伸长或缩短之故。 LVM做法&#xff0c;将几个物理分区或磁盘&#xff0c;通过软件组合成为一块看起来是独立的大磁盘&#xff08;VG&#xff09;&#xff0c;然后将这块大磁盘再经过分成可使用分区&#xff08;LV&#xff0…

es6 --- 自制迭代器

对象 对象如下 const obj {left: 100,top: 200 }不可迭代 for(let attr of obj){console.log(attr); }迭代规则 可迭代,所具有的属性[Symbol.iterator] 需要自己给obj添加迭代规则 obj[Symbol.iterator] () >{// 获取obj的所有键let keys Object.keys(obj);let len …

软件工程的实践项目课程的自我目标

对实践项目完成后学习到的能力的预期&#xff1a;这算是自己第一次参加的团队合作的软件实践吧&#xff0c;以前自己搞的小“玩意”&#xff0c;实难登大雅之堂&#xff0c;期待实践项目后--->1、自己的代码能力能够有较明显的提高&#xff0c;代码更加规范。 2、提升团队合…

[Shell] swoole_timer_tick 与 crontab 实现定时任务和监控

手动完成 "任务" 和 "监控" 主要有下面三步&#xff1a; 1. mission_cron.php&#xff08;定时自动任务脚本&#xff09;&#xff1a; <?php /*** 自动任务 定时器 (5s 执行).** swoole_timer_tick 解决秒级定时&#xff1b;* 如需调整&#xff0c;注意…

关于项目调研

一、柠檬时代app 1、作品内容&#xff1a; 该作品主要为每一所高校的大学生量身定制的手机生活助手&#xff0c;由您自主运营的校园手机客户端。开放的自定义平台&#xff0c;汇聚本校周边所有生活服务、外卖商家、娱乐休闲、新鲜事儿、知名社团、周边商铺、校园达人等栏目。 …

html 标签

html概述 超文本标记语言&#xff08;英语&#xff1a;HyperText Markup Language&#xff0c;简称&#xff1a;HTML&#xff09;是一种用于创建网页的标准标记语言。HTML是一种基础技术&#xff0c;常与CSS、JavaScript一起被众多网站用于设计令人赏心悦目的网页、网页应用程序…

es6 --- forEach的实现

forEach的第一个参数 接收回调函数 let a [a, b, c]; a.forEach((v, k ,s)>{console.log(v, k ,s);console.log(this); })v: valuek: keys: 代表数组a本身this指向当前函数执行所在的作用域,即window forEach的第二个参数. forEach第1个参数用于接收回调函数,第2个参数…

java Calendar

1.1 Calendar类概念 Calendar是日历类&#xff0c;在Date后出现&#xff0c;替换掉了许多Date的方法。该类将所有可能用到的时间信息封装为静态成员变量&#xff0c;方便获取。 Calendar为抽象类&#xff0c;由于语言敏感性&#xff0c;Calendar类在创建对象时并非直接创建&…

结对项目之需求分析与原型设计

结对项目之需求分析与原型设计 031402317 李佳恺 031402511 黄家俊 这是我们两个人第一次合作&#xff0c;虽然结对是栋哥帮我们分配的&#xff0c;并且一开始我们就认识&#xff0c;但是也很开心有这个机会能一起合作完成任务。 初步分工我负责随笔&#xff0c;家俊负责原型设…

javaEE项目部署方式

1、手动部署 2、自动化部署 “自动化”的具体体现&#xff1a;向版本库提交新的代码后&#xff0c;应运服务器上自动部署 转载于:https://www.cnblogs.com/zyc-blogs/p/9674606.html

vue --- 2.0数据的响应式的一种实现

初识: 实际上是通过Object.defineProperty()方法来实现的talk is cheap, show your code let obj {}; Object.defineProperty(obj, name, {get(){return document.querySelector(#name).innerHTML;},set(newVal){document.querySelector(#name).innerHTML val;} })// 注1: …

心得开始之路

本人是大四实习狗&#xff0c;现在最大的问题是什么&#xff1f; 一&#xff1a;实力不够 二&#xff1a;人又懒 开始以为就做做运维&#xff0c;学学服务器就可以了&#xff0c;但是现在才发现&#xff0c;嗯&#xff0c;不会开发的运维什么都不算。 现在开始学习Python自动运…