Usenet headers

From Usenet Big-8 Management Board

Conflicting Advice from the RFCs

RFC 561

The earliest reference in the RFCs seems to be 561 (1973), which uses "header" as a collective term for a series of "headeritems":

        Formal Syntax:                                               

           <mailtext>    ::= <header> <crlf> <message>               
           <header>      ::= <headeritem> ! <headeritem> <header>    
           <headeritem>  ::= <item> <crlf>                           
           <item>        ::= <authoritem> ! <dateitem> !
                             <subjectitem> ! <miscitem>              

RFC 733

By 733 (1977), though, "header field" or "headeritem" was frequently shortened to just "header."

A message consists of headers and, optionally,  a  body  (i.e.  a
series of text lines).  The text part is just a sequence of lines
containing ASCII characters; it is separated from the headers  by
a null line (i.e., a line with nothing preceding the CRLF).

RFC 2076

2076, "Common Internet Message Headers," makes a distinction between the "heading" and "headers" in the heading as follows:

  • heading: Formatted text at the top of a message, ended by a blank line
  • header = heading field: One field in the heading, beginning with a field name, colon, and followed by the field value(s)

RFC 5322

RFC 5322, "Internet Message Format" calls the group of "header fields" the "header section":

"A message consists of header fields (collectively called 'the header section of the message') followed, optionally, by a body. The header section is a sequence of lines of characters with special syntax as defined in this specification. The body is simply a sequence of characters that follows the header section and is separated from the header section by an empty line (i.e., a line with nothing preceding the CRLF).

"Note: Common parlance and earlier versions of this specification use the term 'header' to either refer to the entire header section or to refer to an individual header field. To avoid ambiguity, this document does not use the terms 'header' or 'headers' in isolation, but instead always uses 'header field' to refer to the individual field and 'header section' to refer to the entire collection."

Definition of 'header' on this wiki

As a general rule, unless otherwise indicated, you may understand 'header' to mean "an individual header field within the header section of an e-mail or Usenet post."

Handy Usenet Headers

Headers Needed for RFDs

Examples of headers ("heading fields" or "header fields") with which proponents should be or become familiar:

  • Newsgroups: The newsgroups to which the post will circulate.
  • Subject: The subject of the post.
  • From: The Usenet identity of the person sending the post.
  • Followup-To: The newsgroup to which replies to the post will be sent (unless overridden by a respondent).
  • Archive-Name: The name of the newsgroup affected by an RFD or the name of a proposal about several newsgroups.
  • Message-ID: A unique alpha-numeric identifier for each post made to Usenet.

Reading Message Headers

The art of interpreting headers goes beyond the scope of this note. Usenet posts can pick up (or lose) a lot of headers in transit.

Path: border1.nntp.dca.giganews.com!nntp.giganews.com!news.alt.net!news.kjsl.com!usenet.stanford.edu!panix!nan.panix.com!robomod!not-for-mail
From: Big-8 Management Board <board@big-8.org>
Newsgroups: news.announce.newgroups,news.groups.proposals,comp.archives.msdos.announce
Subject: RFD: comp.archives.msdos.announce moderated (remove) LAST CALL FOR COMMENTS
Followup-To: news.groups.proposals
Date: Sun, 13 Dec 2009 18:25:50 EST
Organization: albasani.net
Lines: 84
Approved: Moderator of news.announce.newgroups <newgroups-request@isc.org>, NGP Approval Key <ngp-approval-key@ngp.big-8.org>
Message-ID: <hg3q9m$2p2$1@news.albasani.net>
References: <hdp6jv$esr$1@news.albasani.net> <hesgcp$mib$1@news.albasani.net>
NNTP-Posting-Host: panix6.panix.com
X-Trace: reader1.panix.com 1260746750 22049 166.84.1.6 (13 Dec 2009 23:25:50 GMT)
X-Complaints-To: abuse@panix.com
NNTP-Posting-Date: Sun, 13 Dec 2009 23:25:50 +0000 (UTC)
X-NAN-Policy: http:''www.panix.com/~nan/
X-NAN-Info-1: Send submissions to             news-announce-newgroups@panix.com
X-NAN-Info-2: Send technical complaints to    news-announce-newgroups-request@panix.com
X-NAN-Info-3: Send complaints about policy to news-announce-newgroups-request@panix.com
X-NAN-Info-4: GnuPG 1.4.5 Public Key at http:''www.panix.com/~nan/gpg.html
X-Comment-1: The moderators do not necessarily agree or disagree with this article.
X-Comment-2: Moderators do not verify the accuracy of posted information.
X-Comment-3: Acceptance does not convey approval of any external references.
X-Robomod: STUMP, ichudov@algebra.com (Igor Chudov), C++/Perl/Unix Consulting
X-Moderation-1: Hassle-Free commercial hosting of moderation sites available
X-Moderation-2: See http:''www.algebra.com/~ichudov/stump
Archive-Name: comp.archives.msdos.announce
Old-X-Complaints-To: abuse@albasani.net
Old-NNTP-Posting-Date: Sun, 13 Dec 2009 22:36:38 +0000 (UTC)
X-User-ID: lZ3cCK3nWs3aeInKi4nsYyYoZASfbUKrTZF+KDqix5XRNV0g1VHMEVPwXtRQuoiohjyRJDRSB6IgZqrwYUM/jw======
Cancel-Lock: sha1:Zn3Ra8elGSMyKlv24lMXUV0j4p0=
X-NNTP-Posting-Host: YufzFyzK+7FF/JKXRsyyQFKYeOIVNXIU2BWA/PKAtWg=
X-Auth: PGPMoose V2.0 PGP news.announce.newgroups
 iEYEARECAAYFAksld/4ACgkQXMotZRinPKm1ZACeLHA5R8A/uBFel3pm6VUJ3o9I
 k38AoJXldxnZHDk+9sjzW5vX7m8nYYFy
 =5KfA
X-Auth: PGPMoose V2.0 PGP news.groups.proposals
 iEYEARECAAYFAksld/4ACgkQrPkQbuk9hdu1ZACgpXYtAuhXYtjNmVlMzjnaFYvR
 KwoAoIEIAogIaIqKU05eytd9xoiXrY7d
 =Uhq6
Bytes: 5284
Xref: number.nntp.dca.giganews.com comp.archives.msdos.announce:10840 news.groups.proposals:5542 news.announce.newgroups:6454

How to Set a Header

There is no universal method for creating a Usenet header. Each newsreader takes its own approach.

How to View Headers

Each newsreader has its own method for displaying message headers.

This tutorial shows two methods for finding the Message-ID of Usenet Posts.