Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

udp(ADMP)


     ROUTED(ADMN)                       UNIX System V



     Name
          routed - network routing daemon


     Syntax
          /etc/routed [-d] [-g] [-s] [-t] [logfile]


     Description
          routed manages the Internet routing tables using  a  variant
          of  the  Xerox  NS  Routing Information Protocol.  routed is
          invoked by the superuser (usually during init 2).

          In normal operation, routed listens on the udp(ADMP)  socket
          for  the  route  service  (see  services(SFF))  for  routing
          information packets.  If the host is an internetwork router,
          it periodically supplies copies of its routing tables to any
          directly connected hosts and networks.

          When routed is started, it uses  the  SIOCGIFCONF  ioctl  to
          find those directly connected interfaces configured into the
          system and marked ``up''. (The software  loopback  interface
          is  ignored.)   If  multiple  interfaces  are present, it is
          assumed that the host will forward packets between networks.
          Then,  routed  transmits  a request packet on each interface
          (using a broadcast packet if the interface supports it)  and
          enters  a  loop,  listening for request and response packets
          from other hosts.

          When a request packet is received, routed formulates a reply
          based  on the information maintained in its internal tables.
          The response packet  generated  contains  a  list  of  known
          routes,  each marked with a hop count metric. (A count of 16
          or greater is considered infinite.)  The  metric  associated
          with  each  route returned provides a metric relative to the
          sender.

          Response packets received by routed are used to  update  the
          routing  tables  if  one  of  the  following  conditions  is
          satisfied:

          (1)  No routing  table  entry  exists  for  the  destination
               network   or   host,   and  the  metric  indicates  the
               destination is reachable (that is, the hop count is not
               infinite).

          (2)  The source host of the packet is the same as the router
               in  the existing routing table entry.  That is, updated
               information   is   being   received   from   the   very
               internetwork  router  through  which  packets  for  the
               destination are being routed.

          (3)  The existing entry in the routing table  has  not  been
               updated  for  some  time (defined to be 90 seconds) and
               the route is at least as cost effective as the  current
               route.

          (4)  The  new  route  describes  a  shorter  path   to   the
               destination  than  the  one  currently  stored  in  the
               routing tables; the metric of the new route is compared
               against the one stored in the table to decide this.

          When an update is applied, routed records the change in  its
          internal  tables  and updates the kernel-routing table.  The
          change is reflected in the next response packet sent.

          In addition to  processing  incoming  packets,  routed  also
          periodically  checks the routing table entries.  If an entry
          has not been updated for 3 minutes, its  metric  is  set  to
          infinity  and marked for deletion.  Deletions are delayed an
          additional 60 seconds to ensure  that  the  invalidation  is
          propagated throughout the local internet.

          Hosts acting as  internetwork  routers  gratuitously  supply
          their  routing  tables  every  30  seconds  to all directly-
          connected hosts and networks.  The response is sent  to  the
          broadcast address on nets capable of the broadcast function,
          to the destination address on point-to-point links,  and  to
          the  router's  own  address  on  other networks.  The normal
          routing  tables  are  bypassed   when   sending   gratuitous
          responses.   The  reception  of responses on each network is
          used  to  determine  that  the  network  and  interface  are
          functioning  correctly.   If  no  response is received on an
          interface, another route may be chosen to route  around  the
          interface,  or the route may be dropped if no alternative is
          available.

          routed supports several options:

          -d   Enable additional debugging information to  be  logged,
               such as bad packets received.

          -g   This flag is used on internetwork routers  to  offer  a
               route  to  the  default destination.  This is typically
               used on a gateway to the Internet, or on a gateway that
               uses  another  routing  protocol  whose  routes are not
               reported to other local routers.

          -s   Supplying this option forces routed to  supply  routing
               information  whether  it  is  acting as an internetwork
               router or not.  This is the default if multiple network
               interfaces  are present, or if a point-to-point link is
               in use.

          -q   This is the opposite of the -s option.

          -t   If the -t option is  specified,  all  packets  sent  or
               received  are  printed  on  the  standard  output.   In
               addition, routed  will  not  divorce  itself  from  the
               controlling   terminal,  and  so  interrupts  from  the
               keyboard will kill the process.

          Any other argument supplied is interpreted as  the  name  of
          file  in  which routed's actions should be logged.  This log
          contains information about any changes to the routing tables
          and,  if  the  log  is not tracing all packets, a history of
          recent messages sent and received that are  related  to  the
          changed route.

          In  addition  to  the  facilities  described  above,  routed
          supports  the notion of distant passive and active gateways.
          When routed is started up, it reads the  file  /etc/gateways
          to  find  gateways  that  may  not  be  located  using  only
          information from the SIOCGIFCONF ioctl.  Gateways  specified
          in  this  manner  should  be  marked passive if they are not
          expected to exchange  routing  information,  while  gateways
          marked   active   should  be  willing  to  exchange  routing
          information (that is, they  should  have  a  routed  process
          running on the machine).  Passive gateways are maintained in
          the routing tables forever, and information regarding  their
          existence   is   included   in   any   routing   information
          transmitted.   Active  gateways  are  treated  equally  with
          network  interfaces.   Routing information is distributed to
          the gateway and, if no routing information is received for a
          period  of  time, the associated route is deleted.  External
          gateways are also passive, but are not placed in the  kernel
          routing table nor are they included in routing updates.  The
          function of  external  entries  is  to  inform  routed  that
          another  routing process will install such a route, and that
          alternate  routes  to  that  destination   should   not   be
          installed.  Such entries are only required when both routers
          may learn of routes to the same destination.

          The /etc/gateways is comprised of a series of lines, each in
          the following format:

          <net|host> name1 gateway name2
                metric value<passive|active|external>

          The net or host keyword indicates whether the route is to  a
          network or specific host.

          name1 is the name of the destination network or host.   This
          may   be   a  symbolic  name  located  in  /etc/networks  or
          /etc/hosts (or, if started after named(ADMN), known  to  the
          name  server),  or  an Internet address specified in ``dot''
          notation; see hosts(SFF) and inet(ADMP).

          name2 is the  name  or  address  of  the  gateway  to  which
          messages should be forwarded.

          value  is  a  metric  indicating  the  hop  count   to   the
          destination host or network.

          One of the keywords passive, active and  external  indicates
          whether  the  gateway should be treated as passive or active
          (as described above), or the  gateway  is  external  to  the
          scope of the routed protocol.


     Files
          /etc/gateways  for distant gateways


     See Also
          udp(ADMP).


     Notes
          The kernel's ICMP routing tables may not correspond to those
          of routed when ICMP redirects change or add routes.


     (printed 8/17/89)                                  ROUTED(ADMN)

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026