0

问题是:两个带有 RHEL 版本 7.9 的虚拟主机,并且 IP 在同一子网 (24):abc43 和:abc143。我正在尝试用 Ucarp 分配虚拟 IP abc243,问题是这两个 ucarp 进程都以 MASTER 模式启动,将虚拟地址复制到两台机器上。调用ucarp的方法:

ucarp --interface=ens192 --passfile=somefile --srcip=a.b.c.43 --vhid=243 --addr=a.b.c.243 --shutdown --upscript=/usr/libexec/ucarp/vip-up --downscript=/usr/libexec/ucarp/vip-down

和标准输出结果(在两台机器上):

[INFO] Local advertised ethernet address is [xx:xx:xx:xx:b1:62]
[WARNING] Switching to state: BACKUP
[WARNING] Spawning [/usr/libexec/ucarp/vip-down ens192 a.b.c.243]
[WARNING] Switching to state: MASTER
[WARNING] Spawning [/usr/libexec/ucarp/vip-up ens192 a.b.c.243]

我认为在选择主/备份过程(接近启动)期间,另一台服务器可能收到格式错误的 arp:

Request who-has a.b.c.243 (xx:xx:xx:xx:b1:62) tell a.b.c.243, length 46

似乎每台服务器都分配了所需的虚拟 IP abc243 并发送有关该 ip abc243 的 ARP 请求,将其虚拟 IP 作为发件人的地址。而且这样的请求没有回复,所以每个服务器都假设它必须是一个主服务器。
我想,问题出在这个 ARP 请求上,但我不知道主要原因是什么。我试图处理 rp_filter 和/或 ucarp 的选项和/或路由,但仍然没有成功。现在我已经坚持下去了,特此请求你的帮助。


来自 Epel repo 的RHEL 7.9 Ucarp:1.5.2
没有防火墙
SELinux Permissive

问候

4

0 回答 0