Recent Support Questions




FreeBSD crashes when running DNews/dmulti, out of MBUFS.

This is a kernal bug in freebsd, but you can get around it by doing ALL of these steps:

The panic indicates that the system ran out of virtual memory for network buffers (specifically, mbuf clusters). You can increase the amount of VM available for mbuf clusters by adding:

	options "NMBCLUSTERS=<n>"

to your kernel config file, where <n> is a number in the range 512-4096, depending on the number of concurrent TCP connections you need to support. I'd recommend trying 2048 - this should get rid of the panic completely. You can monitor the number of mbuf clusters allocated/in use on the system with netstat -m.

How to rebuild the kernel on FreeBSD

Once you have the kerndist or srcdist loaded, do the following as root:

1.cd /usr/src/sys/i386/conf
2.cp GENERIC MYKERNEL
3.vi MYKERNEL
4.config MYKERNEL
5.cd ././compile/MYKERNEL
6.make depend
7.make all
8.make install
9.reboot  


Permission denied, spaces in directory names on NT ?

DNews does NOT support spaces in directory names, so if you define in dnews.conf

	xover_dir e:\dnews stuff\xover

Terrible things will happen, don't do it :-)


Protecting groups (private.*) by an NT user group (Leadership) using DNEWS4.6

	*:logoff:::*
	*lpcorp.com:read,post:$lookup$:$lookup$:*
	*:read,post:,groups=Leadership::private.*:add
> P.s.: In communicator 4.0x you enable password prompting by right clicking
> the forum's property!

Use authentication via your POP server, protecting one group (test.3) 

Here's an example that works it lets a user called 'fred' login via pop authentication and only access the group 'test.3' which is listed below as being accessible to people in the 'members' usergroup as defined in users.dat

Normal users who don't give a username/password can read/post all other groups.

users.dat
#user:password:manager access(none,full):managed groups:full name:usergroups
fred::Full:*:Mr Test:members


access.conf
## DO NOT EDIT BY HAND except between the manual parts
## User/passwords should be in users.dat rather than this file
## UserGroups can be defined in groups.dat 

## DEFAULT RULE
*:logoff:::*

## BEGIN MANUAL PART1 - Anything here will be preserved 
## END MANUAL PART1


## DOMAINS
*:read,post,:$lookup$:$lookup$:*:
161.29.2.15:read,post,:$lookup$:$lookup$:*:
*:read,post,:::*:
161.29.2.15:read,post,:::*:

## PROTECTED GROUPS
*:read,post:,groups=members::test.3:add

## IHAVE FEEDS
161.29.2.15:ihave::::

## BEGIN MANUAL PART2 - Anything here will be preserved 
## END MANUAL PART2

Help my active.dat is corrupt/lost/deleted... 

stop dnews
copy active.mon (workarea)/active.dat
start dnews
tellnews rebuild_index

Sending a feed to MCI

In newsfeeds.conf remove the $nntp_feeder feed and insert this instead

	...
site pull-feed-in.internetmci.com
	groups *
	exclude *mci.*
	onlyposts
	builtin
	...

Can I sync my active.dat file automatically with an IHAVE feed?

With a sucking feed it does this automatically, with a normal feed, it's not normal to update your active file in this way. But if you want to, and if your feeding site has given you news reader access. Then:

1) Get news reader access to the machine you get your feed from
2) In dnews.conf add

	nntp_feeder upstream.site.name
	suck_disable true

3) Then to synchronize news groups you do this:

	tellnews matchgroups

My server is not getting all articles

In general you have to decide if it's

  1. Are the items being sent fast enough? If you eliminate 2,3,4, then it's this one :-)
  2. Is DNews over loaded (Look at Tellnews stats, decide if DNews looks like it is flat out.)
  3. Are all the articles being sent? (Look in dnews.in, compare known articles to see if they arrived.
  4. Are they being sent but rejected (Look in dnews.in)

Tellnews stats_out description

Typ Posts Queued Rejects Reque Dup Post/s Tot/s K/s File Del 

Feed Typ = B = Builtin, P = Posting, M = SMTP, L = Live, S = 
Streaming

Posts = number successfully sent 

Queued = Number that couldn't be sent right away 

Rejects = Number the other end didn't want for some reason

Reque = Number that the other end does want but not now (e.g. if it's
out of disk space)

Dup = Duplicate message id's (the other end already has the message)

Tot/s = Total of posts and rejects and reque and dup per second, e.g.
how many we offered the site or tried to.

K/s =Total K bytes per second sent

File =The size of the .feed file, this gives an indication of
the backlog

Del = The total size of feed files deleted because they
got too big.

Feed = The name of the feed.


DNews won't start on startup but works fine when I start it later

Check /etc/dnews.conf is owned by 'news' and do this too.

	chmod 0664 /etc/dnwes.conf

My boss would like me to set up a variable expiration for the news hierarchy

alt - 1 day
rec - 3 days
cmp, ny, biz, gnu - 7 days
news - 15 days

Here is a sample expire.conf to handle the above:

remember 3
upto 1000% groups * default 1 keep 1 purge 30 maxitems 5000 minitems 0 
upto 1000% groups alt.* default 1 keep 1 purge 30 maxitems 5000 minitems 0 
upto 1000% groups rec.* default 3 keep 1 purge 30 maxitems 5000 minitems 0 
upto 1000% groups comp.*,ny.*,biz.*,gnu.* default 7 keep 1 purge 30 maxitems 5000 minitems 0 
upto 1000% groups news.* default 15 keep 1 purge 30 maxitems 5000 minitems 0 

 


How do I get it to work through a firewall ?

> hi, we´ve DNews 4.5 and try to send feeds via nntp to a firewall
> (borderware 5.0) . well, at the moment just many tries and no one
> will finaly works . bull.........
> 
> maby someone can help us and show us the way we have to go that
> we can send our customer feed´s. 

Define a port on your fire wall that links to the news server that you are supposed to be sending news items to.

Lets assume your borderware ip name is borderware.de and your upstream news site is upstream.server

Then on borderware.de, map port 2119 to upstream.server port 119

If you do this correctly you can test it with telnet

	telnet borderware.de 2119

The upstream server should respond. Now in newsfeeds.conf add a feed to it:

	...
	site borderware.de:2119
	groups *
	onlyposts
	builtin

That should do the job, I'm assuming you are sending up stream with IHAVE, if you want to send with a posting feed, add "posting' to the above newsfeeds.conf entry.

This assumes borderware is a simple tcpip mapping fire wall


Files in the work area

control* are the logs of control news messages for creating/removing news groups.

*.upto are high water marks for sending a feed so if DNews gets restarted it can start again at about the same place in the feed file.

dbi.idx is the main index, all news items have a 20 byte entry in this file.

dblast.idx is the last entry in dbi.idx for any group.

kfile.dat is your license key

big*.tmp files are used when news items come in to avoid using memory if item is over a certain size.

diskuse.dat is a record of how much disk space DNews is using.

active.times is a list of creation dates for news groups this is used by the 'newgroups' nntp command

active.names is the list of news group names

active.add is where you put an active file when merging it with the current one.

 


To use SSI with DNewsWeb add this to dnewsweb.ini

content_type text/x-ssi-html

Note: Apache doesn't support SSI with CGI scripts, this is an Apache problem, not DNewsWeb :-)


How can I get a satellite feed ?

>Could someone direct me to a North American Satellite news feed. The
>only one I know of is pc-sat and they went belly up some time ago.

Planet-Connect: http://www.planetc.com

My report how I've set up this feed is located at:

http://www.infostar.de/knowhow


Number of new articles incorrect

This can be caused by several things, first, all news clients estimate the number of new articles by subtracting the 'last' item from the last item that was read, the problem is due to cancels and expiration rules there can be gaps between these two numbers, so the total is 'less' than expected. Also since the volume of spam and cancles has increased this problem has become much more common.

With dmulti there is the possibility that new messages are not 'readable' for a short period after they arrive essentially until the files are flushed and the index for that group is re-read. This is a problem which we will address in a future version.

Lastly it is possible for there to be a straight bug in DNews where it reports the wrong figure, or items are mysteriously un-accessable, if you suspect this first try and prove it by using 'telnet' to read the problem group to establish that listgroup shows items that article nnn cannot access. Then report the problem to us as we would like to fix any such problems.

To fix it try:

tellnews rebuild_index

This takes about 1 hour per gig and after the next expire the problem should go away, again if it doesn't please report it and send us the telnet log and matching dnews.log file so we can see what is occurring.


What are control messages ?

A non sucking news server creates new groups by actioning these special news messages, the rules for which ones to action, and which ones to email to the manager for 'consideration' are defined in your config file 'control.conf' you can change actions from 'mail' to 'doit' to 'log' to 'drop' depending on what you want it to do.

All these actions are logged to control*.* in the workarea, these files are formatted as batch files so they can be used to create the groups automatically after being reviewed.


Time Zone problems on Unix

Time problems occur in libc5 applications. They must either be recompiled or have the below fix applied.

Create the proper link by executing this command.

	ln -s /usr/share/zoneinfo /usr/lib/zoneinfo

(Sorry, I'm not sure what version of Unix this answer works on :-(

On DNews 4.6k and later you can define in dnews.conf

	timezone_post EST

This controls the default time zone that DNews labels outgoing messages with, remember most news clients label messages with a date so this has limited usefulness.


Tellnews stats_in headers

Site Posts Rejects Dup Total Articles/S Kbytes/s K
Site = site name as found by reverse dns of number
Posts = number of successful posts from that host
Rejects = number rejected for any reason other than 'in history file'
Dup = number rejected as they were in the history file
Total = total of posts,rejects,dup
Articles/S = Successful posts per second (dup isn't included)
Kbytes/s = K bytes received per second while this site was connected.
K = total bytes received from this site.

tellnews.pass not found

The file tellnews.pass is stored in the work area and this error means that Tellnews or DNews have read conflicting copies of this file. This is virtually impossible unless one or both of them cannot write to the file (as would happen if the directories defined in dnews.conf were pointing to disks that don't exist), however the DNews manager utility has a config screen (one of the buttons on the right hand side) that lets you specify where the workarea is, this is intended for remote management, if set incorrectly these directory settings can make the manager 'loose' tellnews.pass

On Unix the most likely problem is the directory ownership being mixed up, all the files should be owned by 'news'.

So was it Tellnews or DNews manager that gave this error about tellnews.pass, and check your directory settings in dnews.conf, then restart the computer, if the problem persists send support@netwinsite.com the dnews.log file after trying a Tellnews command.

Restarting DNews often fixes this problem after correcting the cause of the problem.


Can I reject binary messages from non binary groups?

There is no guaranteed way to do this, the problem is even the binary posts are just text messages with binary encoded so you have to try and detect them. Here is how to do it. modify newsfeeds.conf like this, this assumes you want to allow binary messages in groups which have 'binaries' in their name.

site me 
	groups *
	accept default
	reject body "\nContent-transfer-encoding: base64"
	accept newsgroups "binaires"

Here is a more extreme example that also drops html messages if you find those offensive :-)

site me 
	groups *
	accept default ""
	reject body "begin 644"
	reject body "begin 755"
	reject body "Content-Type: application/octet-stream;"
	reject body "Content-Type: application/applefile;"
	reject body "Content-Type: image/jpeg;"
	accept newsgroups "binaries"
	reject body "Content-Type: text/html;"

Format of u_yymmdd.log generated from loguse true dnews.conf

date/time/username/ipname/newsgroupname/itemnumber/sizeinbytes

How do I kill items from a group using 'tellnews killitem'

tellnews killitem group.name itemnumber
tellnews killitem "<messageid>"

A lot of people ask how to find the item number, the answer is to use winvn or another news client which shows item numbers.

The other way to delete items is to use the message id ALL news clients will show this, look for a view options there will be one called "show all headers" or "show properties" or something like that, turn this on and your news client will show all the headers, e.g.

	From: asdfasdf
	Subject: asfdasdf
	Path: asdfasd|asdfasdf|asdfasdf
	Message-ID: <23421342@your.domain.name>

Then with the above example, to delete this message type in:

	tellnews killitem "<23421342@your.domain.name>"

Moving local groups (or a subset of newsgroups) to another system.

The easy way to copy a set of newsgroups across is by using the sucking mechanism. Lets assume the local groups are called "tisco.*"

1) Setup the new DNews

2) Temporarily add a sucking feed, in dnews.conf

nntp_suck2 old.news.server tisco.*
too_old 1000

(You must increase the too_old setting so that old messages
are not rejected)

3) Optionally you may want to set in dnews.conf

replicate true

This setting makes DNews use the same item numbers as the original items, however if you do this you must disable any other sucking feeds (nntp_feeder) and restart DNews (don't just do a reload) or you will cause a complete mess to occur. (the only fix if you do make this mistake is to delete the spool, so really don't do it by accident!!)

4)
	tellnews reload
	tellnews getgroups 2
	tellnews status (wait until it has successfully fetched the list of local groups)
	tellnews cached "tisco.*" 1
	tellnews update2
	tellnews status (watch as DNews sucks the items across)

Check dnews.in for any errors.

5) Once you have all the items remove the extra sucking feed and the replicate true setting restart DNews.

 


Adding a disk drive on NT

Lets assume the new disk is mounted as "f:" and also lets assume it's a 4 gig disk, so we will leave 200mb to spare and use 3800 as the diskspace2 setting.

	1) shutdown DNews 
	c:> net stop dnewssvc
	2) exit the DNews manager utility.
	3) Add to dnews.conf
	diskspace2 3800
	spool2 e:/spool
	4) Create the directory on the disk (from DOS)
	c:> mkdir e:/spool 
	5) Start DNews
	c:> net start dnewssvc

Format of users.dat file

#user:password:manager access(none,full):managed groups:full name:usergroups
# Example manager
dnews:anypassword:full:*:Your Name:adults
# Example normal user
fred:password:none:!*:Fred Bloggs:adults,staff

 


Example of protecting some news groups

>I want to setup one group "local.postone" that only 'fred' can
>post to but anyone can read, and I want another group "private.chat"
>which only certain users (joe,mike,jack) can read and post to.

First install 4.6, and try the WEB BASED GUI user/access manager which allows this sort of thing. The following example WILL NOT work with DNews 4.5

Here is an example access.conf AND users.dat for the above

The access.conf protects the group "private.chat" so only members of the usergroup "private" as defined in users.dat can read,post to it.

The group local.postone is specifically blocked from posting for everyone except the user fred.

----------CUT HERE---- access.conf --------------
## UserGroups can be defined in groups.dat

## DEFAULT RULE
*:logoff:::*

## DOMAINS
*:read:$lookup$:$lookup$:*:
*:post:$lookup$:$lookup$:*,!local.postone:
*:read:::*:
*:post:::*,!local.postone:

## PROTECTED GROUPS
*:read,post:,groups=private::private.chat:add

## IHAVE FEEDS
161.29.2.15:ihave::::

-------- users.dat ----------------------------
fred:fredspassword:none:*::
joe:joespassword:none:*::private
mike:password:none:*::private
jack:password:none:*::private

Example of protecting some news groups (simpler)

> >Okay, here's another news server question. Can access to a newsgroup be
> >restricted with a password? For example, I want to setup a discussion group
> >for some kind of evaluation, say das.frontpage98. Can I restrict the viewing
> >& participation in the newsgroup with a password that I distribute to my
> >evaluators?
> >

In access.conf add lines like this (the order is significant)

	*:logoff::* 
	*:read,post:das:secret:!*,das.frontpage98
	*dowagro.com:read,post:*

Then non local users would only be able to read das.frontpage98 by supplying the username "das" and the password "secret"


DNews isn't sucking items fast enough

The number one most likely problem is in dnews.conf you could have

max_speed 20000

If you have this line, remove it and restart DNews.

Failing that solution, these lines will help with sucking:

	suck_batchn 400
	suck_batchsize 2000000
	suck_requeue true
	suck_stream true

Suck_stream is the one that really helps, the others just mean that if it can't keep up at least it will share out what it does more evenly between the news groups that exist.

If that doesn't help, then the problem is almost certainly that your providers machine isn't letting DNews suck items fast enough.

One solution to this is to get an ihave feed of the worst groups, use

tellnews stats_groups

to find the big groups.

 

 


Read Only News Groups

> How can I make the local groups read only? We have some local groups
> under old names and we have created some now groups under new names. We
> want the user to post to the new groups only and still keep the posts in
> the old groups for read only.

One simple option is to set the group to moderated.

	tellnews newgroup old.group.name m

You should also add a line to moderators.conf so if anyone does post you will get it.

	old.group.name:YOUR_EMAIL@ADDRESS
	gnu.*:%s@tut.cis.ohio-state.edu
	*:%s@uunet.uu.net

Alternatively you can set a group to read only using your access.conf rules, this can be a bit tricky. Here is a simple example.

	*:logoff:::*
	*:read:::*
	*:post:::*,!old.group.name

 


Can I get fancy web reports (like INN report) - Dnewsreport1.03

Yes, Curt Cranfield has produced some similar scripts to generate web reports for DNEWS, here is some information on it froim Curt.

Hi Everyone,

Well Dnewsreport1.03 is finally ready for its official release. It provides a lot of functionality that dnewsreport0.5 had but a lot more information. For those of you who are not aware of what it does, here is a brief explanation.

Dnewsreport is a tool that provides a lot of interesting stats about your news server. For example it provides information on incoming and outgoing feeds, what groups are being read, who your largest feeder is, who your largest news acceptor is, which groups are being read - how much and how often, a break down of who and how often people are reading from your server and much much more. All of this is web based. Dnewsreport was originall written from the source that Fabien Tassin wrote for innreport. Since that time, I have tried to stay current on the development of innreport so that we can incorporate those tools and features into dnewsreport.

This release is a complete rewrite of the previous version (dnewsreport0.5). It now incorporates a configuration file which makes things much easier to configure and add new features as needed. It also makes it much more NT friendly, this was done by Eric Krichbaum. You can take a look at some of the information it produces at:

If you would like to download a copy of it, it is freely available from the following places:

Note: this software was designed to work with a full newsfeed (ihave type feed). If you wish to use it for a suck feed, it should work but your mileage may vary.

If you have any questions or would like to see new features added to dnewsreport, please let me know and I will do my best to help you out.

Cheers,

--------------------------------------------------------
Curt Cranfield
VPHoS - Virtuall Private Host Services Ltd.
Voice: (604)525-4475
Cell: (604)603-0703
http://www.vphos.net/
--------------------------------------------------------


Sucking from a server that requires username/password authentication

In dnews.conf you can add username and password information onto any sucking feed, for example the main sucking feed:

	nntp_feeder upstream.site.name * username password

The "*" is the list of groups to suck from that server.


Adding a sucking feed for the Microsoft news groups.

In dnews.conf, stop dnews from sucking the MS groups from your main feed, and make it suck them from a second sucking feed once an hour

	nntp_feeder main.sucking.site *,!microsoft.*,!local.*
	nntp_suck2 msnews.microsoft.com !*,microsoft.* 
	update_at2 20 *

In newsfeeds.conf add a posting feed to send the posts back to the MS site, and stop dnews from sending the same posts to your normal upstream site, e.g.

	site me
		groups *
	site main.sucking.site
		groups *,!microsoft.*
		builtin
	site msnews.microsoft.com
		groups microsfot.*
		builtin
		posting
	site mail.server
		smtp

Tellnews showusers output description

tellnews showusers
     NGroup, NRead, NXov, Nbytes, Time, NRej, Names

ngroup = the number of different groups read by that user
nread = the number of articles read
nxov = the number of xover requests
nbytes = The number of bytes sent to that user
time = the time spent connected by that user
nrej = if the user is disconnected due to an access.conf restriction
names = The name of the user


Tuning your expire process

The expire process can be tuned to run quite a bit faster, here are the things you should consider doing if the expire time is a problem:

 


Running a server in replicate mode

The best method is as follows:
    In dnews.conf on the master set
        xref_always true
    On the master use a feed entry like this to send to the slave:
        ...
        site slave.server
            groups *
            type live
            live_nchan 5
        (don't use xreplic true)

    On the slave, add to dnews.conf
        postonly true
    And in newsfeeds.conf on the slave
        ...
        site master.server
            builtin
            posting
            groups *


DNewsWeb Password Protected groups

This is a bit tricky, the problem is dnewsweb can only be protected by username/password by the web server, not by dnews.

So use your web server to force username/password restrictions.

Then you can add to dnewsweb.ini

	tellnews_pass xxxxx

Where xxxxx is the contents of the file tellnews.pass on your dnews workarea.

And install dnews/dnewsweb 4.6j

Then the username which is authenticated by the web server will be passed thru to dnews and will be matched against your users.dat access rules. See the updates.htm web page for details of the users.dat file.


Notes on improving expire times

On large systems there are several things you can do to improve the expire times.

  1. Make expire rules 'time' based rather than 'maxitems' based this makes the expire process more efficient.  This usually involves increasing maxitems settings and reducing the 'default' setting for most of the rules in expire.conf
  2. In dnews.conf define
         expire_min 20
         expire_small 400000
  3. If expires are still slow contact support@netwinsite.com and send the output of a tellnews status, and a description of your hardware, we may be able to offer specific advice.
  4. Keep a lookout for dnews4.8 which will include a faster expire mechanism to solve this problem long term
  5. Consider running dmulti so that expires don't affect user response.

Stopping the recent email spam "logged only" messages.

If you are getting hundreds of email messages with subjects like this:

    "Logged only: version"

    "Logged only: newgroup"

Then you should make these changes to your control.conf file:

    notepad (config)/control.conf

    search/replace  ":mail"  ":log"

Then restart DNEWS.


Distribution config file

This isn't actually a new feature but it has never been documented before. There is a config file you can create called "distrib.conf" in the config directory and in that file you can place rules like this:

Format:    priority:wild:value

Example:

1:net.*:usenet2
3:local.*:localonly
2:nz.*:nz

With posts to multiple groups the highest priority rule that matches any group is applied to create the Distribution header.  Note: the distribution header's only purpose is to prevent distribution of local news world wide but it also relies on other sites implementing their distribution rules correctly so it is not as effective as one might assume :-)


Notes on scaling a news server to multiple systems

Scaling a news server is tricky.  DNEWS offers serveral options each have advantages and disadvantages.

We recommend the following upgrade path:

  1. Plain DNEWS
  2. DMULTI
  3. Add RAM (upto about 400 mb), and faster or multiple network cards
  4. Split feeding onto a separate box if you are sending outgoing feeds this box need not have a large spool directory.
  5. Choose one of (Readonly servers, Multiple systems, Replicating servers)

Readonly Servers

In this mode, you add a second box, which reads the same spool directories, this lets you randomly send users between 2-3 systems because all the systems have identical article numbers, and the system can never be out of sync as it's reading the same files.   However, its disadvantages are that you are adding load to the same original disk system and network either of which may be the real bottleneck so you may not increase real throughput much.  Also this gives you no backup in the event of a disk failure.

Multiple systems

This is the best option in terms of performance, management and reliability.   However you can't move users randomly between the systems because item numbers will not match exactly.  We strongly recommend this option.

Replicating servers

This is just like multiple systems but with the addition that item numbers do match perfectly, we strongly recommend against this option, the problem with it is that keeping the numbering matching perfectly is very difficult, and if it ever goes out of sync due to a fault on one system or a disk crash, re-syncing the servers is a real pain.  Avoid this configuration :-)

Running Caching servers with small spool disks

Using the dnews 4.7 header caching features it would be possible to run a server that acted as a caching server to reduce load on a main system, the caching server would only need a small spool disk (say 4 gig).  This might work really well, but we have not tried it in a real situation so cannot recommend it at this time, by all means experiment with it.

Back To Top

 

Products Downloads Prices Support Company