Vmware虚拟机配置LVS/NAT模式遇到的坑。
这两天在研究LVS的负载均衡,先从最简单的LVS/NAT模式开始入手。
最后配置完之后能够相互之间Ping通,并且能够直接访问real服务器提供的web服务,而且防火墙也已经关闭了。
但是通过访问LVS服务器死活访问不了Real服务器,利用tcpdump和iftop监控软件查看了一下,发现握手出现的问题!
先说一下用于测试LVS/NAT模式的一些配置信息吧。
[真实] PC的网络:
外网IP:xxx.xxx.xxx.xxx这个是运营商动态分配给我的一个公网IP。
内网IP:192.168.123.1 使用Windows的[本地链接/宽带连接]共享互联网络访问到这个虚拟路由器上,这样虚拟机就能够访问互联网了。
内网IP:192.168.100.1
[虚拟机] LVS服务器:
外网IP、VIP:192.168.123.100
内网IP、DIP:192.168.100.10
[虚拟机] Real服务器:
外网IP:192.168.123.101
内网IP:192.168.100.11 网关 192.168.100.10
先说说我为什么要这么配置的理由,使用虚拟机安装的全新的CentOS 7,因为直接使用虚拟机不方便,我需要复制等等一些功能,所以那个192.168.123.x的网段是为了让我的Windows上的SecureCRT软件能够通过固定的IP建立SSH链接,这样我就能够很方便的配置虚拟机上面的Linux服务器了,所以我为两个服务器都配置了一个192.168.123.X的地址。
好了,理想中的一个流程应该是这样的:
客户端访问[192.168.123.100] -> LVS服务器转发[192.168.100.11] -> Real服务器返回[192.168.100.10] -> LVS服务器返回[192.168.123.1] -> 客户端。
但是坑就出现了,我们知道,LVS/NAT模式本身需要Real服务器进行一些配置,就是上面的192.168.100.X网段,要把Real服务器的这个网关地址设置为LVS的DIP。这样Real服务器就能把东西发送到LVS服务器上,然后LVS服务器就能够继续转发回客户端。
在LVS/NAT模式中,LVS本身不会修改包的来源地址,这是因为Real服务器需要每一个客户端的IP地址,所以自然是万万不能修改的。
好了,有了上面的了解之后,相信大家应该猜出问题的所在了,那就是Real服务器本身拥有192.168.123.101的IP地址。所以被处理完毕的数据,直接被发送到了192.168.123.1上面去了!如下:
客户端访问[192.168.123.100] -> LVS服务器转发[192.168.100.11] -> Real服务器返回[192.168.123.1] -> 客户端不认这个返回。
解决办法就是关掉Real服务器上面的192.168.123.101的网卡,此时Real服务器就会把数据包发给192.168.100.10也就是我们设置的网关地址。
其实出现这种问题就是路由的配置没有到位,使用默认的路由可能会出现这种情况!
种种巧合[恰好我需要通过SSH去控制虚拟机,恰好我又为每一个虚拟服务器配置了外网IP,恰好这个IP又在同一个网段],造成了这个大坑!
Vmware虚拟机配置LVS/NAT模式遇到的坑。的更多相关文章
- vmware中的linux虚拟机配置以nat模式上网,并用xshell连接该虚拟机
1. 首先确保宿主机上的vmnet8处于启用状态 2. 以管理员身份运行vmware >> 编辑 >> 虚拟机网络编辑器 >> 选中Vmnet8 >> ...
- vmware网络配置(NAt模式)
学习参考: http://www.linuxidc.com/Linux/2017-03/141864.htm(讲解NAT模式) 配置: 1.在virtul Network Editor(虚拟网络编辑器 ...
- Linux centosVMware 负载均衡集群介绍、LVS介绍、LVS调度算法、LVS NAT模式搭建
一.负载均衡集群介绍 主流开源软件LVS.keepalived.haproxy.nginx等 其中LVS属于4层(网络OSI 7层模型),nginx属于7层,haproxy既可以认为是4层,也可以当做 ...
- VMware虚拟机配置
VMware虚拟机配置 背景 在做学习Linux时经常会在win环境下安装虚拟机,这其中涉及到一些细节操作,需要对虚拟机工作模式加以理解. 本文在学习hadoop分布式环境搭建时写作. 1.虚拟交换机 ...
- 负载均衡集群介绍、LVS介绍、LVS调度算法、LVS NAT模式搭建
7月4日任务 18.6 负载均衡集群介绍18.7 LVS介绍18.8 LVS调度算法18.9/18.10 LVS NAT模式搭建 扩展lvs 三种模式详解 http://www.it165.net/a ...
- 虚拟机网络设置(NAT模式)
虚拟机网络设置(NAT模式) linux 1. 设置虚拟机网络 1.1. NAT子网设置 1.2. 网卡配置文件设置 1.3. 重启网络服务 1.4. 配置端口转发 2. 配置网络共享 预期想要搭建本 ...
- 【Tools】VMware虚拟机三种网络模式详解和操作
目录 00. 目录 01. VMware虚拟机三种网络模式 02. Bridged(桥接模式) 03. NAT(地址转换模式) 04. Host-Only(仅主机模式) 00. 目录 @ 参考:htt ...
- vmworkstation安装unbuntu server 网络配置:NAT模式
之前安装虚拟机测试环境的时候,习惯了使用桥接模式或者仅主机模式:今天偶然发现,其实NAT 模式的网络配置还是挺方便的. 在新建虚拟机的时候,选择网络模式为NAT,虚拟机创建完成之后,在vmworkst ...
- VMware虚拟机三种网络模式
VMware三种网络模式 在学习中经常遇到Vmware虚拟机网络设置有问题,可能是因为你没有理解这三种网络模式的工作原理.VMware虚拟机常见的网络类型有bridged(桥接).NAT(地址转换). ...
随机推荐
- jQuery获取Table-Input控件值封装
- TinyMCE添加图片 路径自动处理成相对路径
默认情况下会自动转换你的图片路径如: 转换: /path/name.jpg 为 ../path/name.jpg 带有域名的路径也会被转换为相对路径. 需要修改一个设置convert_urls,官方文 ...
- JQ基础之选择器
JQ选择器与CSS/CSS3选择器非常类似,对于学过CSS/CSS3的朋友来说可以是快速上手,下面总结了比较常用的选择器. ID选择器 $('#one') ( '#'代表ID ) CLASS选择器 $ ...
- 轻松掌握:JavaScript代理模式、中介者模式
代理模式.中介者模式 代理模式 在面向对象设计中,有一个单一职责原则,指就一个类(对象.函数)而言,应该仅有一个引起它变化的原因.如果一个对象承担了过多的职责,就意味着它将变得巨大,引起它变化的原因就 ...
- Java线程
线程 线程 线程(Thread)是控制线程(Thread of Control)的缩写,是程序运行的基本单位,它是具有一定顺序的指令序列(即所编写的程序代码).存放方法中定义局部变量的栈和一些共享数据 ...
- 从头开始构建LINUX [LFS 脚本]
脚本共享在这 http://pan.baidu.com/s/1nt6yiH7 version-check.sh : 这个是检查HOST机器的软件依赖情况 host-dep.sh:针对ubuntu10_ ...
- 隐藏tabbar的属性hidesBottomBarWhenPushed
项目中有需求是A视图控制器push之后B视图控制器需要隐藏底部的tabbar,在pop之后A视图控制器仍然显示tabbar. 其实不需要在push操作时敲 self.hidesBottomBarWhe ...
- textview设置drawable
textview可以在上下左右四个方向添加图片,同时也可以动态改变这些图片: 下面有我写的一个例子: 在xml文件中: <TextView android: ...
- Android项目实战(二十七):数据交互(信息编辑)填写总结
前言: 项目中必定用到的数据填写需求.比如修改用户名的文字编辑对话框,修改生日的日期选择对话框等等.现总结一下,方便以后使用. 注: 先写实现过程,想要学习的同学可以看看,不需要的同学可以直接拉到最下 ...
- Mac 下安装Jenkins
Mac 下安装Jenkins 开始 Jenkins是一个基于Java开发的一种持续集成工具,用于建工持续重复的工作,功能包括: 持续的软件版本发布/测试项目 监控外部调用执行的工作. 近期打算搭建自动 ...