有时候为了保证我们网络的稳定性和可靠性,可能会申请两条出口链路,使用两个。在其中的一个无法正常工作时,由另外一个来接管相应的工作。实现的原理是利用RFC2338中描述的VRRP(Virtual Router Redundancy Protocol)协议。实现的工具是keepalived。
实验名称:利用VRRP实现简单的备份
:RedHat 7.3
所使用的内核:-2.4.24
实验用到的模块: keepalived-1.16.tar.gz
网络结构如下图所示:图中的V-Gate就是VRRP中的VIP。
网络中有两个 Router:
(1), Master(eth0:192.168.1.10/24接外网; eth1:192.168.3.1/24接内网)
(2), Backup(eth0:192.168.2.10/24接外网; eth1:192.168.3.2/24接内网)
内网的IP地址段为192.168.3.0/24,网关(V-Gate)为192.168.3.3/24,记住192.168.3.3/24这个地址是在Keepalived启动时生效的。
首先我们在 Router Master上安装keepalived-1.1.6.tar.gz
(1)、下载keepalived-1.1.6.tar.gz ()
(2)、解压缩:
#tar zxvf keepalived-1.1.6.tar.gz
|
(3)编译keepalived
#cd keepalived-1.1.6
#./configure –prefix=/usr/local/keepalived
#make
|
(4)安装keepalived
(5)配置 Router Master的VRRP
#vi /usr/local/keepalived/etc/keepalived/keepalived.conf |
内容如下:
vrrp_instance VI_1 {
state MASTER
interface eth1
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.3.3
}
} |
在 Router Backup上安装keepalived的方法是相同的,不同的是配置文件/usr/local/keepalived/etc/keepalived/keepalived.conf,如下:
vrrp_instance VI_1 {
state BACKUP
interface eth1
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.3.3
}
} |
在启动Master上的keepalived之前,我们先看一下Master上eth1的情况:
# ip add show eth1
8: eth1: mtu 1500 qdisc pfifo_fast qlen 1000
link/ether 00:e0:4c:3a:d7:25 brd ff:ff:ff:ff:ff:ff
inet 192.168.3.1/24 brd 192.168.3.255 scope global eth1
inet6 fe80::2e0:4cff:fe3a:d725/64 scope link |
我们看到只有一个IP地址:192.168.3.1/24,现在我们启动Master上的keepalived:
#/usr/local/keepalived/sbin/keepalived –D –
f /usr/local/keepalived/etc/keepalived/keepalived.conf |
现在我们再看一下Master上eth1的情况:
# ip add show eth1
8: eth1: mtu 1500 qdisc pfifo_fast qlen 1000
link/ether 00:e0:4c:3a:d7:25 brd ff:ff:ff:ff:ff:ff
inet 192.168.3.1/24 brd 192.168.3.255 scope global eth1
inet 192.168.3.3/32 scope global eth1
inet6 fe80::2e0:4cff:fe3a:d725/64 scope link |
我们看到有两个IP地址,其中一个就是V-Gate:192.168.3.3/32
用同样的方法启动Backup上的keepalived:
#/usr/local/keepalived/sbin/keepalived –D –
f /usr/local/keepalived/etc/keepalived/keepalived.conf |
这样,当Master失效时,Backup就会通过MultiCast地址:224.0.0.18这个组播地址,获得这个消息,并将192.168.3.3这个地址接管过来。
总结,请你注意一下我们这个实验的题目“利用Keepalived的VRRP实现简单的备份”,而不是路由备份。我们这个实验的目的,是让大家熟悉VRRP协议和如何利用Keepalived实现VRRP协议。