本篇文档主要是记录NAT模式实现过程,以及各配置步骤的原理。“lvs三种模式工作原理”中描述了LVS的NAT、DR、TUN三种模式的工作原理。

NAT模式是通过director将报文目标IP地址修改,发送给RS,RS将响应报文返回给director,通过director将报文返回给客户端。

部署环境

  director需要两个网卡,一个配置VIP,接受客户端请求报文和发送real server的响应报文;一个配置DIP,用来转发VIP接受到的请求报文和接受real server的响应报文。

LVS服务器(DS) DIP:192.168.1.1 VIP:172.30.100.111
nginx1服务器(RS) RIP:192.168.1.2 网关:192.168.1.1
nginx2服务器(RS) RIP:192.168.1.3 网关:192.168.1.1

LVS服务器配置

  VIP地址正常配置为与客户端通信的公网地址;DIP可以使用私网IP

  

  DIP不需要指定网关,它只是用来作为RS的网关。

  

  NAT模式是把请求报文的目标VIP修改为RIP,然后转发给real server。所以整个director的功能有点像路由器。centos默认是不开启转发功能,所以需要激活ip转发功能。

echo 1 >> /proc/sys/net/ipv4/ip_forward
# 开启ip转发功能

后端服务器配置

  两台real server的RIP必须与DIP是同一网段,并且要把网关设置为DIP

  

ipvs规则配置

  NAT模式支持端口映射,即客户端请求web80端口,lvs可以映射到后端服务的8080端口。

ipvsadm -A -t 172.30.100.111:80 -s wrr
# 添加虚拟服务,指定IP、端口、算法
ipvsadm -a -t 172.30.100.111:80 -r 192.168.1.2:8080 -m -w 2
# 添加nginx1服务器,指定端口,指定NAT模式,指定权重为2
ipvsadm -a -t 172.30.100.111:80 -r 192.168.1.3:8080 -m -w 1
# 添加nginx2服务器,指定端口,指定NAT模式,指定权重为1

验证

   

Linux lvs-NAT模式配置详解的更多相关文章

  1. lvs keepalived 安装配置详解【转】

    lvs keepalived 安装配置详解 张映 发表于 2012-06-20 分类目录: 服务器相关 前段时间看了一篇文章,lvs做负载均衡根F5差不多,说实话不怎么相信,因为F5没玩过,也无法比较 ...

  2. Linux lvs-DR模式配置详解

    本篇文档主要是记录DR模式实现过程,以及各配置步骤的原理.“lvs三种模式工作原理”中描述了LVS的NAT.DR.TUN三种模式的工作原理. DR模式是通过director将报文源和目标MAC地址修改 ...

  3. lvs keepalived 安装配置详解

    前段时间看了一篇文章,lvs做负载均衡根F5差不多,说实话不怎么相信,因为F5没玩过,也无法比较.F5相当的贵,真不是一般企业能负担的起的.负载均衡软件也用过不少,nginx,apache,hapro ...

  4. linux LVS DR模式配置

    拓扑图: 测试环境:CentOS 6.5 X86 64位 配置步骤: 1.  安装测试环境 [root@UCS-1 ~]# yum -y install httpd [root@UCS-1 ~]# c ...

  5. Linux安装vsftpd及配置详解

    1 安装vsftpd组件 安装完后,有/etc/vsftpd/vsftpd.conf 文件,是vsftp的配置文件.[root@bogon ~]# yum -y install vsftpd 2.FT ...

  6. (总结)CentOS Linux搭建SVN Server配置详解

         PS:虽然在公司linux服务器上搭建过几次svn,但是时间长了,有些配置操作会忘掉,上网搜索的结果都不大满意,有幸在前几天看到一篇算是最满意的svn搭建文章,转载一下以备以后使用,原文地址 ...

  7. lvs dr 模型配置详解

    前期准备: 两台服务器 note01(lvs服务器) note02(real sever) 1 首先在note01配置子网卡: ifconfig eth0: :2意思是eth0的子接口,随便一个数字就 ...

  8. linux串口编程参数配置详解(转)

    1.linux串口编程需要的头文件 #include <stdio.h>         //标准输入输出定义#include <stdlib.h>        //标准函数 ...

  9. linux串口编程参数配置详解

    1.linux串口编程需要的头文件 #include <stdio.h>         //标准输入输出定义 #include <stdlib.h>        //标准函 ...

随机推荐

  1. vs2015安装编辑神器:resharper10.0

    在平时的开发工作中,作为一名程序员,难免会想办法找到适合自己的开发编辑器.这款插件来自JetBrains公司.接下来就来教大家如何对这款软件进行安装与破解. 1:首先下载与安装.如果没有找到适合的资源 ...

  2. 5分钟入门LingaScript-尝鲜中文版TypeScript

    续前文转载: 中文輸進去,程式出得來,開發者發大財 -LingaScript:中文化TypeScript, 虽然其中例程使用了繁体中文语法, 但它同时也支持简体中文语法. 注: 此文中VS Code的 ...

  3. python网络爬虫-中国大学排名定向爬虫

    爬虫定向爬取中国大学排名信息 #!/usr/bin/python3 import requests from bs4 import BeautifulSoup import bs4 #从网络上获取大学 ...

  4. 【原】无脑操作:EasyUI Tree实现左键只选择叶子节点、右键浮动菜单实现增删改

    Easyui中的Tree组件使用频率颇高,经常遇到的需求如下: 1.在树形结构上,只有叶子节点才能被选中,其他节点不能被选中: 2.在叶子节点上右键出现浮动菜单实现新增.删除.修改操作: 3.在非叶子 ...

  5. 【原】无脑操作:IDEA使用时,提示"8080端口被占用"的解决

    1.问题描述:IDEA使用时,提示"8080端口被占用" Description:    The Tomcat connector configured to listen on ...

  6. windows server 2016 x64用MecaCli工具检查raid5磁盘状态

    下载并安装lsi MegaRAID raid卡 管理工具 下载网址:http://www.avagotech.com/support/download-search 在搜索框里搜索"mega ...

  7. 设置MYSQL数据库编码为UTF-8

    设置MYSQL数据库编码为UTF-8   1.  编辑MySql的配置文件 MySql的配置文件Windows下一般在系统目录下或者在MySql的安装目录下名字叫my.ini,可以搜索,Linux下一 ...

  8. 线程之-volatile

    线程作为java面试中必须要掌握的一环,volatile多少也会在面试中被问到,所以就需要好好研究下,以面对面试官的问题. 首先要清楚线程不安全是什么原因引起的,需要明白计算机的cpu执行每条指令时都 ...

  9. 在Windows上安装配置MongoDB

    MongoDB下载 下载地址: https://www.mongodb.org/ 找到下载页面,选择对应的平台和版本,选择Package类型msi 安装 按默认或选择安装位置一步步到头 配置环境变量 ...

  10. springboot 实现配置文件给常量赋值

    @Component @ConfigurationProperties(prefix = "task.cron") public class TaskCronParam imple ...