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(地址转换). ...
随机推荐
- 第一个随笔,调试中,用的CSS3
希望能在博客园很好的学习并得到技术上的提升!
- js(jquery)解决input元素的blur事件和其他非表单元素的click事件冲突的方法
HTML结构:很简单,就一个input,一个div,能说明问题就OK了: <input type="text" value="默认值"><br ...
- 关于C语言函数调用压栈和返回值问题的疑惑
按照C编译器的约定调用函数时压栈的顺序是从右向左,并且返回值是保存在eax寄存器当中.这个命题本该是成立的,下面用一个小程序来反汇编观察执行过程: #include<stdio.h> in ...
- windows下安装web服务器
有条件下还是在linux下部署.window上真心问题挺多的. 推荐安装Visual-NMP,轻量级.组件升级方面等. Nginx绑定IPv4和IPv6的方法 listen 80; listen [: ...
- ios 性能优化策略
1.尽量不用动态高度 2.如果是动态高度的话,提前计算好即将展示的高度并使用 一定规则跟对应的对象进行绑定缓存起来以便下一次使用 3.不要在layoutSubViews 方法中对UI elements ...
- .NET应用架构设计—用户端的防腐层作用及设计
阅读目录: 1.背景介绍 2.SOA架构下的显示端架构腐化 3.有效使用防腐层来隔离碎片服务导致显示端逻辑腐烂 4.剥离服务调用的技术组件让其依赖接口 5.将服务的DTO与显示端的ViewModel之 ...
- SQL Server自动化运维系列——批量执行SQL脚本(Power Shell)
需求描述 一般在生产环境中,在投产的情况下,需要批量的来执行SQL脚本文件,来完成整个投产,如果投产文件比较多的情况下,无疑这是一个比较痛苦的过程,所以本篇通过PowerShell脚本来批量完成. 监 ...
- mysql编码格式设置
两个地方能影响到mysql的编码格式 ①.[mysql]下default-character-set=GBK//指的是客户端输入的内容的编码(GBK只是支持中英文)②.[mysqld]下# The d ...
- 几款比较好用的C语言的集成开发环境及在windows下用命令行编译C代码
最近要用到C,所以尝试了这几款windows平台下比较好的IDE. VS2015:比较复杂和庞大,据说从2013版本开始支持C99标准. C-free:轻巧,但是不支持C99. vc++6.0:很多学 ...
- Redis-cli命令最新总结
资料来源: http://redisdoc.com/ http://redis.io/commands 连接操作相关的命令 默认直接连接 远程连接-h 192.168.1.20 -p 6379 pi ...