head	1.3;
access;
symbols;
locks;
comment	@# @;


1.3
date	93.03.18.08.40.10;	author bruce;	state Exp;
branches;
next	1.2;

1.2
date	93.03.18.08.26.04;	author bruce;	state Exp;
branches;
next	1.1;

1.1
date	93.03.18.08.13.53;	author bruce;	state Exp;
branches;
next	;


desc
@Initial revision is as distributed with Dynix Source V3.2.0,
    file dated Dec 14 1990.
Initial revision had RCS ident:
    $Header: route.8c 1.7 87/05/21 $
@


1.3
log
@Updated error message to reflect -r1.2 /usr/src/dynix.3.2.0/src/usr.etc/route.c
    (fixes misleading "File exists" message to be "already in table").
Also shortened it (ala similar message for 'delete'), now that it makes some
    sense.
@
text
@.\" $Copyright:	$
.\" Copyright (c) 1984, 1985, 1986, 1987, 1988, 1989, 1990 
.\" Sequent Computer Systems, Inc.   All rights reserved.
.\"  
.\" This software is furnished under a license and may be used
.\" only in accordance with the terms of that license and with the
.\" inclusion of the above copyright notice.   This software may not
.\" be provided or otherwise made available to, or used by, any
.\" other person.  No title to or ownership of the software is
.\" hereby transferred.
...
.V= $Header: /usr/src/dynix.3.2.0/src/doc/man8/RCS/route.8c,v 1.2 1993/03/18 08:26:04 bruce Exp $
.TH ROUTE 8C "\*(V)" "4BSD"
.SH NAME
route \- manually manipulate the routing tables
.SH SYNOPSIS
.B /usr/etc/route
[
.B \-f
] [
.B \-n
] [
.I command args
]
.SH DESCRIPTION
.I Route
is a program used to manually manipulate the network
routing tables.  It normally is not needed, as the
system routing table management daemon,
.IR routed (8C),
should tend to this task.
.PP
.I Route
accepts two commands:
.I add
to add a route, and
.I delete
to delete a route.
.PP
All commands have the following syntax:
.PP
.ti +0.5i
.B /usr/etc/route 
.I command
[
.B net
|
.B host
]
.I destination gateway
[
.I metric
]
.PP
where
.I destination
is a host or network, 
.I gateway
is the next-hop gateway to which packets should be addressed, and
.I metric
is a count indicating the number of hops to
the
.IR destination .
The metric is required for
.I add
commands; it must be zero if the destination is on a directly-attached network,
and nonzero if the route utilizes one or more gateways.
If adding a route with metric 0,
the gateway given is the address of this host on the common network,
indicating the interface to be used for transmission.
Routes to a particular host are distinguished from those to
a network by interpreting the Internet address associated with
.IR destination .
The optional keywords
.B net
and
.B host
force the destination to be interpreted as a network or a host, respectively.
Otherwise, if the 
.I destination
has a ``local address part'' of INADDR_ANY,
or if the
.I destination
is the symbolic name of a network, then the route is
assumed to be to a network; otherwise, it is presumed to be a
route to a host.  If the route is to a destination connected
via a gateway, the 
.I metric
should be greater than 0.  All symbolic names specified for a
.I destination 
or 
.I gateway
are looked up first as a host name using
.IR gethostbyname (3N).
If this lookup fails,
.IR getnetbyname (3N)
is then used to interpret the name as that of a network.
.PP
.I Route
uses a raw socket and the SIOCADDRT and SIOCDELRT
.IR ioctl 's
to do its work.  As such, only the super-user may modify
the routing tables.
.PP
If the 
.B \-f
option is specified, 
.I route
will ``flush'' the routing tables of all gateway entries.
If this is used in conjunction with one of the commands
described above, the tables are flushed prior to the command's
application.
.PP
The
.B \-n
option prevents attempts to print host and network names symbolically
when reporting actions.
.SH DIAGNOSTICS
.B "add  [host | net] %s: gateway %s flags %x"
.br
The specified route is being added to the tables.  The
values printed are from the routing table entry supplied
in the 
.I ioctl
call.
If the gateway address used was not the primary address of the gateway
(the first one returned by
.IR gethostbyname ),
the gateway address is printed numerically as well as symbolically.
.PP
.B "delete [host | net] %s: gateway %s flags %x"
.br
As above, but when deleting an entry.
.PP
.B "%s %s done"
.br
When the 
.B \-f
flag is specified, each routing table entry deleted
is indicated with a message of this form.
.PP
.B "Network is unreachable"
.br
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.
.PP
.B "not in table"
.br
A delete operation was attempted for an entry which
wasn't present in the tables.
.PP
.B "already in table"
.br
An add operation was attempted for an entry which
was already present in the tables.
.PP
.B "routing table overflow"
.br
An add operation was attempted, but the system was
low on resources and was unable to allocate memory
to create the new entry.
.SH "SEE ALSO"
intro(4N),
routed(8C)
@


1.2
log
@Fixes to DIAGNOSTICS:
    Added the error message that results from attempting to add an entry
	that already exists -- because message is misleading ("File exists").
    Minor fix to two other messages -- they print "net", not "network".
@
text
@d12 1
a12 1
.V= $Header: /usr/src/dynix.3.2.0/src/doc/man8/RCS/route.8c,v 1.1 1993/03/18 08:13:53 bruce Exp $
d153 1
a153 1
.B "add [host | net] %s: gateway %s: File exists"
@


1.1
log
@Initial revision
@
text
@d12 1
a12 1
.V= $Header: route.8c 1.7 87/05/21 $
d119 1
a119 1
.B "add  [host | network] %s: gateway %s flags %x"
d131 1
a131 1
.B "delete [host | network] %s: gateway %s flags %x"
d152 5
@
