Man page for apt-get ucarp Command
This tutorial shows the man page for man ucarp in linux.
Open terminal with 'su' access and type the command as shown below:
Result of the Command Execution shown below:
ucarp Automatic IP failover
ucarp [ i, interface=INTERFACE] [ s, srcip=IPADDRESS]
[ v, vhid=VHID] [ p, pass=PASSWORD] [ o, passfile=PASSFILE]
[ P, preempt] [ n, neutral] [ a, addr=IPADDR] [ h, help]
[ b, advbase=SECS] [ k, advskew=SKEW] [ u, upscript=SCRIPT]
[ d, downscript=SCRIPT] [ r, deadratio=RATIO] [ z, shutdown]
[ B, daemonize] [ f, facility=FACILITY] [ x, xparam PARAM]
[ S, ignoreifstate] [ M, nomcast]
ucarp allows a pair of hosts to share common IP addresses in order to
provide automatic failover of an address from one machine to another.
It is a portable userland implementation of the secure and patent free
Common Address Redundancy Protocol, (CARP), OpenBSD's alternative to
ucarp supports the following command line options:
i INTERFACE interface=INTERFACE
The network interface to bind to.
s IPADDRESS srcip=IPADDRESS
The persistent source address, (real IP), associated with
v VHID vhid=VHID
The id of the virtual server [1 255].
p PASSWORD pass=PASSWORD
The shared password, (this gets encrypted and is not sent in
o PASSFILE passfile=PASSFILE
File to read the shared password from. The file specified
should contain the password on the first line of the file.
Turn on preemptive failover. This causes an instance of ucarp
to assume master status right immediately.
Do not run the downscript on startup when the initial state
a IPADDRESS addr=IPADDRESS
The IP address of the virtual server.
h help Display a brief summary of the command line options.
b SECONDS advbase=SECONDS
Interval in seconds that advertisements will occur, (defaults
to 1 second).
k SKEW advskew=SKEW
Advertisement skew [1 255], (defaults to 0).
u COMMAND upscript=COMMAND
Specifies the command to run after ucarp has successfully
become master, the interface name gets passed as an argument.
Typically a script used to bring up the virtual address, log
the result, add routes, clear arp cache entries, etc.
d COMMAND downscript=COMMAND
Specifies the command that is run after ucarp has transi
tioned to the backup state, the interface name is passed as
an argument. This is typically a script used to bring down
the virtual interface, log the action, remove routes, etc.
r RATIO deadratio=RATIO
Ratio used by the backup to determine how long to wait for an
unresponsive master before considering it dead.
Use of this command causes the command specified by the d
argument to be invoked when ucarp shuts down.
Causes ucarp to detach from the terminal and run in the back
ground as a daemon.
Set the syslog facility, defaults to daemon.
x PARAMETER xparam=PARAMETER
Specify an extra parameter to be supplied to the up/down
Ignore unplugged network cables. This option is useful when
ucarp nodes are connected with a crossover cable. Without
this option the master will transition to backup when the
other node is powered down, as it no longer has a link (NO
Use broadcast instead of multicast advertisements.
A host with a real IP of 10.1.1.10 configured to be the master in a
preemptive configuration with a virtual IP of 10.1.1.252.
ucarp i eth0 s 10.1.1.10 v 10 p secret a 10.1.1.252 \
upscript=/etc/vip up.sh downscript=/etc/vip down.sh P
The backup might be configured something like this.
ucarp i eth0 s 10.1.1.11 v 10 p secret a 10.1.1.252 \
upscript=/etc/vip up.sh downscript=/etc/vip down.sh
A machine with a real IP of 192.168.1.19 is the preferred master for a
virtual IP of 10.1.12.7, broadcasts are sent every 5 seconds.
ucarp b 5 s 192.168.1.19 v 27 p badpass a 10.1.12.7 \
u /etc/vip up.sh d /etc/vip down.sh z
The hot standby with an IP of 192.168.1.20 uses the following command,
(note the advskew of 50 putting it at a disadvantage and making the
first machine preferred).
ucarp b 5 k 50 s 192.168.1.20 v 27 p badpass a 10.1.12.7 \
u /etc/vip up.sh d /etc/vip down.sh z
ucarp was written by Frank Denis,
This manual page was written by Eric Evans
Debian system (but may be used by others). Permission is granted to
copy, distribute and/or modify this document under the terms of the GNU
General Public License, Version 2 or any later version published by the
Free Software Foundation.
On Debian systems, the complete text of the GNU General Public License
can be found in /usr/share/common licenses/GPL.