3.7. 打开 Packet 转发和非本地绑定
为了使 Keepalived 服务能够将网络数据包正确转发到实际服务器,每个路由器节点必须在内核中开启 IP 转发。以
root
身份登录,并将 /etc/sysctl.conf
中读取 net.ipv4.ip_forward = 0
的行改为以下内容:
net.ipv4.ip_forward = 1
更改在重启系统时生效。
HAProxy 和 Keepalived 中的负载均衡还需要能够绑定到非本地的 IP 地址,这意味着它不会被分配给本地系统上的设备。这允许正在运行的负载均衡器实例绑定到不是本地的用于故障转移的 IP。
要启用,请编辑
/etc/sysctl.conf
中读取 net.ipv4.ip_nonlocal_bind
的行:
net.ipv4.ip_nonlocal_bind = 1
更改在重启系统时生效。
要检查是否已打开 IP 转发,以
root
身份运行以下命令:
/usr/sbin/sysctl net.ipv4.ip_forward
要检查是否打开了非本地绑定,以
root
身份运行以下命令:
/usr/sbin/sysctl net.ipv4.ip_nonlocal_bind
如果上述命令都返回
1
,则启用相应的设置。