GARP and RA packet specifications for HA policy with fast IP move

The following sections specify the GARP and RA packet specifications required by Google Cloud when the haPolicy.fastIPMove backend service parameter is set to GARP_RA.

GARP packet format for IPv4 traffic

The following fields are required when you use a GARP packet to trigger a new leader.

Sender MAC addressMAC address of the sender VM instance (the new leader).
Sender IPv4 addressThe /32 IPv4 address that is moving to the new leader.
Target MAC addressBroadcast MAC address: FF-FF-FF-FF-FF-FF
Target IPv4 addressSame as the sender IPv4 address.
ARP operationARPOP_REPLY: 2

RA packet format for IPv6 traffic

RA supports advertising multiple IPv6 prefix ranges in a single RA packet by attaching multiple ICMPv6 prefix information options.

When haPolicy.fastIPMove is set to GARP_RA, every IPv6 prefix range in a single RA packet should be an exact match to a forwarding rule IP address, and all of those forwarding rules must point to the same regional backend service.

If the set of IPv6 prefix ranges are served by different regional backend services, the RA packet is treated as invalid and doesn't trigger a fast IP move.

The following fields are required when you use an RA packet to trigger a new leader.

Sender MAC addressMAC address of the sender VM instance (the new leader).
Sender IPv6 addressLink-local IPv6 address of the sender VM instance. This is not the IPv6 address that is moving to the new leader.
Target MAC addressAll node multicast MAC address: 33-33-00-00-00-01
Target IPv6 addressIPv6 all node multicast address: FF02::1
IPv6 hop limit255
ICMPv6 typeND_ROUTER_ADVERT: 134
ICMPv6 options typeND_OPT_PREFIX_INFORMATION: 3
Prefix information option prefixThe IPv6 prefix that is moving to the new leader. Bits after the prefix must be zero.
Prefix information option prefix lengthThe length of IPv6 prefix that is moving to the new leader.