Lots of 'named' processes - why?

Jim Reid jim at rfc1035.com
Mon Apr 23 21:45:29 UTC 2001


>>>>> "Karl" == Karl Keyte <karl at koft.com> writes:

    Karl> I've just upgraded to from Bind 8 to 9.1.0. I used to have a
    Karl> named daemon listening to the internal network interface for
    Karl> internal serving and one listening to the external interface
    Karl> for the outside world. That gave me two daemons, each
    Karl> listening to an interface.

    Karl> Trying the same thing with 9.1.0 created 10 processes, 5
    Karl> each for internal and external. Any ideas why?

You're probably running some idiot OS that counts each thread as a
process and gives each its own ps listing. Sigh. Internally BIND9 is
presumably using 5 threads per process on your system. [Unlike BIND8,
BIND9 is multi-threaded on most platforms.] You still have just 2
processes. However ps is confusing you for reasons best known to
itself and its implementors.

    Karl> Also, I used to have each listening to a different socket
    Karl> for reload commands, etc. Now with 'rndc', socket control
    Karl> has gone away and I need a way to control two different
    Karl> instances of the daemon? Any tips?

Configure each name server to use different control sockets, just like
you did before. Make rndc use those sockets for controlling the
internal and external servers, just like you did before with ndc in
BIND8. The only difference is that with BIND9, those control sockets
are internet sockets, not pathnames in the file system. You could make
each name server set up a control socket listening on port 953 for its
network interface only. Define internal and external server{}
statements in rndc.conf and use the -s option to rndc to make it
select the server it wants to talk to.

Oh and upgrade to 9.1.1. It fixes lots of threading bugs in 9.1.0.


More information about the bind-users mailing list