home *** CD-ROM | disk | FTP | other *** search
/ A Beginner's Guide to the Internet / INTERNET.ISO / text / massinfo / maasinfo.nnt < prev    next >
Encoding:
Text File  |  1996-05-06  |  13.3 KB  |  293 lines

  1. MaasInfo.NNTP = Instructions for accessing NetNews Transfer Protocol
  2. servers manually for reading UseNet newsgroups. Version of 1992.Feb.22
  3. Although the information hererin is mostly public domain, this particular
  4. organization of the information is Copyright 1992 by Robert Elton Maas,
  5. all rights reserved. This file is posted as trivial shareware. If it is
  6. worth more than a dollar to you, contact the author to arrange payment by
  7. giving the author some other information of comparable value the author
  8. wants and/or get the file MaasInfo.SQWA which is a listing of Specific
  9. Questions Waiting for Answers which the author has already decided
  10. are acceptable for payment of your trivial-shareware "fee".
  11.  
  12. The author can be contacted by voice telephone: 415-969-2958
  13. Messages shorter than 50 lines: ROBERT.MAAS@F212.N143.Z1.FIDONET.ORG
  14. Longer messages: ...!apple!uuwest!rem or rem@darkside.com
  15.  
  16.  
  17. %% NNTP, ONLINE MANUAL-TELNET ACCESS
  18.  
  19. It is assumed you have an account on an InterNet computer with direct
  20. TCP/IP access, and that said computer has a TELNET user program that lets
  21. you connect to other TCP/IP hosts, and that said TELNET program allows
  22. you to select some port number other than the default TELNET port.
  23.  
  24. NNTP is a protocol described in RFC977 by which a NNTP server program
  25. is accessible to a NNTP client program. The server program has an
  26. archive of lots of articles from lots of UseNet newsgroups, and the
  27. client program wants to obtain copies of some of those articles on
  28. behalf of one or more users. But the commands that the client program
  29. sends to the server program are in plain ASCII text and are quite
  30. simple, while the data sent from the server program to the client
  31. program are plain text headers and contents of articles. Consequently
  32. it's possible for a user without the services of any program except
  33. barebones TELNET to pretend to be a client program and connect to the
  34. server program, then to manually issue commands exactly like a client
  35. program would have, then to read the text coming back to decide which
  36. command to issue next.
  37.  
  38. First you need to know how to use TELNET at your host, and how to select
  39. a host and port number. On many systems you simply type TELNET followed
  40. by the name (or internet host number) of the host followed by the number
  41. of the port. (Omit the port number to get the normal TELNET port; but for
  42. NNTP you *must* specify the port number.) If your TELNET program uses a
  43. different syntax, you'll have to ask somebody local to your system.
  44.  
  45. Next you need to know the name or internet host number of some host
  46. providing NNTP service. At present I know of only one that is available
  47. for general InterNet usage:
  48. sol.ctr.columbia.edu (128.59.64.40)
  49. I know about two others available to the Stanford community (ask me
  50. privately if you are on a Stanford host and want the info). If you know
  51. of any other NNTP servers, or how to get a complete list of them,
  52. please send that info to the author.
  53.  
  54. There is no index of NNTP servers, so finding a NNTP server for you may
  55. be difficult. One suggestion is to look at the headers of messages
  56. posted on Internet mailing lists that are linked from Usenet newsgroups
  57. (or browse sol.ctr.columbia.edu via NNTP if it is still available).
  58. Some of these headers will show the NNTP originating site, and you can
  59. look for one near you and then check to see if that host has an NNTP
  60. server and if it will talk to you, and if not you can contact the
  61. person who posted the article or the Postmaster at that host to check
  62. if either of them know about other UseNet hosts in the vicinity that
  63. might provide NNTP service to your host.
  64.  
  65. Next you need to know the port number for NNTP service. It's 119. Thus to
  66. connect to NNTP service at sol.ctr.columbia.edu, you say:
  67. TELNET sol.ctr.columbia.edu 119
  68. or if your host doesn't know that name, you say:
  69. TELNET 128.59.64.40 119
  70. or whatever the corresponding syntax is for the TELNET program you use.
  71.  
  72. Once you get connected, you need to select a newsgroup and then request
  73. headers and/or bodies of messages. You may also want to have the server
  74. print out a complete list of all newsgroups it knows about, but that is
  75. more than 30,000 characters of text so you'd better be saving a
  76. transcript to a file so you don't have to do it a second time.
  77.  
  78. To select a newsgroup, select a position (article number) within that
  79. newsgroup, and look at headers and bodies of articles, for each such
  80. action you issue a one-line command and then wait for the server to
  81. send you all the text that results. The command lines always start with
  82. a keyword (command name), whereas the replies always start with a
  83. numeric code then a text message, then may have additional lines of
  84. text ending with a line containing a single period. You may ignore the
  85. numeric reply codes unless you want to understand the guts of the
  86. protocol or write an automated browser.
  87.  
  88. Below are the most useful commands for browsing UseNet articles:
  89.  
  90. GROUP <NameOfGroup> -- Select a particular newsgroup, print out the Low
  91. and High article numbers and an approximate count of articles, and set
  92. the pointer to the first article of the group. If you now issue another
  93. command (HEAD BODY or ARTICLE) without numeric argument, it uses the
  94. first article. -- The very first command you issue may be rejected due to
  95. a bug somewhere in the interface. If it says 500 Command unrecognized,
  96. try exactly the same command a second time.
  97.  
  98. HEAD <NumberOfArticle> -- Move the pointer to the article (in the
  99. previously-selected newsgroup) which has that number, and print out just
  100. the header.
  101.  
  102. NEXT -- Move the pointer forward to the next more-recent article (in the
  103. previously-selected newsgroup).
  104.  
  105. LAST -- Move the pointer backward to the next less-recent article (in the
  106. previously-selected newsgroup). (Warning, LAST really means PREVious, so
  107. don't get confused; don't blame me, I didn't write the command language.)
  108.  
  109. HEAD -- Without moving the pointer, print the header of the
  110. currently-selected article.
  111.  
  112. BODY -- Without moving the pointer, print the body of the
  113. currently-selected article.
  114.  
  115. By doing HEAD <NumberOfOldestArticle> then alternating NEXT and HEAD, you
  116. can browse headers from oldest forward. Alternately by doing HEAD
  117. <NumberOfNewestArticle> then alternating LAST and HEAD, you can browse
  118. headers from newest backward. Either way, when you see an article you
  119. want to see the body of, simply say BODY.
  120.  
  121. ARTICLE -- Without moving the pointer, print the whole (header & body) of
  122. the currently-selected article. This may be useful if you're downloading
  123. a whole set of articles without any prior selection. You alternate LAST
  124. and ARTICLE, or NEXT and ARTICLE, to download articles in sequence
  125. forward or backward in time.
  126.  
  127. LIST -- List *all* newsgroups the server knows about. As I said before,
  128. this generates more than 30,000 characters of output, so beware! You will
  129. want to do this only once in a very long while, and collect all the data
  130. to a file which you then search locally from time to time.
  131.  
  132. HELP -- Print a list of available commands. Beware, don't use commands
  133. like IHAVE or SLAVE that are supposed to be used for NNTP daemon programs
  134. relaying articles, or POST that are supposed to be used for client-programs
  135. posting new articles, since they are too dangerous to be used manually.
  136. When in doubt, consult the RFC977 and avoiding anything that modifies the
  137. state of the server in any way other than selecting your newsgroup and
  138. article pointer. Probably you won't need any commands except the ones I
  139. listed above.
  140.  
  141. XHDR <HeaderFieldName> <ArticleRange> -- This is not a standard
  142. command. See if it is listed in HELP before using it. This allows you
  143. to quickly get a list of a single field from the headers of a whole
  144. bunch of consecutive articles by issuing a single command. The most
  145. common usage is to get a list of Subject: fields. The ArticleRange can
  146. be either two numbers separated by a hyphen, or a single number
  147. followed by hyphen, resulting in all articles between the two numbers
  148. (inclusively), or all articles from that number forward to the most
  149. recent, respectively.
  150.  
  151.  
  152. Sample session, with comments. (Each line beginning with ;; is a comment.)
  153.  
  154. TELNET 128.104.230.12 119
  155. ;;That was the command to connect to the NNTP server.
  156. ;;Next is the junk that is typed out during connection...
  157. VM TCP/IP Telnet R1.2.1
  158. Connecting to 128.104.230.12, port 119
  159. Using Line Mode...
  160. Notes on using Telnet when in Line Mode:
  161. - To hide Password, Hit PF3 or PF15
  162. - To enter Telnet Command, Hit PF4-12, or PF16-24
  163.                                                  MORE...   SUWATSON
  164. 201 uakari.primate.wisc.edu NNTP server version 1.5.3 (18 Sep 88) ready
  165.  at Wed Jun 12 21:56:34 1991 (no posting).
  166. group comp.lang.lisp
  167. 500 Command unrecognized.
  168. ;;Like I said, some bug causes it to reject the first command.
  169. group comp.lang.lisp
  170. 211 29 3294 3323 comp.lang.lisp
  171. ;;That time it worked. I forget what 211 and 29 mean, but 3294 is the
  172. ;; number of the oldest article and 3323 is the number of the newest
  173. ;; article.
  174. ;;Let's start from the most recent and work backwards in time:
  175. head 3323
  176. ;;That was the command, below is the resultant output...
  177. 221 3323 <1991Jun13.003122.19863@cs.cmu.edu> Article retrieved; head follows.
  178. Path: uakari.primate.wisc.edu!zaphod.mps.ohio-state.edu!cis.ohio-state.edu!sei.c
  179. mu.edu!fs7.ece.cmu.edu!o.gp.cs.cmu.edu!ram
  180. From: ram+@cs.cmu.edu (Rob MacLachlan)
  181. Newsgroups: comp.lang.lisp
  182. Subject: Re: isqrt
  183. Message-ID: <1991Jun13.003122.19863@cs.cmu.edu>
  184. Date: 13 Jun 91 00:31:22 GMT
  185. References: <676362388.61@egsgate.FidoNet.Org>
  186. Sender: netnews@cs.cmu.edu (USENET News Group Software)
  187. Organization: School of Computer Science, Carnegie Mellon
  188. Lines: 77
  189. .
  190. ;;The period on a line by itself signals that output is done.
  191. ;;Now I back up to the previous article (remember the command to go to
  192. ;; the PREVious article is LAST, not PREV), and print its header...
  193. last
  194. 223 3322 <42376@ucbvax.BERKELEY.EDU> Article retrieved; request text separately.
  195. head
  196. 221 3322 <42376@ucbvax.BERKELEY.EDU> Article retrieved; head follows.
  197. Path: uakari.primate.wisc.edu!zaphod.mps.ohio-state.edu!cis.ohio-state.edu!ucbva
  198. x!singsing.berkeley.edu!parr
  199. From: parr@singsing.berkeley.edu (Ron Parr)
  200. Newsgroups: comp.lang.lisp
  201. Subject: defsystem
  202. Message-ID: <42376@ucbvax.BERKELEY.EDU>
  203. Date: 12 Jun 91 21:38:23 GMT
  204. Sender: nobody@ucbvax.BERKELEY.EDU
  205. Distribution: na
  206. Organization: University of California at Berkeley
  207. Lines: 12
  208. Originator: parr@singsing.berkeley.edu
  209. .
  210. ;;All done for this demo, so quit the server...
  211. quit
  212. 205 uakari.primate.wisc.edu closing connection.  Goodbye.
  213. Session ended. <ENTER> to return to CMS.
  214. Telnet terminated -- Connection closed
  215. Ready; T=0.17/0.39 20:06:00
  216.  
  217.  
  218. Another sample session, using the XHDR command, with comments.
  219. TELNET sol.ctr.columbia.edu 119
  220. ;; TELNET-startup printouts omitted here
  221. 200 sol NNTP server version 1.5.11 (10 February 1991) ready at Sat Feb 22 05:33:
  222. 53 1992 (posting ok).
  223. 500 Command unrecognized.
  224. ;; The first command from VM/CMS always gets trashed for unknown reason.
  225. group misc.jobs.offered
  226. 211 294 13094 13393 misc.jobs.offered
  227. xhdr subject 13380-13393
  228. 221 subject fields follow
  229. 13380 Programmer With Paradox Experience Needed In South Fl..
  230. 13381 QA/Documentation position available in Berkeley, CA
  231. 13382 OSI Network Mgt. SW Engr./Florida/RECRUITER
  232. 13383 Night Tech Support, Sys admin @ Berkeley, Ca 94705
  233. 13384 Re: Replying to misc.jobs.offered
  234. 13385 S/W Development Engineer, Interconnectivity Networking
  235. 13386 Mechanical Engineer with Aerospace concentration
  236. 13387 MS/PhD QUANT FOR WALL ST INVESTMENT ANALYTICS/MODELLING
  237. 13388 Research Associate
  238. 13389 ==> EXCITING S/W Positions in REAL-TIME EMBEDDED ENV., SJ-CA <=
  239. 13390 Univel, SW & Product Eng/Mgmt positions, San Jose, CA
  240. 13391 SUN/UNIX SITE INTEGRATER NEEDED IN NEW YORK CITY (RECRUITER)
  241. 13392 VMS & DOS C Programmers needed in New York City (RECRUITER)
  242. 13393 Debugger Engineer/Apple Computer/Cupertino
  243. .
  244. head 13384
  245. 221 13384 <54713@cup.portal.com> Article retrieved; head follows.
  246. Path: sol.ctr.columbia.edu!zaphod.mps.ohio-state.edu!usc!apple!portal!cup.portal
  247. .com!GB
  248. From: GB@cup.portal.com (Greg A Buechler)
  249. Newsgroups: misc.jobs.offered
  250. Subject: Re: Replying to misc.jobs.offered
  251. Message-ID: <54713@cup.portal.com>
  252. Date: 19 Feb 92 20:26:14 GMT
  253. References: <10185@gazette.bcm.tmc.edu>
  254.   <1992Feb19.164952.4283@ncsa.uiuc.edu>
  255. Distribution: usa
  256. Organization: The Portal System (TM)
  257. Lines: 18
  258. .
  259. body
  260. 222 13384 <54713@cup.portal.com> Article retrieved; body follows.
  261. I'd like to add my $0.02 worth.  The subject line does not have the quantity
  262. of real estate to include all the information needed to convey to
  263. prospective candidates.  The standard info of WHAT (unix sw dev, etc) WHERE
  264. ;; (Rest of body omitted here)
  265. .
  266. quit
  267. 205 sol closing connection.  Goodbye.
  268. Session ended. <ENTER> to return to CMS.
  269.  
  270.  
  271. %% NNTP-RELATED, NEWSGROUP POSTING VIA EMAIL
  272.  
  273. It used to be possible to post from InterNet to UseNet newsgroups by
  274. sending e-mail to ucbvax.berkeley.edu with all the periods in the
  275. newsgroup name changed to hyphens. This service has been withdrawn.
  276. There is no longer any known way to post to Usenet newsgroups from
  277. Internet hosts except by connecting directly to an NNTP server, and
  278. this is too dangerous to do manually. Accordingly about the only way,
  279. short of installing Usenet software or getting an account on another
  280. machine, is to e-mail somebody on Usenet asking if they would post for
  281. you.
  282.  
  283.  
  284. %% NNTP, Related topics:
  285.  
  286. MaasInfo.TopIndex -- This "Index of Indexes" tells how to get the index
  287. of RFCs and a few specific RFCs, and where you can find at least two
  288. indexes of public-access UseNet hosts with NetNews.
  289.  
  290.  
  291. %% NNTP End.
  292.  
  293.