Please Whitelist This Site?

I know everyone hates ads. But please understand that I am providing premium content for free that takes hundreds of hours of time to research and write. I don't want to go to a pay-only model like some sites, but when more and more people block ads, I end up working for free. And I have a family to support, just like you. :)

If you like The TCP/IP Guide, please consider the download version. It's priced very economically and you can read all of it in a convenient format without ads.

If you want to use this site for free, I'd be grateful if you could add the site to the whitelist for Adblock. To do so, just open the Adblock menu and select "Disable on". Or go to the Tools menu and select "Adblock Plus Preferences...". Then click "Add Filter..." at the bottom, and add this string: "@@||^$document". Then just click OK.

Thanks for your understanding!

Sincerely, Charles Kozierok
Author and Publisher, The TCP/IP Guide

NOTE: Using software to mass-download the site degrades the server and is prohibited.
If you want to read The TCP/IP Guide offline, please consider licensing it. Thank you.

The Book is Here... and Now On Sale!

The whole site in one document for easy reference!
The TCP/IP Guide

Custom Search

Table Of Contents  The TCP/IP Guide
 9  TCP/IP Application Layer Protocols, Services and Applications (OSI Layers 5, 6 and 7)
      9  TCP/IP Key Applications and Application Protocols
           9  TCP/IP File and Message Transfer Applications and Protocols (FTP, TFTP, Electronic Mail, USENET, HTTP/WWW, Gopher)
                9  Usenet (Network News) and the TCP/IP Network News Transfer Protocol (NNTP)
                     9  TCP/IP Network News Transfer Protocol (NNTP)

Previous Topic/Section
NNTP Commands
Previous Page
Pages in Current Topic/Section
Next Page
NNTP Status Responses and Response Codes
Next Topic/Section

NNTP Command Extensions
(Page 3 of 4)

NNTP Newsreader Extensions

The second group of extensions defined by RFC 2980 are the newsreader extensions, which focus primarily on commands used by newsreader clients in interactions with NNTP servers. These extensions consist of several new commands as well as significant enhancements to one important command that was very limited in its functionality in RFC 977: LIST.

The original LIST command has no parameters and only allows a client to retrieve the entire list of newsgroups a server carries. This may have been sufficient when there were only a few hundred Usenet newsgroups, but there are now tens of thousands. RFC 2980 defines a number of new variations of the LIST command, to allow the client much more flexibility in the types of information the server returns. Table 268 shows the new LIST command variations.

Table 268: NNTP LIST Command Extensions

Command Code





List Active Newsgroups

Newsgroup name or pattern

Provides a list of active newsgroups on the server. This is semantically the same as the original LIST command, but the client may provide a newsgroup name or a pattern to restrict the number of newsgroups returned.

For example, the client can ask for a list of only the newsgroups that contain “football” in them.


List Active Newsgroup Creation Times


Prompts the server to send the client its active.times file, which contains information about when the newsgroups carried by the server were created.


List Distributions


Causes the server to sent the client the contents of the distributions file, which shows what regional distribution strings the server recognizes (for use in the Distribution header of a message).


List Distribution Patterns


Asks the server for its distribution.pats file, which is like the distributions file but uses patterns to summarize distribution information for different newsgroups.


List Newsgroups

Newsgroup name or pattern

Provides a list of newsgroup names and descriptions. This differs from LIST ACTIVE in that only the newsgroup name and description are returned, and not the article numbers for each newsgroup. It is functionally the same as XGTITLE (see Table 269) and is usually employed by a user to locate a newsgroup to be added to his or her subscribed list.


Display Overview Format


Prompts the server to display information about the format of its overview file. See the XOVER command description below for more.


Retrieve Default Subscription List


Asks the server to send the client a default list of subscribed newsgroups. This is used to set up a new user with a suggested list of newsgroups. For example, if an organization has an internal support newsgroup, they could put this group on the default subscription list so all new users learn about it immediately when they first start up their newsreader.

In addition to these changes to the LIST command, many new newsreader-related command extensions are defined, which are described in Table 269.

Table 269: NNTP Newsreader Extensions

Command Code





List Article Numbers In Newsgroup

Newsgroup name

Causes the server to return a list of local article numbers for the current messages in the newsgroup. The server's current article pointer is also set to the first message in the group.


Set Newsreader Mode


Tells the server that the device acting as a client is in fact a client newsreader and not another NNTP server. While technically not required—all commands can be sent by any device acting as client—some servers may be optimized to respond to newsreader-oriented commands if given this command.


Retrieve Newsgroup Descriptions

Newsgroup name or pattern

Used to list the descriptions for a newsgroup or a set of newsgroups matching a particular text pattern. This command is functionally the same as the LIST NEWSGROUP command extension (see Table 268). It is therefore recommended that XGTITLE no longer be used.


Retrieve Article Headers

Header name and optionally, either a message ID or a range of article numbers

Allows a client to ask for only a particular header from a set of messages. If only the header name is provided, the header is returned for all messages in the current group. Otherwise, the header is provided for the selected messages.

This extension provides a newsreader client with a more efficient way of retrieving and displaying important headers in a newsgroup to a user.


Retrieve Index Information

Newsgroup name

Retrieves an index file, used by the newsreader TIN to improve the efficiency of newsgroup perusal. TIN now supports the more common “overview” format, so the XOVER command is preferred to this one.


Retrieve Overview Information

Article number or range of article numbers in a newsgroup

Retrieves the overview for an article or set of articles. Servers supporting this feature maintain a special database for their newsgroups that contains information about current articles in a format that can be used by a variety of newsreaders. Retrieving the overview information allows features like message threading to be performed more quickly than if the client had to retrieve the headers of each message and analyze them manually.


Retrieve Article Headers Matching A Pattern

Header name, pattern, and either a message ID or a range of article numbers

This command is similar to XHDR in that it allows a particular header to be retrieved for a set of messages. The difference is that the client can specify a pattern that must be matched for the header to be retrieved. This allows the client to have the server search for and return certain messages, such as those with a subject line indicating a particular type of discussion, rather than requiring the client to download all the headers and search through them.


Retrieve Filename Information

Message ID

Allows a client to ask for the name of the actual file in which a particular message is stored on the server.


Retrieve Overview Reference Information

Article number or range of article numbers in a newsgroup

Like the XOVER command, but specifically retrieves information in the References header for the indicated articles. This is, of course, the header containing the data needed to create threaded conversations.


Retrieve Threading Information

Optional “DBINIT” parameter

Similar to XINDEX, but retrieves a special threading information file in the format used by the newsreader TRN. Like TIN, TRN now supports the common “overview” format so XOVER is preferred to this command.

The “DBINIT” parameter can be used to check for the existence of a thread database.

Previous Topic/Section
NNTP Commands
Previous Page
Pages in Current Topic/Section
Next Page
NNTP Status Responses and Response Codes
Next Topic/Section

If you find The TCP/IP Guide useful, please consider making a small Paypal donation to help the site, using one of the buttons below. You can also donate a custom amount using the far right button (not less than $1 please, or PayPal gets most/all of your money!) In lieu of a larger donation, you may wish to consider purchasing a download license of The TCP/IP Guide. Thanks for your support!
Donate $2
Donate $5
Donate $10
Donate $20
Donate $30
Donate: $

Home - Table Of Contents - Contact Us

The TCP/IP Guide (
Version 3.0 - Version Date: September 20, 2005

Copyright 2001-2005 Charles M. Kozierok. All Rights Reserved.
Not responsible for any loss resulting from the use of this site.