What are the differences between Floating IPs and Virtual IPs

ipnetworkingvirtualhost

This might be a pedestrian question but what is the difference between a "Floating IP" address and a "Virtual IP" address? Are they synonyms?

Best Answer

To me, the terms mean different things.

A floating IP address is used to support failover in a high-availability cluster. The cluster is configured such that only the active member of the cluster "owns" or responds to that IP address at any given time. Should the active member fail, then "ownership" of the floating IP address would be transferred to a standby member to promote it as the new active member. Specifically, the member to be promoted issues a gratuitous ARP, announcing the new MAC address–to–IP address association.

A virtual IP address refers to the IP address of a virtual server, and is a more nebulous term. With F5 load balancers, for example, the virtual servers are the services (websites, etc.) you want to host.

More concretely, suppose you have a pair of load balancers in an active-standby cluster. For each interface or VLAN, the load balancers would each have a self IP address, as well as a floating IP address that is shared between both members. When the load balancer relays incoming requests to the back-end nodes, it uses the floating IP address as the source address, so if the load balancer dies, its partner will be able to take over and receive the response. Each website or other service being hosted on the load balancers would have its own IP address, which you could call a "virtual" IP address. (You could say that these virtual IPs "float" as well, since control of them would transfer to the standby node in the event of a failover.)