Non-responsive name servers when started during boot on OS X Mavericks 10.9

Chris Buxton clists at buxtonfamily.us
Mon Jan 20 19:22:11 UTC 2014


On Jan 17, 2014, at 6:45 PM, Larry Stone <lstone19 at stonejongleux.com> wrote:

> Background: I have been using my Macintosh as a server…

[…]

> Problem: This morning, by happenstance, both were rebooted a few minutes apart and suddenly, nobody could access anything. Finally figured out that named on both was not responding (queries timed out). Killed named (which was immediately restarted by Apple’s launchd) and all was well. Rebooted the secondary to see if it was repeatable and same thing. Nothing of interest in the log - both the initial startup at boot time and restart log identically (and it does log the RFC 1918 empty zones warning so it gets that far). I’m guessing there’s some resource not available at boot time that’s causing named to hang but that really just a will guess.

I remember fixing this problem way back when Apple first switched to launchd (10.4 or so). Basically, Apple patches (or used to patch) named to make it register with the system to be told when a network interface is added. Their patch allowed named to start up before the network is up, and then essentially get a SIGHUP or something like it every time a network interface comes up or goes down.

The problem is that launchd starts named before the network is up. The solution is to have it wait a few seconds before starting. The way we did it back then was to have launchd start a script instead of starting named directly. The script would simply sleep 3 seconds (or something like that) before starting named. It would then stay open.

I’d bet that the package from Men & Mice includes this script or an equivalent workaround. When I wrote the original script I wrote about above, I worked at Men & Mice.

Regards,
Chris Buxton



More information about the bind-users mailing list