routes(4) Kernel Interfaces Manual routes(4)NAME
routes - Specifies Internet routing information to the routing tables
SYNOPSIS
/etc/routes
DESCRIPTION
Static routes can be defined in the /etc/routes file. The /etc/routes file identifies static routes that are automatically added to the
network routing tables with the /usr/sbin/route add command. The /sbin/init.d/route script contains the /usr/sbin/route add command that
is executed for each entry in the /etc/routes file when the network is restarted on the system or the system is rebooted.
The general format of an entry in the /etc/routes file is: Dest Name1 Name2
The following is a brief description of each element in an /etc/routes file entry: A keyword that indicates whether the route is to a net-
work or to a host. The two possible keywords are -net and -host. The name or address of the destination network or host. Name1 can be
either a symbolic name (as used in the /etc/hosts or /etc/networks file) or an Internet address specified in dotted-decimal format. The
name or address of the gateway host to which messages should be forwarded. Name2 can be either a symbolic name (as used in the /etc/hosts
file) or an Internet address specified in dotted-decimal format.
The routes file is a Context-Dependent Symbolic Link (CDSL) and must be maintained as such. See the System Administration manual for more
information.
EXAMPLES
To specify a route to a network through a gateway host with an entry in the /etc/routes file, enter:
-net net2 host4
This example specifies a route to a network, net2, through the gateway host4. To specify a route to a host through a gateway host
with an entry in the /etc/routes file, enter:
-host host2 host4
This example specifies a route to a host, host2, through the gateway host4. To specify a route to a default gateway host with an
entry in the /etc/routes file, enter:
default 130.9.0.5
This example specifies a route to a default gateway with an Internet address of 130.9.0.5.
FILES
Contains the /usr/sbin/routed add command.
RELATED INFORMATION
Commands: route(8)
Daemons: gated(8), routed(8)
Files: gated.conf(4)
Network Administration delim off
routes(4)
Check Out this Related Man Page
routing(7P) Protocols routing(7P)NAME
routing - system support for packet network routing
DESCRIPTION
The network facilities provide general packet routing. The routing interface described here can be used to maintain the system's IPv4 rout-
ing table. It has been maintained for compatibility with older applications. The recommended interface for maintaining the system's routing
tables is the routing socket, described at route(7P). The routing socket can be used to manipulate both the IPv4 and IPv6 routing tables
of the system. Routing table maintenance may be implemented in applications processes.
A simple set of data structures compose a "routing table" used in selecting the appropriate network interface when transmitting packets.
This table contains a single entry for each route to a specific network or host. The routing table was designed to support routing for the
Internet Protocol (IP), but its implementation is protocol independent and thus it may serve other protocols as well. User programs may
manipulate this data base with the aid of two ioctl(2) commands, SIOCADDRT and SIOCDELRT. These commands allow the addition and deletion of
a single routing table entry, respectively. Routing table manipulations may only be carried out by privileged user.
A routing table entry has the following form, as defined in /usr/include/net/route.h:
struct rtentry {
unit_t rt_hash; /* to speed lookups */
struct sockaddr rt_dst; /* key */
struct sockaddr rt_gateway; /* value */
short rt_flags; /* up/down?, host/net */
short rt_refcnt; /* # held references */
unit_t rt_use; /* raw # packets forwarded */
/*
* The kernel does not use this field, and without it the structure is
* datamodel independent.
*/
#if !defined(_KERNEL)
struct ifnet *rt_ifp; /* the answer: interface to use */
#endif /* !defined(_KERNEL) */
};
with rt_flags defined from:
#define RTF_UP 0x1 /* route usable */
#define RTF_GATEWAY 0x2 /* destination is a gateway */
#define RTF_HOST 0x4 /* host entry (net otherwise) */
There are three types of routing table entries: those for a specific host, those for all hosts on a specific network, and those for any
destination not matched by entries of the first two types, called a wildcard route.
Each network interface installs a routing table entry when it is initialized. Normally the interface specifies if the route through it
is a "direct" connection to the destination host or network. If the route is direct, the transport layer of a protocol family usually
requests the packet be sent to the same host specified in the packet. Otherwise, the interface may be requested to address the packet to an
entity different from the eventual recipient; essentially, the packet is forwarded.
Routing table entries installed by a user process may not specify the hash, reference count, use, or interface fields; these are filled in
by the routing routines. If a route is in use when it is deleted, meaning its rt_refcnt is non-zero, the resources associated with it will
not be reclaimed until all references to it are removed.
User processes read the routing tables through the /dev/ip device.
The rt_use field contains the number of packets sent along the route. This value is used to select among multiple routes to the same desti-
nation. When multiple routes to the same destination exist, the least used route is selected.
A wildcard routing entry is specified with a zero destination address value. Wildcard routes are used only when the system fails to find a
route to the destination host and network. The combination of wildcard routes and routing redirects can provide an economical mechanism for
routing traffic.
ERRORS
EEXIST A request was made to duplicate an existing entry.
ESRCH A request was made to delete a non-existent entry.
ENOBUFS Insufficient resources were available to install a new route.
ENOMEM Insufficient resources were available to install a new route.
ENETUNREACH The gateway is not directly reachable. For example, it does not match the destination/subnet on any of the network
interfaces.
FILES
/dev/ip IP device driver
SEE ALSO route(1M), ioctl(2), route(7P)SunOS 5.10 9 Nov 1999 routing(7P)