持久化ipvsadm配置规则

描述

1、NAT架构规划图

路由器

2、环境准备

2.1、主机规划


主机名  IP地址
route   LAN:192.168.87.132  WAN:192.168.10.12  
lvs     LAN:192.168.87.131
rs-01   LAN:  192.168.87.129
rs-02   LAN:  192.168.87.130
client  WAN 192.168.10.4

2.2、Linux route服务器配置

使用linux服务器充当route的功能

2.2.1、配置WAN的IP地址

]# cat /etc/sysconfig/network-scripts/ifcfg-ens33
...
BOOTPROTO=static
IPADDR=192.168.10.12
PREFIX=24
GATEWAY=192.168.10.2 # 出口的网关
DNS1=192.168.10.2

2.2.2、配置LAN的IP地址【rs同网段】

]# cat /etc/sysconfig/network-scripts/ifcfg-ens36
...
BOOTPROTO=static
IPADDR=192.168.87.132
PREFIX=24
GATEWAY=192.168.87.2

2.2.3、启用 FORWARD转发功能

echo "net.ipv4.ip_forward = 1" >>/etc/sysctl.conf
sysctl -p

2.3、Linux LVS服务器配置

2.3.1、配置LAN的IP地址

]# cat /etc/sysconfig/network-scripts/ifcfg-ens36 
...
BOOTPROTO=static
IPADDR=192.168.87.131
PREFIX=24
GATEWAY=192.168.87.132 # 网关是路由器的IP地址

2.3.2、增加vip【ens36:1】

cp /etc/sysconfig/network-scripts/ifcfg-ens36 /etc/sysconfig/network-scripts/ifcfg-ens36:1
]# vi /etc/sysconfig/network-scripts/ifcfg-ens36:1...
BOOTPROTO=static
NAME=ens36:1
DEVICE=ens36:1
ONBOOT=yes
IPADDR=192.168.87.200
PREFIX=24

2.3.3、启用 FORWARD转发功能

echo "net.ipv4.ip_forward = 1" >>/etc/sysctl.conf
sysctl -p

2.4、rs-01服务器IP地址配置

2.4.1、IP地址配置

]# cat /etc/sysconfig/network-scripts/ifcfg-ens33 
...
BOOTPROTO=static
IPADDR=192.168.87.129
NETMASK=255.255.255.0
GATEWAY=192.168.87.131 # 这个IP地址指向LVS的LAN IP地址

2.4.2、增加主机路由【生产环境此步骤不存在,因为网段是不一样的】

route add -host 192.168.87.132 gw 192.168.87.200


# 因为我们是使用同一网段做NAT,如果没有配置会导致出站的时候,找不到路由,从而访问不到
# 192.168.87.132  路由器的IP地址
# 192.168.87.200  VIP
route add -host client_ip gw route_ip

2.5、rs-02服务器IP地址配置

2.5.1、IP地址配置

]# cat /etc/sysconfig/network-scripts/ifcfg-ens33 
...
BOOTPROTO=static
IPADDR=192.168.87.130
PREFIX=24
GATEWAY=192.168.87.131 # 这个IP地址指向LVS的LAN IP地址

2.5.2、增加主机路由【生产环境此步骤不存在,因为网段是不一样的】

route add -host 192.168.87.132 gw 192.168.87.200

# 因为我们是使用同一网段做NAT,如果没有配置会导致出站的时候,找不到路由,从而访问不到
# 192.168.87.132  路由器的IP地址
# 192.168.87.200  VIP
route add -host client_ip gw route_ip

2.6、rs-01、rs-02都安装上httpd服务

2.6.1、安装httpd

yum install httpd -y

2.6.2、写入访问的首页

rs-01 ~]# echo "rs-01" >/var/www/html/index.html
rs-02 ~]# echo "rs-02" >/var/www/html/index.html

2.6.3、启动httpd服务

systemctl start httpd

2.6.4、测试访问

]# curl 192.168.87.129
rs-01


]# curl 192.168.87.130
rs-02

3、配置LVS NAT

3.1、创建LVS集群

ipvsadm -A -t 192.168.87.200:80 -s rr

3.2、往LVS集群节点增加rs

ipvsadm -a -t 192.168.87.200:80 -r 192.168.87.129:80 -m
ipvsadm -a -t 192.168.87.200:80 -r 192.168.87.130:80 -m

3.3、查询集群状态

]# ipvsadm -L -n
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.87.200:80 rr
  -> 192.168.87.129:80            Masq    1      0          0         
  -> 192.168.87.130:80            Masq    1      0          0

 

4、Client测试访问【配置网关地址的方式】

4.1、修改网关IP为路由器IP地址

]# vi /etc/sysconfig/network-scripts/ifcfg-ens33 
..
IPADDR=192.168.10.4
PREFIX=24
GATEWAY=192.168.10.12
DNS1=192.168.10.2


systemctl restart network
4.2、访问vip地址
~]# curl 192.168.87.200:80
rs-02


~]# curl 192.168.87.200:80
rs-01

5、Client测试访问【直接访问路由IP地址方式】

5.1、Client网关删除掉

5.1.1、删除GATEWAY

]# vi /etc/sysconfig/network-scripts/ifcfg-ens33 
BOOTPROTO=static
IPADDR=192.168.10.4
PREFIX=24
DNS1=192.168.10.2


# 已经没有GATEWAY字段

5.1.2、重启网口访问测试

systemctl restart network


]# curl 192.168.87.200:80
curl: (7) Failed to connect to 192.168.87.200: Network is unreachable

5.2、路由器服务上配置SNAT、DNAT

5.2.1、配置DNAT【入站】
# 访问路由器地址192.168.10.12 转发给VIP 192.168.87.200
iptables -t nat -A PREROUTING -d 192.168.10.12 -j DNAT --to 192.168.87.200


# 路由器地址端口80 转发给 VIP的端口80
iptables -t nat -A PREROUTING -d 192.168.10.12 -ptcp --dport 80 -j DNAT --to 192.168.87.200:80

5.2.2、配置SNAT【出站】

# 出站,将网段为192.168.10.0 转发给 路由器192.168.10.12 出去
iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -j SNAT --to 192.168.10.12

5.3、访问路由器IP地址测试

~]# curl 192.168.10.12
rs-01


~]# curl 192.168.10.12
rs-02

6、持久化ipvsadm配置规则

6.1、保存配置规则

ipvsadm-save > /etc/sysconfig/ipvsadm

6.2、systemctl加载或删除规则

systemctl start ipvsadm
systemctl stop ipvsadm

审核编辑:黄飞

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分