centos防火墙默认是不允许keepalived使用 vrrp的组播,如果不开启组播ip,keepalived双机不能实现热备的效果,只能实现负载的效果,即虚拟ip不能实现漂移。
防火墙开启keepalived使用组播ip执行一下命令:
centos7使用一下命令:
firewall-cmd –direct –permanent –add-rule ipv4 filter INPUT 0 –in-interface enp4s0 –destination 224.0.0.18 –protocol vrrp -j ACCEPT
firewall-cmd –reload
enp4s0是指的服务器的网卡名称,INPUT代表接收224.0.0.18的报文,使用 ip a 命令查看.
centos6下使用一下命令:
vi /etc/sysconfig/iptables 增加这个
-A INPUT -p 112 -d 224.0.0.18/32 -j ACCEPT
-p 112指定协议为112,也可-p vrrp即vrrp,keepalived组播地址是224.0.0.18
重启防火墙
然后再看系统的ip地址,发现恢复正常,只有一台机器是master状态了。