I have recently been having issues getting /dev/random to output any data at all. I can get data from /dev/urandom using this simple test method (as defined by man urandom)

dd if=/dev/random of=/tmp/test.random count=1
0+0 records in
0+0 records out
That was ctrl c exited after 5minutes waiting with no output. However If I do /dev/urandom I get the following instantly.
dd if=/dev/urandom of=/tmp/test.urandom count=1
1+0 records in
1+0 records out
If I check the entropy level its "3" while on other systems that it works fine on I have huge numbers (between 3000 and 4000). Im not sure what ive done wrong. I have two "identical" systems one works and one doesnt. I feel I may have missed an option in the kernel but I cant seem to find it. The system is a dual pentium 3 coppermine, whlie the one that works is a dual amd mp 1500.

Any ideas that could lead me to resolving this?.