file descriptors

Barry Dean B.Dean at liverpool.ac.uk
Fri Oct 31 14:37:24 UTC 2008


Hi.

A while back I migrated DNS from some old PC servers running NetBSD and
bind 9 to some new shiny Sun X4200's running Solaris 10 and bind 9
(Sun's installed version).

One of the first thigs we noticed on the internal DNS servers that allow
recursion is that the maximum number of recursive clients was being hit
regularly. I upped the value a few times, eventually settling on 4000 as
that seems to have stopped the messages.

On one of these servers I am now seeing a lot of:

socket: too many open file descriptors

... errors in the messages log! Curious because even if we were at the
limit of 4000 clients, the current limit on file descriptors is ...

dns# plimit 354
354:    /usr/sbin/named
   resource              current         maximum
  time(seconds)         unlimited       unlimited
  file(blocks)          unlimited       unlimited
  data(kbytes)          unlimited       unlimited
  stack(kbytes)         unlimited       unlimited
  coredump(blocks)      unlimited       unlimited
  nofiles(descriptors)  65536           65536
  vmemory(kbytes)       unlimited       unlimited

65,536! Which would mean each and every recursing query using 16 file
descriptors?

Or is there a different lower limit on sockets? I have not heard of such
a thing?

Have I set the recursing limit higher than the FD_SETSIZE for select
(being 1024 for 32-bit apps on Solaris), can that be the problem?
Doesn't look that way as the perror states socket!

Any ideas welcome!

Thanks.

-- 
Barry Dean
Networks Team
http://pcwww.liv.ac.uk/~bvd/



More information about the bind-users mailing list