linux lvs公网ip,linux LVS-NAT 实践

具体原理请查看我的博客LVS原理:贴出拓扑图

d5ed5f33a6976d4ebdca0287378f2a34.png

说明一点 如果有朋友要做实验的又没有公网ip,又要动手做的。鼓励下!接着往下看

ip规划:

lvs:        eth1    172.168.11.12(我随便设置的一个公网ip)

eth0    192.168.11.50(私网ip)

real server1 eth0    192.168.11.252(私网ip)

real server2 eth0    192.168.11.253(私网ip)

一、首先配置ip地址

这里我就贴下配置文件说明下:

LVS调度器:

[root@LVS ~]# more /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE="eth0"

BOOTPROTO="static"

DNS1="8.8.8.8"

GATEWAY="192.168.11.1"

HWADDR="00:0C:29:FA:76:E3"

IPV6INIT="yes"

MTU="1500"

NM_CONTROLLED="yes"

ONBOOT="yes"

TYPE="Ethernet"

NETMASK=255.255.255.0

IPADDR=192.168.11.50

[root@LVS ~]# more /etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE="eth1"

BOOTPROTO="static"

HWADDR="00:0C:29:FA:76:ED"

NM_CONTROLLED="yes"

ONBOOT="yes"

TYPE="Ethernet"

IPADDR=172.168.11.12

NETMASK=255.255.255.0

注意此处配置没有网关,所以不用配置网关,测试时只需要测试服务器和这个ip在同一个网段。

线上服务器必须配置网关。

在LVS上相互ping下各自ip看能互通不!如果不通表示没有开启路由管道功能,设置内核ip转发,具体参考步骤二。

测试机器windows ip设置

3147789839dda7c954ed13413b4d0536.png

这里也不要设置网关 ,也没有网关。测试机和LVS就可以通过交换机通信了。测试下相互ping对方看是否有问题。

real server1

[root@WEB1 ~]# more /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE="eth0"

BOOTPROTO="static"

DNS1="8.8.8.8"

GATEWAY="192.168.11.50"

HWADDR="00:0C:29:64:A9:70"

IPV6INIT="yes"

MTU="1500"

NM_CONTROLLED="yes"

ONBOOT="yes"

TYPE="Ethernet"

NETMASK=255.255.255.0

IPADDR=192.168.11.252

注意此处网关应该设置为LVS调度器私网ip,如果不设置网关,服务器响应用户的报文是不知道如何路由的。

real server2

[root@WEB2 ~]#  more /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE="eth0"

BOOTPROTO="static"

DNS1="8.8.8.8"

GATEWAY="192.168.11.50"

HWADDR="00:0C:29:15:29:29"

IPV6INIT="yes"

MTU="1500"

NM_CONTROLLED="yes"

ONBOOT="yes"

TYPE="Ethernet"

IPADDR=192.168.11.253

NETMASK=255.255.255.0

同样网关设置为lvs调度器私网ip

二、设置LVS调度器

1,首先开启ip转发

[root@LVS ~]# grep -v ^# /etc/sysctl.conf |grep -v ^$

net.ipv4.ip_forward = 1    默认为0,不开启  设置为1,开启状态 如果没有加入即可。

[root@bs-p_w_picpath1 ~]# sysctl -p|grep ip_forward

net.ipv4.ip_forward = 1

2,设置ipvsadm转发:

首先验证有无ipvsadm工具

如果没有请使用

[root@LVS ~]# yum -y install ipvsadm

建立脚本

[root@LVS ~]# more ipvs.sh

#!/bin/bash

ipvsadm -C                                             #清除之前所有的转发规则

ipvsadm -At 172.168.11.12:80 -s rr      #增加一种算法对于172.168.11.12:80的报文,rr为轮询

ipvsadm -at 172.168.11.12:80 -r 192.168.11.253:80 -m    #增加一个realserver

ipvsadm -at 172.168.11.12:80 -r 192.168.11.252:80 -m    #再增加一个realserver

ipvsadm                                                #打印当前的ipvsadm规则

注意这里的-m的含义

-g, --gatewaying  Use gatewaying (direct routing). This is the default.

-i, --ipip  Use ipip encapsulation (tunneling).

-m, --masquerading  Use masquerading (network access translation, or NAT).

使用的什么模式。更多参数,参考man ipvsadm。

[root@LVS ~]# bash ipvs.sh

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

-> RemoteAddress:Port           Forward Weight ActiveConn InActConn

TCP  ACA80B0C.ipt.aol.com:http rr

-> 192.168.11.252:http          Masq    1      0          0

-> 192.168.11.253:http          Masq    1      0          0

现在可以开始测试了。注意如果你提前修改了windows的ip是不能通过网络连接虚拟机的。这个就自己想办法了,有问题可以联系我。

8a773f6fd14d84bf5f9fe06314284e82.png

9f7b185fada1212064be0779e6c96be9.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值