本文已参与「新人创作礼」活动,一起开启掘金创作之路。
**在前不久部署项目的时候,突然发现开启防火墙之后,keepalive会在多台主备机器上都存在VIP,怀着这个好奇的心情我发现。。。。what?都在往VIP发消息?
然后我就想到是不是之间的互信因为防火墙断了,然后就搜了一下keepalived采用的是VRRP协议,
VRRP(Virtual Router Redundancy Protocol)即和可靠:
是一种选择协议,它可以把一个虚拟路由器的责任动态分配到局域网上的 VRRP 路由器中的一台。控制虚拟路由器 IP 地址的 VRRP 路由器称为主路由器,它负责转发数据包到这些虚拟 IP 地址。一旦主路由器不可用,这种选择过程就提供了动态的故障转移机制,这就允许虚拟路由器的 IP 地址可以作为终端主机的默认第一跳路由器。是一种LAN接入设备备份协议。一个局域网络内的所有主机都设置缺省网关,这样主机发出的目的地址不在本网段的报文将被通过缺省网关发往三层交换机,从而实现了主机和外部网络的通信。
然后网上大部分说放开112端口(因为keepalived的默认端口是112),然后我试了,pass,不行
后来又看说添加以下这种
firewall-cmd --direct --permanent --add-rule ipv4 filter INPUT 0 --destination 224.0.0.18 --protocol vrrp -j ACCEPT firewall-cmd --direct --permanent --add-rule ipv4 filter OUTPUT 0 --destination 224.0.0.18 --protocol vrrp -j ACCEPT firewall-cmd --direct --permanent --add-rule ipv4 filter INPUT 0 --in-interface bond6 --destination 224.0.0.18 --protocol vrrp -j ACCEPT firewall-cmd --direct --permanent --add-rule ipv4 filter OUTPUT 0 --in-interface bond6 --destination 224.0.0.18 --protocol vrrp -j ACCEPT
结果改完还报错,差点让我一致以为我的防火墙被我搞坏了,后来发现
然后我就去 以下目录去修改以下文件,删掉刚才添加的的即可
最后的最后,来说以下解决方案 firewall-cmd --permanent --add-protocol=vrrp
firewall-cmd --reload
两行即可解决问题!!!
全网唯一解决方案!!!! ———————————————— 版权声明:本文为CSDN博主「W_kiven」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:blog.csdn.net/W_kiven/art…**