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!

Enjoy The TCP/IP Guide? Get the complete PDF!
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 Client-Server Communication Process: News Posting and Access
Previous Page
Pages in Current Topic/Section
Next Page
NNTP Command Extensions
Next Topic/Section

NNTP Commands
(Page 2 of 2)

Base Command Set

The main NNTP specification, RFC 977, describes the base set of commands supported by NNTP clients and servers. They are not broken into categories but rather listed alphabetically, as I have done in Table 266. Additional details on how most of these commands are used can be found in the topics on news article propagation and news posting and access.

Table 266: NNTP Base Commands

Command Code





Retrieve Article

Message ID or server article number.

Tells the server to send the client a particular Usenet article. The article to be retrieved may be specified either using its absolute, universal message ID, or its locally-assigned article number.

When the command is issued with an article number, this causes the server's internal message pointer to be set to the specified article. If the message pointer is already set to a particular article, the ARTICLE command can be issued without an article number and the current message will be retrieved.


Retrieve Article Headers

Message ID or server article number.

Same as the ARTICLE command, but retrieves only the article's headers.


Retrieve Article Body

Message ID or server article number.

Same as the ARTICLE command, but returns only the body of the article.


Retrieve Article Statistics

Server article number

Conceptually the same as the ARTICLE command, but does not return any message text, only the message ID of the article. This command is usually used for the purpose of setting the server's internal message pointer, so STAT is normally invoked only with an article number (and not a message ID).


Select Newsgroup

Newsgroup name

Tells the server the name of the newsgroup that the client wants to access. Assuming the group specified exists, the server returns to the client the numbers of the first and last articles currently in the group, along with an estimate of the number of messages in the group. The server's internal article pointer is also set to the first message in the group.


Get Help Information


Prompts the server to send the client help information, which usually takes the form of a list of valid commands that the server supports.


Offer Article To Server

Message ID

Used by the client in an NNTP session to tell the server that it has a new article that the server may want. The server will check the message ID provided and respond to the client indicating whether or not it wants the client to send the article.


Go To Last Message


Tells the server to set its current article pointer to the last message in the newsgroup.


List Newsgroups


Asks the server to send a list of the newsgroups that it supports, along with the first and last article number in each group. The command as described in RFC 977 is simple, supporting no parameters and causing the full list of newsgroups to be sent to the client. NNTP command extensions significantly expand the syntax of this command.


List New Newsgroups

Date and time, and optional distribution specification

Prompts the server to send a list of new newsgroups created since the date and time specified. The client may also restrict the command to return only new newsgroups within a particular regional distribution.


List New News Articles

Date and time, and optional distribution specification

Requests a list from the server of all new articles that have arrived since a particular date and time. Like the NEWGROUPS command, this may be restricted in distribution. The server responds with a list of message IDs of new articles.


Go To Next Message


Advances the server's current article pointer to the next message in the newsgroup.


Post Article


Tells the server that the client would like to post a new article. The server responds with either a positive or negative acknowledgment. Assuming that posting is allowed, the client then sends the full text of the message to the server, which stores it and begins the process of propagating it to other servers.


End Session


Terminates the NNTP session. To be “polite”, the client should issue this command prior to closing the TCP connection.


Set Slave Status


This command is intended for use in special configurations where one NNTP server acts as a subsidiary to others. It is not often used in practice.

RFC 2980 defines a number of extensions that both add new commands to this set and make changes to one of these commands (LIST). NNTP extensions are described in the next topic.

Key Concept: The main NNTP standard defines a number of base NNTP commands that are used by the device initiating an NNTP connection to accomplish article propagation, posting or reading functions. NNTP commands consist of a command code and optionally, parameters that specify how the command is to be carried out.

Previous Topic/Section
NNTP Client-Server Communication Process: News Posting and Access
Previous Page
Pages in Current Topic/Section
Next Page
NNTP Command Extensions
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.