Slow or hanged login

Login in Mac OS X could stall when nameservers don’t respond to queries or do it slowly. This can happen during network outages, for example.

I discovered this today, with Mac OS X 10.3.9, while trying to log in. It took forever: the Dock started up, but finder would hang. Accidentally, I found that turning off all network interfaces (like AirPort), solved the problem, Further investigations revealed that my ADSL router had stopped forwarding packets and thus, it was impossible to reach any nameserver.

After a reboot, everything started working properly. However, I was intrigued about the reasons of the stalls during log in. By using “tcpdump” to capture traffic, I discover that my PowerBook was sending out some spureous queries against my ISP’s DNS nameserver:

16:05:33.975493 IP 192.168.0.xx.49152 > 195.235.113.3.domain: 30686+ PTR? 91.0.168.192.in-addr.arpa. (43)
16:05:34.034175 IP 195.235.113.3.domain > 192.168.0.xx.49152: 30686 NXDomain 0/1/0 (120)

192.168.0.xx is the IPv4 address assigned to my AirPort Express NIC, while 195.235.113.3 is my ISP DNS IPv4 address.

Why my system is sending out this PTR query is still a mistery to me and I haven’t been able to block it. It turns out that some component of Mac OS X is also sending out IPv4 (A) and IPv6 (AAAA) queries for “idisk.mac.com”. These can be easily blocked by adding the following entries to “/etc/hosts”:

# Mac OS X queries for these entries during log in,
# which can cause stalls if there is no Internet
# connectivity.
17.250.248.77 idisk.mac.com
::1 idisk.mac.com

Now, login is a little bit faster, but I guess it will hang the next time my router stops working properly.

Advertisements

3 thoughts on “Slow or hanged login

  1. I’ve been looking for a solution to this slow login problem forever and finally figured it out. Yesterday I was in a lab that I’d updated to 10.3.9 and my solution for the users to speed up login had been to force quit the finder – bit exteme but it was taking a few minutes to login every user. Force quitting would fix the computer for the day so long as it wasn’t turned off.

    I had read somewhere it was a dns problem so I changed from dhcp to manual and figured out that it was only a problem when I had the dns server ip entered. This lead me to check the log file on the OS X server what we are using for dns. It had a query for idisk.mac.com! I added another zone for mac.com and the login is now what you would expect.

    My question is who else knows about this and how many other people are pulling their hair out over it…does apple even know???

    cheers
    Trev

  2. Hi, Trevor.

    I reported this problem to Apple a few months ago but didn’t receive any official answer. I then moved to OS X Tiger, so I haven’t experienced this anymore. I guess that, since Apple Developers have been agressively been working on OS X 1.4 and OS X 1.5, this issue has been ignored.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s