ocf_heartbeat_IPaddr2 — Manages virtual IPv4 addresses (Linux specific version)


IPaddr2 [ start | stop | status | monitor | meta-data | validate-all ]


This Linux-specific resource manages IP alias IP addresses. It can add an IP alias, or remove one. In addition, it can implement Cluster Alias IP functionality if invoked as a clone resource.

Supported Parameters


The IPv4 address to be configured in dotted quad notation, for example "". (required, string, no default)


The base network interface on which the IP address will be brought online. If left empty, the script will try and determine this from the routing table. Do NOT specify an alias interface in the form eth0:1 or anything here; rather, specify the base interface only. Prerequisite: There must be at least one static IP address, which is not managed by the cluster, assigned to the network interface. If you can not assign any static IP address on the interface, modify this kernel parameter: sysctl -w net.ipv4.conf.all.promote_secondaries=1 (or per device) (optional, string, default eth0)


The netmask for the interface in CIDR format (e.g., 24 and not If unspecified, the script will also try to determine this from the routing table. (optional, string, no default)


Broadcast address associated with the IP. If left empty, the script will determine this from the netmask. (optional, string, no default)


You can specify an additional label for your IP address here. This label is appended to your interface name. If a label is specified in nic name, this parameter has no effect. (optional, string, no default)


Enable support for LVS Direct Routing configurations. In case a IP address is stopped, only move it to the loopback device to allow the local node to continue to service requests, but no longer advertise it on the network. (optional, boolean, default false)


Set the interface MAC address explicitly. Currently only used in case of the Cluster IP Alias. Leave empty to chose automatically. (optional, string, no default)


Specify the hashing algorithm used for the Cluster IP functionality. (optional, string, default sourceip-sourceport)


If true, add the clone ID to the supplied value of ip to create a unique address to manage (optional, boolean, default false)


Specify the interval between unsolicited ARP packets in milliseconds. (optional, integer, default 200)


Number of unsolicited ARP packets to send. (optional, integer, default 5)


Whether or not to send the arp packets in the background. (optional, string, default yes)


MAC address to send the ARP packets too. You really shouldn't be touching this. (optional, string, default ffffffffffff)


Flush the routing table on stop. This is for applications which use the cluster IP address and which run on the same physical host that the IP address lives on. The Linux kernel may force that application to take a shortcut to the local loopback interface, instead of the interface the address is really bound to. Under those circumstances, an application may, somewhat unexpectedly, continue to use connections for some time even after the IP address is deconfigured. Set this parameter in order to immediately disable said shortcut when the IP address goes away. (optional, boolean, default false)

Supported Actions

This resource agent supports the following actions (operations):


Starts the resource. Suggested minimum timeout: 20s.


Stops the resource. Suggested minimum timeout: 20s.


Performs a status check. Suggested minimum timeout: 20s. Suggested interval: 10s.


Performs a detailed status check. Suggested minimum timeout: 20s. Suggested interval: 10s.


Retrieves resource agent metadata (internal use only). Suggested minimum timeout: 5s.


Performs a validation of the resource configuration. Suggested minimum timeout: 20s.


The following is an example configuration for a IPaddr2 resource using the crm(8) shell:

primitive example_IPaddr2 ocf:heartbeat:IPaddr2 \
  params \
    ip=string \
  op monitor depth="0" timeout="20s" interval="10s" 

See also