Comment 1 for bug 1885582

Revision history for this message
Matt Peters (mpeters-wrs) wrote : Re: calico binds to the floating IP after pod restart, causing failures on swact

Calico uses can-reach option for node IP auto detection of the IP address on the cluster-host network. To perform this operation it opens a UDP socket to the can-reach destination and checks which source IP address is selected for the local address.

Linux uses the rules defined in RFC6724[0] for source address selection. The first rule stipulates that the same address as the destination be chosen if the address is local.

In the scenario described and the current Calico configuration to use the floating IP as auto detection address, the selected node IP address is the floating IP address.

To avoid selecting the floating IP address due to Rule 1, the Calico can-reach auto detection address should be configured to use the controller-0 cluster host address. Since the floating IP is marked as deprecated, the controller unit address of the cluster-host network will be chosen. This will work for all hosts, even if controller-0 is not currently available, since the auto detection address is used only to identify the network and the local IP address.

[0] https://tools.ietf.org/html/rfc6724