I have determined that rndc hangs (for reconfig or for stop, probably for anything) whenever the 'lo' interface is down. This poses a particular problem because "/etc/init.d/bind9 stop" and /etc/network/if-down.d/bind9 both use rndc to control bind, and on my system both happen to be executed after the 'lo' interface is shutdown.
This is a relatively major problem because it prevents clean shutdown. Whatever the timeout is, it is much longer than people are willing to wait for shutdown. It is especially frustrating because "killall -KILL/-HUP named" accomplishes the same functionality without this liability. Probably one solution would be to make sure the 'lo' interface is never shutdown, or to make sure that bind9 is fully stopped before the interfaces are shutdown. Also a line like: ifconfig lo | grep -q UP || exit 0 in /etc/network/if-down.d/bind9 seems to help a little. But I think the correct solution is to make rndc timeout in a more reasonable time period. Probably 1 second would be sufficient but 10 is probably a reasonable compromise between certainty that the request will be serviced and a desire to fail in a reasonable fashion. Thanks, - Greg -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org