⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc976.txt

📁 RFC 的详细文档!
💻 TXT
📖 第 1 页 / 共 2 页
字号:

RFC 976                                                    February 1986
UUCP Mail Interchange Format Standard


             and bang paths

                  rmail host1!host2!user

             but we assume nothing more about the host.  If we have
             no information about a host, we can treat it as class 1
             with no problems, since we make no assumptions about
             how it will handle hybrid addresses.

   Class 2   Old style UUCP ! routing, and 4.2BSD style domain
             parsing.  We assume the capabilities of class 1, plus
             the ability to understand

                  rmail user@domain

             if the "domain" is one outside the UUCP zone which
             the host knows about.  Class 2 hosts do not necessarily
             understand domain!user or have routers.  Hosts in non-

             UUCP RFC-920 domains are considered class 2, even though
             they may not understand host!user.

   Class 3   All class 1 and 2 features are present.  In addition,
             class 3 hosts must be able to route UUCP mail for hosts
             that are not immediately adjacent and also understand
             the syntax

                  rmail domain!user

             as described above.  All gateways into UUCP must be
             class 3.

   This document describes what class 3 hosts must be able to process.
   Classes 1 and 2 already exist, and will continue to exist for a long
   time, but are viewed as "older systems" that may eventually be
   upgraded to class 3 status.

3.  Algorithm

   The algorithm for delivering a message to an address "user@domain"
   over UUCP links can be summarized as follows:

      a.  If the address is actually of the form @domain1:user@domain2,
          the "domain" used for the remainder should be "domain1"
          instead of "domain2", and the bang form reads
          domain1!domain2!user.



Horton                                                          [Page 7]



RFC 976                                                    February 1986
UUCP Mail Interchange Format Standard


      b.  Determine d: the most specific part of "domain" that is
          recognized locally.  This part will be a suffix of "domain".
          This can be done by scanning through a table with entries that
          go from specific to general, comparing entries with "domain"
          to see if the entries are at the tail of "domain".  For
          example, with the address "mark@osgd.cb.att.com", if the local
          host recognizes "uucp" and "att.com", d would be "att.com".
          The final entry in the table will be the null string, matching
          any completely unrecognized domain.

      c.  Look in the found table entry for g: the name of the
          "gateway", and for r: a UUCP !-style route to reach g.  G is
          not necessarily directly connected to the local host, but
          should be viewed as a gateway into the d domain.  (The values
          of g and r for a given d may be different on different hosts,
          although g will often be the same.)

      d.  Look at the beginning of r to find the "next hop" host n. N
          will always be directly connected to the local host.

      e.  Determine, if possible, the class of g and n.

      f.  Create an appropriate destination string s to be interpreted
          by n.  (See below.)

      g.  Pass the message off to n with destination information s.

      In an environment with other types of networks that do not use
      UUCP !  parsing, the table will probably contain additional
      information, such as which type of link to use.  The path
      information may be replaced in other environments by information
      specific to the network.

      The first entries in the table mentioned in part (b) are normally
      very specific, and allow well known routes to be constructed
      directly instead of routing through the domain tree.  The domain
      tree should be reserved for cases where no better information is
      available, or where traffic is very light, or where the default
      route is the best available.  If a better route is available, that
      information can be put in the table.  If a host has any
      significant amount of traffic sent to a second host, it is
      normally expected that the two hosts will set up a direct UUCP
      link and make an entry in their tables to send mail directly, even
      if they are in separate domains.  Routing tables should be
      constructed to try to keep paths short and inexpensive for as much
      traffic as possible.



Horton                                                          [Page 8]



RFC 976                                                    February 1986
UUCP Mail Interchange Format Standard


      Here are some hints for the construction of the destination string
      n (step f above.) The "envelope recipient" information (the
      argument(s) to rmail) may be in either domain ! form
      (host.com!user) or domain @ form (user@host.com) as long as the
      sending site is sure the next hop is class 3.  If the next hop is
      not class 3, or the sending site is not sure, the ! form should be
      used, if possible, since it is hard to predict what the next hop
      would do with a hybrid address.

      If the gateway is known to be class 3, domain ! form may be used,
      but if the sending site is not sure, and the entire destination
      string was matched in the lookup (rather than some parent domain),
      the 6 letter ! form should be used: r!user, for example:
      dumbhost!host!user.  If the gateway appears to actually be a
      gateway for a subdomain, e.g. because a parent domain was matched,
      (such as the address user@host.gateway.com, where host.gateway.com
      was not found but gateway.com was) it can be assumed to be at
      class 3.  This allows routes such as
      dumbhost!domain!host.domain.com!user to be used with a reasonable
      degree of safety.  If a direct link exists to the destination
      host, the user@domain syntax or the domain!user syntax may be
      used.

      All hosts conforming to this standard are class 3, and all
      subdomain gateways must be class 3 hosts.

4.  Example

   Suppose host A.D.COM sends mail to host C.D.COM.  Let's suppose that
   the 6 letter names for these hosts are aname and dname, and that the
   intermediate host to be routed through has name bname.

   The user on A types

      mail user@c.d.com

   The user interface creates a file such as

      Date:  9 Jan 1985   8:39 EST
      From: myname@A.D.COM (My Name)
      Subject: sample message
      To: user@c.d.com

      This is a sample message

   and passes it to the transport mechanism with a command such as



Horton                                                          [Page 9]



RFC 976                                                    February 1986
UUCP Mail Interchange Format Standard


      sendmail user@c.d.com < file

   The transport mechanism looks up a route to c.d.com.  It does not
   find c.d.com in its database, so it looks up d.com, and finds that
   the path is bname!dname!%s, and that c.d.com is a class 3 host.
   Plugging in c.d.com!user, it gets the path bname!dname!c.d.com!user.
   (If it had found c.d.com with path bname!cname!%s, it would have
   omitted the domain from the resulting path: bname!cname!user, since
   it is not sure whether the destination host is class 1, 2, or 3.)

   It prepends a From_ line and passes it to uux:

      uux - bname!rmail dname!c.d.com!user < file2

   where file2 contains

      From A.D.COM!user Wed Jan  9 12:43:35 1985 remote from aname Date:
      9 Jan 1985   8:39 EST
      From: myname@A.D.COM (My Name)
      Subject: sample message
      To: user@c.d.com

      This is a sample message

   (Note the blank line at the end of the message - at least one blank
   line is required.) This results in the command

      rmail dname!c.d.com!user

   running on B.  B prepends its own from line and passes the mail
   along:

      uux - dname!rmail c.d.com!user < file3

   where file3 contains

      From nuucp Wed Jan  9 12:43:35 1985 remote from bname >From
      A.D.COM!user Wed Jan  9 11:21:48 1985 remote from aname Date:  9
      Jan 1985   8:39 EST
      From: myname@A.D.COM (My Name)
      Subject: sample message
      To: user@c.d.com

      This is a sample message





Horton                                                         [Page 10]



RFC 976                                                    February 1986
UUCP Mail Interchange Format Standard


   The command

      rmail c.d.com!user

   is run on C, which stacks the From_ lines

      From bname!aname!A.D.COM!user Wed Jan  9 12:43:35 1985 Date:  9
      Jan 1985   8:39 EST
      From: myname@A.D.COM (My Name)
      Subject: sample message
      To: user@c.d.com

      This is a sample message

   and stores the message locally, probably in this same format.

5.  Summary

   Hosts conforming to this standard should accept all of the following
   forms:

      rmail localuser               (no !%@ in user)
      rmail hosta!hostb!user        (no !%@ in user)
      rmail user@domain             (only . in domain)
      rmail domain!user             (at least 1 . in domain)
      rmail domain.!user            (in case domain has no dots)

   The "envelope" portion of the message ("From_" lines) should conform
   to existing conventions, using ! routing.  The "heading" portion of
   the message (the Word: lines such as Date:, From:, To:, and Subject:)
   must conform to RFC-822.  All header addresses must be in the @ form.
   The originating site should ensure that the addresses conform to
   RFC-822, since no requirement is placed on forwarding sites or
   gateways to transform addresses into legal RFC-822 format.  (Such
   forwarding sites and gateways should NOT, however, change a legal
   RFC-822 address such as user@domain into an illegal RFC-822 address
   such as gateway!user@domain, even if forwarding to a class 1 UUCP
   host.)

6.  References

   [1]  Postel, J., "Simple Mail Transfer Protocol", RFC-821,
        USC/Information Sciences Institute, August, 1982.

   [2]  Crocker, D., "Standard for the Format of ARPA Internet Text
        Messages", RFC-822, Department of Electrical Engineering,
        University of Delaware, August, 1982.


Horton                                                         [Page 11]



RFC 976                                                    February 1986
UUCP Mail Interchange Format Standard


   [3]  Postel, J., and J. K. Reynolds, "Domain Requirements", RFC-920,
        USC/Information Sciences Institute, October, 1984.















































Horton                                                         [Page 12]


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -