Annotation of 43BSDReno/sbin/routed/routed.8, revision 1.1.1.1

1.1       root        1: .\" Copyright (c) 1983 The Regents of the University of California.
                      2: .\" All rights reserved.
                      3: .\"
                      4: .\" Redistribution and use in source and binary forms are permitted provided
                      5: .\" that: (1) source distributions retain this entire copyright notice and
                      6: .\" comment, and (2) distributions including binaries display the following
                      7: .\" acknowledgement:  ``This product includes software developed by the
                      8: .\" University of California, Berkeley and its contributors'' in the
                      9: .\" documentation or other materials provided with the distribution and in
                     10: .\" all advertising materials mentioning features or use of this software.
                     11: .\" Neither the name of the University nor the names of its contributors may
                     12: .\" be used to endorse or promote products derived from this software without
                     13: .\" specific prior written permission.
                     14: .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
                     15: .\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
                     16: .\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
                     17: .\"
                     18: .\"    @(#)routed.8    6.5 (Berkeley) 6/24/90
                     19: .\"
                     20: .TH ROUTED 8 "June 24, 1990"
                     21: .UC 5
                     22: .SH NAME
                     23: routed \- network routing daemon
                     24: .SH SYNOPSIS
                     25: .B routed
                     26: [
                     27: .B \-d
                     28: ] [
                     29: .B \-g
                     30: ] [
                     31: .B \-s
                     32: ] [
                     33: .B \-q
                     34: ] [
                     35: .B \-t
                     36: ] [
                     37: .I logfile
                     38: ]
                     39: .SH DESCRIPTION
                     40: .I Routed
                     41: is invoked at boot time to manage the network routing tables.
                     42: The routing daemon uses a variant of the Xerox NS Routing
                     43: Information Protocol in maintaining up to date kernel routing
                     44: table entries.
                     45: It used a generalized protocol capable of use with multiple
                     46: address types, but is currently used only for Internet routing
                     47: within a cluster of networks.
                     48: .PP
                     49: In normal operation
                     50: .I routed
                     51: listens on the
                     52: .IR udp (4)
                     53: socket for the
                     54: .I route
                     55: service (see
                     56: .IR services (5))
                     57: for routing information packets.  If the host is an
                     58: internetwork router, it periodically supplies copies
                     59: of its routing tables to any directly connected hosts
                     60: and networks.
                     61: .PP
                     62: When
                     63: .I routed
                     64: is started, it uses the SIOCGIFCONF
                     65: .I ioctl
                     66: to find those
                     67: directly connected interfaces configured into the
                     68: system and marked ``up'' (the software loopback interface
                     69: is ignored).  If multiple interfaces
                     70: are present, it is assumed that the host will forward packets
                     71: between networks.
                     72: .I Routed
                     73: then transmits a 
                     74: .I request
                     75: packet on each interface (using a broadcast packet if
                     76: the interface supports it) and enters a loop, listening
                     77: for
                     78: .I request
                     79: and
                     80: .I response
                     81: packets from other hosts.
                     82: .PP
                     83: When a
                     84: .I request
                     85: packet is received, 
                     86: .I routed
                     87: formulates a reply based on the information maintained in its
                     88: internal tables.  The
                     89: .I response
                     90: packet generated contains a list of known routes, each marked
                     91: with a ``hop count'' metric (a count of 16, or greater, is
                     92: considered ``infinite'').  The metric associated with each
                     93: route returned provides a metric
                     94: .IR "relative to the sender" .
                     95: .PP
                     96: .I Response
                     97: packets received by
                     98: .I routed
                     99: are used to update the routing tables if one of the following
                    100: conditions is satisfied:
                    101: .TP
                    102: (1)
                    103: No routing table entry exists for the destination network
                    104: or host, and the metric indicates the destination is ``reachable''
                    105: (i.e. the hop count is not infinite).
                    106: .TP
                    107: (2)
                    108: The source host of the packet is the same as the router in the
                    109: existing routing table entry.  That is, updated information is
                    110: being received from the very internetwork router through which
                    111: packets for the destination are being routed.
                    112: .TP
                    113: (3)
                    114: The existing entry in the routing table has not been updated for
                    115: some time (defined to be 90 seconds) and the route is at least
                    116: as cost effective as the current route.
                    117: .TP
                    118: (4)
                    119: The new route describes a shorter route to the destination than
                    120: the one currently stored in the routing tables; the metric of
                    121: the new route is compared against the one stored in the table
                    122: to decide this.
                    123: .PP
                    124: When an update is applied,
                    125: .I routed
                    126: records the change in its internal tables and updates the kernel
                    127: routing table.
                    128: The change is reflected in the next
                    129: .I response
                    130: packet sent.
                    131: .PP
                    132: In addition to processing incoming packets,
                    133: .I routed
                    134: also periodically checks the routing table entries.
                    135: If an entry has not been updated for 3 minutes, the entry's metric
                    136: is set to infinity and marked for deletion.  Deletions are delayed
                    137: an additional 60 seconds to insure the invalidation is propagated
                    138: throughout the local internet.
                    139: .PP
                    140: Hosts acting as internetwork routers gratuitously supply their
                    141: routing tables every 30 seconds to all directly connected hosts
                    142: and networks.
                    143: The response is sent to the broadcast address on nets capable of that function,
                    144: to the destination address on point-to-point links, and to the router's
                    145: own address on other networks.
                    146: The normal routing tables are bypassed when sending gratuitous responses.
                    147: The reception of responses on each network is used to determine that the
                    148: network and interface are functioning correctly.
                    149: If no response is received on an interface, another route may be chosen
                    150: to route around the interface, or the route may be dropped if no alternative
                    151: is available.
                    152: .PP
                    153: .I Routed supports several options:
                    154: .TP
                    155: .B \-d
                    156: Enable additional debugging information to be logged,
                    157: such as bad packets received.
                    158: .TP
                    159: .B \-g
                    160: This flag is used on internetwork routers to offer a route
                    161: to the ``default'' destination.
                    162: This is typically used on a gateway to the Internet,
                    163: or on a gateway that uses another routing protocol whose routes
                    164: are not reported to other local routers.
                    165: .TP
                    166: .B \-s
                    167: Supplying this
                    168: option forces 
                    169: .I routed
                    170: to supply routing information whether it is acting as an internetwork
                    171: router or not.
                    172: This is the default if multiple network interfaces are present,
                    173: or if a point-to-point link is in use.
                    174: .TP
                    175: .B \-q
                    176: This
                    177: is the opposite of the
                    178: .B \-s
                    179: option.
                    180: .TP
                    181: .B \-t
                    182: If the
                    183: .B \-t
                    184: option is specified, all packets sent or received are
                    185: printed on the standard output.  In addition,
                    186: .I routed
                    187: will not divorce itself from the controlling terminal
                    188: so that interrupts from the keyboard will kill the process.
                    189: .PP
                    190: Any other argument supplied is interpreted as the name
                    191: of file in which 
                    192: .IR routed 's
                    193: actions should be logged.  This log contains information
                    194: about any changes to the routing tables and, if not tracing all packets,
                    195: a history of recent messages sent and received which are related to
                    196: the changed route.
                    197: .PP
                    198: In addition to the facilities described above, 
                    199: .I routed
                    200: supports the notion of ``distant''
                    201: .I passive
                    202: and 
                    203: .I active
                    204: gateways.  When 
                    205: .I routed
                    206: is started up, it reads the file
                    207: .I /etc/gateways
                    208: to find gateways which may not be located using
                    209: only information from the SIOGIFCONF
                    210: .IR ioctl .
                    211: Gateways specified in this manner should be marked passive
                    212: if they are not expected to exchange routing information,
                    213: while gateways marked active
                    214: should be willing to exchange routing information (i.e.
                    215: they should have a
                    216: .I routed
                    217: process running on the machine).
                    218: Routes through passive gateways are installed in the
                    219: kernel's routing tables once upon startup.
                    220: Such routes are not included in
                    221: any routing information transmitted.
                    222: Active gateways are treated equally to network
                    223: interfaces.  Routing information is distributed
                    224: to the gateway and if no routing information is
                    225: received for a period of the time, the associated
                    226: route is deleted.
                    227: Gateways marked
                    228: .I external
                    229: are also passive, but are not placed in the kernel
                    230: routing table nor are they included in routing updates.
                    231: The function of external entries is to inform
                    232: .I routed
                    233: that another routing process
                    234: will install such a route, and that alternate routes to that destination
                    235: should not be installed.
                    236: Such entries are only required when both routers may learn of routes
                    237: to the same destination.
                    238: .PP
                    239: The 
                    240: .I /etc/gateways
                    241: is comprised of a series of lines, each in
                    242: the following format:
                    243: .PP
                    244: .nf
                    245: < \fBnet\fP | \fBhost\fP > \fIname1\fP \fBgateway\fP \fIname2\fP \fBmetric\fP \fIvalue\fP < \fBpassive\fP | \fBactive\fP | \fBexternal\fP >
                    246: .fi
                    247: .PP
                    248: The 
                    249: .B net
                    250: or
                    251: .B host
                    252: keyword indicates if the route is to a network or specific host.
                    253: .PP
                    254: .I Name1
                    255: is the name of the destination network or host.  This may be a
                    256: symbolic name located in
                    257: .I /etc/networks
                    258: or
                    259: .I /etc/hosts
                    260: (or, if started after
                    261: .IR named (8),
                    262: known to the name server), 
                    263: or an Internet address specified in ``dot'' notation; see
                    264: .IR inet (3).
                    265: .PP
                    266: .I Name2
                    267: is the name or address of the gateway to which messages should
                    268: be forwarded.
                    269: .PP
                    270: .I Value
                    271: is a metric indicating the hop count to the destination host
                    272: or network.
                    273: .PP
                    274: One of the keywords
                    275: .BR passive ,
                    276: .B active
                    277: or
                    278: .B external
                    279: indicates if the gateway should be treated as 
                    280: .I passive
                    281: or
                    282: .I active
                    283: (as described above),
                    284: or whether the gateway is
                    285: .I external
                    286: to the scope of the
                    287: .I routed
                    288: protocol.
                    289: .PP
                    290: Internetwork routers that are directly attached to the Arpanet or Milnet
                    291: should use the Exterior Gateway Protocol (EGP) to gather routing information
                    292: rather then using a static routing table of passive gateways.
                    293: EGP is required in order to provide routes for local networks to the rest
                    294: of the Internet system.
                    295: Sites needing assistance with such configurations
                    296: should contact the Computer Systems Research Group at Berkeley.
                    297: .SH FILES
                    298: .DT
                    299: /etc/gateways  for distant gateways
                    300: .SH "SEE ALSO"
                    301: ``Internet Transport Protocols'', XSIS 028112, Xerox System Integration
                    302: Standard.
                    303: .br
                    304: udp(4), icmp(4), XNSrouted(8), htable(8)
                    305: .SH BUGS
                    306: The kernel's routing tables may not correspond to those of
                    307: .I routed
                    308: when redirects change or add routes.
                    309: .I Routed
                    310: should note any redirects received by reading
                    311: the ICMP packets received via a raw socket.
                    312: .PP
                    313: .I Routed
                    314: should incorporate other routing protocols,
                    315: such as Xerox NS
                    316: .RI ( XNSrouted (8))
                    317: and EGP.
                    318: Using separate processes for each requires configuration options
                    319: to avoid redundant or competing routes.
                    320: .PP
                    321: .I Routed
                    322: should listen to intelligent interfaces, such as an IMP,
                    323: to gather more information.
                    324: It does not always detect unidirectional failures in network interfaces
                    325: (e.g., when the output side fails).

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.