Mac server keeps “disappearing” and “reappearing” on local network

bonjourethernetserver.apptime-machinewifi

I'm hoping someone can help me figure out a really perplexing issue we've seen with a Mac server on our local ethernet network. What we're seeing lately is that the server (which we use for Time Machine backups) will seem to "disappear" and "reappear" to our Macs, with a different "identity" each time. What I mean by this is: After connecting to the server through Finder, it appears in the sidebar. However, some time later (usually no later than an hour), I'll get a notification from Time Machine that backups are failing because the backup disk is not available.

Strangely though, if I go back to Finder and try to click the server link in the sidebar, I get a message saying the original item can't be found; but I can go to the "Shared" section, click "All…", and find it there. Sometimes I will need to toggle my wifi on and off before I'm able to connect again.

To get an idea of our infrastructure, we use a Cisco router to input the internet connection, output it to ethernet jacks around our space, and also output to the Mac server. We have 3 Airport devices connected to Ethernet jacks to create a roaming WiFi network, and our client Macs connect to these via WiFi.

Any help would be greatly appreciated. Thank you!

Best Answer

The Finder uses mdns (bonjour) to populate the list of servers in the sidebar. You can look at the advertisements directly using:

dns-sd -B _afpovertcp

This will show you all the afp fileservers on the local subnet. You can replace the _afpovertcp with _smb to browse for windows fileshares. Run this command for a while and look to see if there are any "Remove" messages mentioning the file server. Time machine is likely using something similar to:

dns-sd -L servername _afpovertcp

to contact your server.

If you see a bunch of similar names with a 1 or 2... at the end, you may be seeing the server reregistering its name for some reason and not being able to get its old name. This could be due to some other network machine running a sleep proxy, and not releasing the name when it should.