openWRT实现keepalived双击热备功能案例
root@OpenWrt:~# keepalived -v
Keepalived v1.2.16 (11/02,2017)
//主机修改IP 192.168.1.1为192.168.1.91
root@OpenWrt:/# vim /etc/config/network config interface 'lan' option ifname 'eth0.1' option force_link '1' option macaddr '0c:ef:af:c3:22:e6' option type 'bridge' option proto 'static' option ipaddr '192.168.1.91' // option netmask '255.255.255.0' option ip6assign '60'
reboot:
//备机修改IP 192.168.1.1为192.168.1.92
root@OpenWrt:/# vim /etc/config/network config interface 'lan' option ifname 'eth0.1' option force_link '1' option macaddr '0c:ef:af:c3:22:e5' option type 'bridge' option proto 'static' option ipaddr '192.168.1.92' // option netmask '255.255.255.0' option ip6assign '60'
reboot:
//主机配置
root@OpenWrt:/# vim /etc/keepalived/keepalived.conf ! Configuration File for keepalived global_defs { router_id LVS_DEVEL } vrrp_instance VI_1 { state MASTER interface br-lan virtual_router_id 51 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 192.168.1.98/24 dev br-lan } }
//备机配置
root@OpenWrt:/# vim /etc/keepalived/keepalived.conf
! Configuration File for keepalived global_defs { router_id LVS_DEVEL } vrrp_instance VI_1 { state BACKUP interface br-lan virtual_router_id 51 priority 50 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 192.168.1.98/24 dev br-lan } }

root@OpenWrt:/# ip a //主机
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 1000
link/ether 0c:ef:af:c3:22:e6 brd ff:ff:ff:ff:ff:ff
inet6 fe80::eef:afff:fec3:22e6/64 scope link
valid_lft forever preferred_lft forever
3: br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 0c:ef:af:c3:22:e6 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.91/24 brd 192.168.1.255 scope global br-lan
valid_lft forever preferred_lft forever
inet 192.168.1.98/24 scope global secondary br-lan
valid_lft forever preferred_lft forever
inet6 fdd4:ad46:5e::1/60 scope global noprefixroute
valid_lft forever preferred_lft forever
inet6 fe80::eef:afff:fec3:22e6/64 scope link
valid_lft forever preferred_lft forever
4: eth0.1@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-lan state UP group default
link/ether 0c:ef:af:c3:22:e6 brd ff:ff:ff:ff:ff:ff
5: eth0.2@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 0c:ef:af:c3:22:e7 brd ff:ff:ff:ff:ff:ff
inet6 fe80::eef:afff:fec3:22e7/64 scope link
valid_lft forever preferred_lft forever
root@OpenWrt:/# ip a //备机
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 1000
link/ether 0c:ef:af:c3:22:e5 brd ff:ff:ff:ff:ff:ff
inet6 fe80::eef:afff:fec3:22e5/64 scope link
valid_lft forever preferred_lft forever
3: br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 0c:ef:af:c3:22:e5 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.92/24 brd 192.168.1.255 scope global br-lan
valid_lft forever preferred_lft forever
inet6 fd56:3289:cf5a::1/60 scope global noprefixroute
valid_lft forever preferred_lft forever
inet6 fe80::eef:afff:fec3:22e5/64 scope link
valid_lft forever preferred_lft forever
4: eth0.1@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-lan state UP group default
link/ether 0c:ef:af:c3:22:e5 brd ff:ff:ff:ff:ff:ff
5: eth0.2@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 0c:ef:af:c3:22:e6 brd ff:ff:ff:ff:ff:ff
inet6 fe80::eef:afff:fec3:22e6/64 scope link
valid_lft forever preferred_lft forever
root@OpenWrt:/# /etc/init.d/keepalived stop //主机关闭该服务后IP只有192.168.1.91/24,虚拟IP丢失。
root@OpenWrt:/# ip a|grep br-lan //查看备机加载了虚拟IP:192.168.1.98/24。
3: br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
inet 192.168.1.92/24 brd 192.168.1.255 scope global br-lan
inet 192.168.1.98/24 scope global secondary br-lan
root@OpenWrt:/# /etc/init.d/keepalived restart //主机重启该服务后虚拟IP重新加载。
root@OpenWrt:/# ip a|grep br-lan //备机同时则虚拟IP丢失。
3: br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
inet 192.168.1.92/24 brd 192.168.1.255 scope global br-lan
//说明:
直接方法就是断开任意一个路由(192.168.1.91/24或者192.168.1.92/24),看虚拟路由VIP:192.168.1.98/24是否ping通!

浙公网安备 33010602011771号