使用 Keepalived 设置 Proxy-Arp

使用 Keepalived 设置 Proxy-Arp

我目前正在尝试创建一个包含 N 个服务器的设置,其中 1 个服务器是虚拟 IP 的主服务器,而 (N-1) 个服务器充当备份服务器,大概由 控制keepalived。但是,我发现的一个问题keepalived是,它的意图是将虚拟 IP 地址 ( 1.2.3.4) 绑定到我指定的任何接口(我们称之为eth0)。

我打算做的是,为 创建一个 Proxy-ARP 条目eth01.2.3.4这样,前往 的流量1.2.3.4就会到达eth0,并且由于ip_forwarding我的主机允许,因此主机上的路由表条目会将它们转发到虚拟接口进行进一步处理。

在 中是否支持此用例keepalived?我确实使用 使此设置正常工作ucarp,但这主要是因为具有和脚本ucarp的概念,我可以在 其中插入自定义命令来创建 Proxy-ARP 条目并发送 GARP。vip-upvip-down

答案1

你为什么要这样做?据我所知,它不受支持,因为 VRRP 是一种需要能够在同一子网上所有参与主机之间进行通信的协议。

如果您想在多台服务器之间共享虚拟 IP 地址,并且希望将其连接到环回接口,则应考虑任播路由。在您的服务器和路由器上运行路由协议(例如 OSPF 或 BGP),让每台服务器通告相同的 IP 地址,并根据您想要的任何情况(例如服务停止(例如 Apache 崩溃)或服务器失去/获得与后端数据库的连接等)制作停止/开始通告共享虚拟 IP 地址的脚本。

相关内容