From dartvax!bu.edu!snorkelwacker.mit.edu!bloom-picayune.mit.edu!athena.mit.edu!jik Mon May 6 17:45:32 EDT 1991 Article: 4186 of news.newusers.questions Xref: dartvax news.newusers.questions:4186 alt.bbs.internet:462 Path: dartvax!bu.edu!snorkelwacker.mit.edu!bloom-picayune.mit.edu!athena.mit.edu!jik From: jik@athena.mit.edu (Jonathan I. Kamens) Newsgroups: cs.howto,cs.support.howto,news.newusers.questions,pdx.general,or.general,pnw.general,alt.bbs.internet Subject: Re: Email routing & addressing special characters Message-ID: <1991May1.205431.717@athena.mit.edu> Date: 1 May 91 20:54:31 GMT References: <1991May01.163003.9662@lynx.CS.ORST.EDU> Sender: news@athena.mit.edu (News system) Distribution: na Organization: Massachusetts Institute of Technology Lines: 239 In article <1991May01.163003.9662@lynx.CS.ORST.EDU>, hollowr@jacobs.cs.orst.edu (R. Holloway) writes: |> I've recently had some difficulty sending email to "gatech.edu" - specifically |> a MX record named "prism." My mailer (jacobs@cs.orst.edu) doesn't seem able |> to handle these records. (Whatever a MX record is?) Appended to the end of this message is an article posted previously by me in thsi newsgroup, explaining how Internet mail works, including both direct Internet SMTP delivery and MX delivery. It should clear up your confusion to some extent. |> My understanding of the system named Internet, et. al. is that each specific |> servers are individual computers linked via various connections called hosts |> (e.g. gatech.edu, orst.edu, mit.edu, etc.). These hosts are linked by sytems |> (e.g. UUCP, Internet, bix, etc.). These systems are linked by gateways & the |> system seems to work pretty well. (Please correct this statement if my |> understanding of these linkages is wrong.) Woa, there! In the first paragraph of your message, you were discussing only the Internet. Now, you're talking about the entire E-mail universe. Hold on a minute while I catch up :-). First of all, the first sentence in this paragraph makes little sense. "each specific servers are individual computers linked via various connections called hosts?" Let's try to keep our singular and plural a bit more straight, shall we? I wouldn't complain about it if it weren't for the fact that the grammar errors make it quite difficult for me to understand what you're asking. The terms "host", "machine" and "site" are generally synonymous when it comes to mail. All of them are generally used to mean a particular endpoint for delivery of mail messages. The term "server" is used similarly, although it can also be used to mean a machine which serves as the repository for mail for several sites, or as a machine which responds automatically to mailed requests (for example, my workstation is a mail server that archives usenet FAQ postings). All of these terms have different implications when used outside the realm of mail, but I'm omitting discussion of those from this message because it would make the message very long, very quickly. Now, as for the examples you mentioned.... "Gatech.edu" and "Mit.edu" are both hosts, which means that those names refer to actual machines on the Internet. However, they are also Internet domains (which are discussed in the end of this message). "Orst.edu" is *not* a host, it's just a domain; however, it has an MX record registered, so that mail sent to orst.edu will get delivered to ucs.orst.edu. If your site can't deal with MX addresses, that means you're running and old version of sendmail, and your site's software needs to be updated. Moving on.... the "Internet" is a real-time network which uses the TCP/IP protocol. There are thousands of hosts on the Internet, all of whom can talk to each other as if they were connected directly, by sending packets over the Internet which are routed appropriately to get to their destinations; the routing in effect is used to form "virtual connections" between hosts. "UUCP", on the other hand, is a network (also of thousands of machines, probably) made up of machines that make point-to-point connections to other machines, using modems and the UUCP protocol. UUCP is not real-time, and the only way to get from one UUCP machine to another UUCP machine is to figure out a path through UUCP hosts that will get you from the source to the destination. On the Internet, routing is pretty much invisible, while on UUCP, it is much more visible (although the UUCP mapping project attempts to make it less visible by keeping up-to-date maps that can be used to route one UUCP host to another). "Bix" is a different animal -- it's not really a network, it's an information service, such as the CompuServe or Prodigy. You can send mail from outside of Bix into it, if the person to whom you're trying to send mail has subscribed to the service that allows this to take place. Whiel both the Internet and UUCP are based on a routing system for message delivery, Bix is accessible only through one gateway (or a small number of gateways); that is, all of the traffic to Bix from outside of it has to travel through one or a few machines. |> However, to send mail between these systems, requires various statements or |> special characters be present to facilitate travel through different gate- |> ways, hosts & linkages. |> |> I've seen "!", "%" & "*" present in mail addreses, but have really no idea |> what they mean. You're confusing the transmission methods with the instructions telling the computer how to to the transmission. Sending a mail message from one Internet site to another Internet site is always done the same way; however, there are several different ways in which yoj might format the address in your mail to get it to that site. Sending a mail message from one UUCP site to another is always done the same basic way (although the routing may be different), but different sites may use different address formats to tell the system how to do that transmission. The '!' character has traditionally been used in UUCP addresses. A "bang path" ("bang" is one name for '!') is the traditional way to express a UUCP address. For example: uunet!rutgers!mit-athena!jik This bang path tells whatever site it is used on to transmit the mail to the UUCP host "uunet". UUnet will then remove its name from the front of the path, and transmit the message to "rutgers", which will send it to "mit-athena", where it will be delivered to me. The '%' character is generally used in Internet style addresses, rather than theh UUCP style described above. It is used when you want to tell your mailer to deliver a message to one host and then tell that host to deliver it to another. In function, it is similar to the '!' in a bang path, but the syntax of using it is different. For example: jik%athena.mit.edu@rutgers.edu This would send the mail to rutgers.edu, which would then try to deliver it to jik@athena.mit.edu. Note that this example is cooked up, and in real life I probably wouldn't need to do this kind of routing. I don't know what you're thinking of when you mention the '*' character. |> Now my question: |> |> Is there an authorative reference for "syntax" of addresses or guide for |> sending email to various locations? Several recommendations: 1. Frey, Donnalyn and Rick Adams, !%@:: A Directory of Electronic Mail Addressing and Networks, Second Edition, 284 pgs., O'Reilly and Associates, Sebastopol, CA 1990. 2. Quarterman, John, "The Matrix". 3. The Internet FYIs. Information about getting copies of them are included at the end of this message, after my included posting. There are also the INternet RFCs, but they're somewhat more complex and probably not a good place to start. 4. The "Inter-Network Mail Guide" posted in comp.mail.misc. If it has expired, you can get a copy using the instructions which are (once again) appended to the end of this message. -- Jonathan Kamens USnail: MIT Project Athena 11 Ashford Terrace jik@Athena.MIT.EDU Allston, MA 02134 Office: 617-253-8085 Home: 617-782-0710 -- Article: 4268 of news.newusers.questions Newsgroups: news.newusers.questions Path: bloom-picayune.mit.edu!athena.mit.edu!jik From: jik@athena.mit.edu (Jonathan I. Kamens) Subject: MX addresses, host tables, nameservers (was Re: clari groups) Message-ID: <1991Feb26.172522.2087@athena.mit.edu> Keywords: clarinet Sender: news@athena.mit.edu (News system) Organization: Massachusetts Institute of Technology References: <1991Feb20.172426.13473@athena.mit.edu> <7o4VX3w162w@ruth.UUCP> Date: Tue, 26 Feb 91 17:25:22 GMT Lines: 55 In article <7o4VX3w162w@ruth.UUCP>, rat@ruth.UUCP (David Douthitt) writes: |> What do you mean by "host tables" and "nameserver lookups"? And how do |> "MX addresses" figure into all this? My, my, you are a curious one, aren't you :-). When the Internet (if you don't know what the Internet is, then read "The Cuckoo's Egg" by Cliff Stoll -- it's a good book and has a good description of the birth of the Internet) was young, each host on it had a big file which listed the names of all the other hosts (or, at least, the hosts which which the host was interested in communicating regularly) and their Internet addresses, the four-byte numerical addresses that told network routers exactly how to contact them. As the Internet grew, however, the host files ("host tables") on each machine grew as well, and a nebulous point was reached where people started to realize that maintaining all of these host tables was silly. So, they devised the nameserver scheme. To explain how it works, I'll explain what would happen if a random Internet host wanted to contact my workstation, pit-manager.mit.edu. I'm simplifying a few steps and not indicating where things may go wrong, but I think you'll get the general idea. 1) The host would ask one of the *root nameservers* of the Internet, "Do you know of a domain named "edu"? The root nameservers are known to every machine on the Internet that knows how to do nameservice; the whole point of the way nameservers work is that the root nameservers are the *only* machines whose addresses have to be known to every machine on the Internet. There are more than one root nameserver for reliability, not because any one of them provides information that the others don't. 2) The root nameserver will return the addresses of the nameservers for the "edu" domains. 3) The host will ask the "edu" nameservers for information about the "mit" subdomain, and will get back addresses for the "mit.edu" nameservers. 4) The host will ask the "mit.edu" nameservers for information about "pit-manager", and get back my workstation's address. Now, as for "MX addresses." Everything works the same for an MX address up to the last step. But, at the last step, instead of asking for an address, the host asks for an MX record, and if one exists, it is returned. Note that if the host asks for a host record instead of an MX record, it's not going to get anything back. That's why telnet can't connect to an MX-only host -- there's no IP address available in the namespace for it, only an MX address -- but the newer versions of sendmail can send mail to an MX-only host -- they're smart enough to ask the nameservers for an MX record in addition to just asking for a host record. -- Jonathan Kamens USnail: MIT Project Athena 11 Ashford Terrace jik@Athena.MIT.EDU Allston, MA 02134 Office: 617-253-8085 Home: 617-782-0710 -- Paper copies of all FYIs are available from the NIC, either individually or as part of an RFC subscription service (for more information contact NIC@NIC.DDN.MIL). Online copies are available via FTP or Kermit from NIC.DDN.MIL as FYI:FYI##.TXT or FYI:FYI##.PS (## is the FYI number without leading zeroes). Additionally, FYIs may be requested through electronic mail from the automated NIC mail server by sending a message to SERVICE@NIC.DDN.MIL with a subject line of "FYI ##" for text versions or a subject line of "FYI ##.PS" for PostScript versions. To obtain the FYI index, the subject line of your message should read "FYI index". -- Subject: Inter-Network Mail Guide Newsgroups: comp.mail.misc Available via anonymous ftp from pit-manager.mit.edu (18.72.1.58) in the file /pub/usenet/comp.mail.misc/Inter-Network_Mail_Guide Available from mail-server@pit-manager.mit.edu by sending a message containing send usenet/comp.mail.misc/Inter-Network_Mail_Guide Send a message containing "help" to get general information about the mail server.