route(8)route(8)NAMEroute - Manipulates the routing tables manually
SYNOPSIS
Adding a Route
route [-nqvC] add [-net | -host] [family] destination[/bitmask] gate‐
way [-link] [modifiers[args]]
Changing a Route
route [-nqv] change [-net | -host] [family] destination gateway
[-link] [modifiers[args]]
Monitoring a Route
route [-n] monitor
Deleting a Route
route [-nqvC] delete [-net | -host] [family] destination[/bitmask]
[-link] gateway [modifiers[args]]
Deleting All Routes
route [-nqvC] flush [family]
OPTIONS
Prints host and network names in numeric format, instead of symbolic
format, when reporting actions. Suppresses all output. Causes addi‐
tional details to be printed. Forces route to use the old ioctl calls
instead of the current route server request path.
OPERANDS
Specifies explicitly that this route is a network route; destination is
interpreted as a network address. Specifies explicitly that this route
is a host route; destination is interpreted as a host address. Speci‐
fies the destination host or network (with or without the optional
Classless Inter-Domain Routing (CIDR) mask (/bitmask)). Specifies the
optional address family of the destination and gateway parameters.
Possible values are: -inet (the default) and -inet6. If the -link
parameter is not specified, this also specifies the address family of
the gateway parameter. Specifies that the gateway is a link layer
address. If the -link parameter is not specified, the address family
of the gateway parameter is the same as the destination. Specifies the
next hop and gateway to which packets should be addressed.
DESCRIPTION
The route command is a program used to manually manipulate the network
routing tables. It normally is not needed, as a system routing table
management daemon, such as gated or routed, should tend to this task.
The route command accepts five commands: Adds a route. Removes all
gateway entries from the routing tables. For the inet6 family, it also
removes all cloned routes. You can choose to flush only those routes
whose destinations are of a given address family by specifying an
optional keyword (family) that specifies the address family. Deletes a
specific route. Changes aspects of a route (such as its gateway).
Reports any changes to the routing information base, routing lookup
misses, or suspected network partionings.
Unless the -net or -host parameters are specified on the command line,
route creates a host route or a network route by interpreting the
Internet address associated with destination parameter. If the desti‐
nation has a local address part of INADDR_ANY, or if the destination is
the symbolic name of a network, a network route is created; otherwise,
a host route is created.
For example, 128.32 is interpreted as -host 128.0.0.32, 128.32.130 is
interpreted as -host 128.32.0.130; -net 128.32 is interpreted as
128.32.0.0, and -net 128.32.130 is interpreted as 128.32.130.0.
All symbolic names specified for a destination or gateway are looked up
first as a hostname using gethostbyname(3). If this lookup fails, get‐
netbyname(3) is then used to interpret the name as that of a network.
Routes added with the route command are marked as RTF_STATIC to differ‐
entiate them from routes added by the routing daemons (gated or
routed). The gated daemon does not remove the RTF_STATIC routes when
it is shut down.
The route command uses a routing socket and the new message types
RTM_ADD, RTM_DELETE, and RTM_CHANGE.
Modifiers
Modifiers provide initial values to metrics and other information main‐
tained in the routing entry. All modifiers and their arguments are
optional and must appear after the gateway field on the command line.
The modifiers for the add, change, and delete commands are as follows:
Specifies that the kernel add or delete the specified route on all
interfaces (for example, tu0 and tu1) that are in the same subnet as
the gateway. Use this modifier only with the add and delete modifiers.
Do not use -all with the -dev and -olddev modifiers. Specifies that
this route is a blackhole route. Packets sent to blackhole routes are
dropped, and no notification is sent to the packet originators. This is
different from a normal route, which allows packets to be forwarded out
on it. You must specify 127.0.0.1 (localhost) as the gateway argument.
Generates a new route on use of this route. Specifies the interface
device (for example, tu0 and fta0) to use in the routing entry. Use
this modifier when you want to designate a particular interface for a
route. If you do not specify this modifier, the route is added on the
first interface that is found. Specifies that the netmask mask is used
for all routes cloned from this route. Sets this route's maximum hop‐
count to count. Specifies that this route is via an interface instead
of via a gateway (gateway is the default). This means the destination
is reachable directly via an interface; no intermediate system is
required. The gateway parameter is the address of this host on the
common network, indicating the interface to be used for transmission.
Sets this route's type as AF_INET. When used with the delete or flush
commands, only AF_INET routes are deleted. Sets this route's type as
AF_INET6. When used with the delete or flush commands, only AF_INET6
routes are deleted. Sets this route's type as AF_ISO. When used with
the delete or flush commands, only AF_ISO routes are deleted. Sets
this route's maximum speed, in bits per 200 milliseconds, for TCP traf‐
fic. You can limit bandwidth for either host or network routes. Sets
this route's type as AF_LINK. When used with the delete or flush com‐
mands, only AF_LINK routes are deleted. Specifies that this route con‐
tains valid link-layer information. Locks the metric set by next modi‐
fier specified on the command line in the routing entry. A locked met‐
ric is not modified by the kernel. The following metrics can be
locked: mtu, hopcount, recvpipe, sendpipe, ssthresh, rtt, and rttvar.
Locks the metrics set by all modifiers that follow on the command line
in the routing entry. A locked metric is not modified by the kernel.
The following metrics can be locked: mtu, hopcount, recvpipe, sendpipe,
ssthresh, rtt, and rttvar. Sets this route's maximum transmission unit
(MTU), in bytes, to size. Specifies the subnet mask to use for the
routing entry. Networks that use a nonstandard subnet must include
this modifier. Specify this modifier after any optional modifiers. Do
not specify this modifier if you specify a CIDR bitmask (/bitmask). Do
not specify this modifier with the change command. Specifies the old
interface device (for example, tu0 and fta0) in the routing entry that
you want to change. Use this modifier with the change command only to
move a route from one interface to another. See the "Examples" sec‐
tion. Specifies the old gateway in the routing entry that you want to
change. Use this modifier with the change command only. See the
"Examples" section. Specifies the old interface in the routing entry
that you want to change. Use this modifier with the change command
only. Sets this route's type as AF_ISO. When used with the delete or
flush commands, only AF_ISO routes are deleted. Specifies that this
route is permanent; it cannot be modified by ICMP redirects. Sets the
precedence of the route to value. Among equivalent routes to the same
destination, the route with the lower precedence is preferred. Sets
this route's inbound delay bandwidth product (in bytes) to bandwidth.
Specifies that this route is a reject route. Packets sent to reject
routes are dropped and messages designating the route as unreachable
are sent to the packet originators. This is different from a normal
route, which allows packets to be forwarded out on it. You must spec‐
ify 127.0.0.1 (localhost) as the gateway argument. Sets this route's
round trip time (in microseconds) to time. Sets this route's round
trip time variance (in microseconds) to variance. Sets this route's
outbound delay bandwidth product (in bytes) to bandwidth. Sets this
route's outbound gateway buffer limit (in bytes) to threshold.
RESTRICTIONS
You must be superuser in order to run the route command and to modify
the routing tables.
DIAGNOSTICS
The specified route is being added to the tables. If the gateway
address used was not the primary address of the gateway (the first one
returned by gethostbyname), the gateway address is printed numerically
as well as symbolically. The optional /bitmask parameter was specified
with the change command. Do not specify a bit mask with the change
command. The specified route is being modified in the tables. The
specified route is being deleted from the tables. If the gateway
address used was not the primary address of the gateway (the first one
returned by gethostbyname), the gateway address is printed numerically
as well as symbolically. When you use the flush command, each routing
table entry deleted is indicated with a message of this form. An add
operation was attempted for an entry that already exists in the routing
tables. The gateway value is incorrect for creating reject and black‐
hole routes. The bitmask specified is not in the range of 1 to 32,
inclusive. The -netmask modifier was specified together with a CIDR
bit mask. The optional -netmask modifier was specified with the change
command. Do not specify a network mask with the change command. An
attempt to add a route failed because the gateway listed was not on a
directly connected network. The next hop gateway must be given. A
delete operation was attempted for an entry that was not present in the
tables. An add operation was attempted, but the system was low on
resources and was unable to allocate memory to create the new entry.
EXAMPLES
To add gateway 128.32.0.130 as a default gateway, enter: route add
default 128.32.0.130 To add a route to host milan via gateway
128.32.0.130, enter: route add -host milan 128.32.0.130 To
delete an existing route via gateway 128.32.0.130 to host milan, enter:
route delete -host milan 128.32.0.130 To add a route with a
precedence value of 1 to host milan via gateway 128.32.0.130, enter:
route add -precedence 1 -host milan 128.32.0.130 To change an
existing route for host milan via gateway 128.32.0.130 to use a new
gateway 128.32.10.101, enter: route change -oldgateway 128.32.0.130
-oldinterface le0 \ -host milan 128.32.10.101 To add a route to network
212.232.32 via gateway 128.32.0.130, enter: route add -net
212.232.32/22 128.32.0.130
The previous example aggregates routes for four Class C net‐
works: 212.232.32, 212.232.33, 212.232.34, and 212.232.35. To
add an IPv6 route to network feco:10:50::/48 through the config‐
ured tunnel interface ipt0, enter: route add -inet6
fec0:10:50::48 -inet6 fe80::a0a:2805 -dev ipt0 To add a route to
network 212.232.32/22 via gateway 128.32.0.130 and lock the MTU
size at 1500, enter: route add -net 197.45.63/24 214.89.32.235
-lock -mtu 1500 To add a route to network 212.232.32/22 via
gateway 128.32.0.130 and lock the MTU size and hop count, enter:
route add -net 197.45.63/24 214.89.32.235 -lockrest -mtu 1500 \
-hopcount 2 To change existing network route 206.98.17 via gate‐
way 206.98.17.45 from using interface device tu0 to tu1, enter:
route change -net 206.98.17 206.98.17.45 -olddev tu0 -dev tu1
This assumes that interface device tu1 is configured with an IP
address in the same subnet as tu0. To change existing network
route 206.98.17 from using gateway 206.98.17.45 to
206.98.17.162, enter: route change -net 206.98.17 206.98.17.162
-oldgateway 206.98.17.45 To change existing network route
206.98.17 using interface device tu0 and gateway 206.98.17.45 to
use device tu1 and gateway 206.98.17.162, enter: route change
-net 206.98.17 206.98.17.162 -olddev tu0 -dev tu1 \ -oldgateway
206.98.17.45 To add a route to host 219.67.129.16 via gateway
219.67.122.41 using interface device tu1, enter: route add -host
219.67.129.16 219.67.122.41 -dev tu1 To delete a route to net‐
work 219.84.6 via gateway 219.84.6.79 using interface device
fta0, enter: route delete -net 219.84.6 219.84.6.79 -olddev
fta0 To add a route to host 202.54.164.79 via gateway
202.54.163.11 using all interfaces connected to the
202.54.163/24 subnet, enter: route add -host 202.54.164.79
202.54.163.11 -all
FILES
Specifies the command path
SEE ALSO
Commands: netstat(1), gated(8), routed(8)
Networking: netintro(7)route(8)