Leafnode, an NNTP server for small sites

  Leafnode home  




Mailing list  



Last update  
9 Jan 2004  

This site is outdated, please use https://leafnode.sourceforge.io/ instead.

Leafnode is a USENET software package designed for small sites running any flavour of Unix, with a few tens of readers and only a slow link to the net. It is currently being developed by Matthias Andree and Ralf Wildenhues. The current version is 1.9.46.

The package consists of several programs:

  • Leafnode is the NNTP server. It talks to the normal news clients, and stores readership data.
  • Fetchnews is the program which gets news from upstream servers and sends your posted articles to the upstream servers. It also can find out which groups you read and gets articles accordingly. Fetch supports filtering incoming articles for regular expressions.
  • Texpire is responsible for deleting old and uninteresting news. It deletes all discussion threads that are old and not recently read.
  • Applyfilter applies the contents of your filterfile to articles that you have already retrieved.
  • Checkgroups inserts the titles of newsgroups into the newsgroup database.
  • Newsq shows which news are waiting to be transferred to your upstream server.

Only groups that someone has been reading in the past week are fetched from the upstream NNTP server. When someone stops reading a group, fetch will stop reading that group a week later, and when someone starts reading a group, fetch will grab all the articles it can in that group the next time it runs. This means that you only store articles from those newsgroups you are really interested in.

Advantages of Leafnode (compared to other servers) are:

  • Uses very little disk space and bandwidth compared to other servers. Obviously truer for 3-user sites than for 30-user, and probably wholly untrue for 300-user sites.
  • Easy configuration and maintenance. Leafnode tries very hard to recover automatically from error situations.

Of course, leafnode also has weaknesses. Some of these are:

  • Loses news. In just about any error situation, leafnode tries to fix its problems by deleting the offending article.
  • Scales very badly.