Snow Leopard can see Windows shares in Finder but can't connect

2

2

I have an iMac with the latest version of Snow Leopard on it. I have a NAS drive and a Windows machine that both show up in the Finder's 'Shared' section. However, if I click on them, Finder says "Connection Failed". Clicking on 'Connect As...' gives an error dialog that says "The server 'blah' may not exist or it is unavailable at this time."

Points of interest:

  1. All machines are receiving their IP/DNS info from the router using DHCP.
  2. I have a Mac Mini on the same network that connects to the NAS drive and windows machine perfectly with no config (i.e. worked out of the box).
  3. Both Macs are on the same version of Snow Leopard.
  4. There is no password required to access the NAS share.
  5. I've never setup a WINS server on any machines and all machines are using 'workgroup' by default.
  6. I've tried putting "workgroup" in the Mac's workgroup entry and have tried leaving it blank, neither solves the problem.

Here are some things I have tried:

  1. Finder->Connect To Server: smb:///share. This works, but by name does not.
  2. Terminal->mount_smbfs //@/share share. This also works by ip, but not be name, resulting in "mount_smbfs: server connection failed: No route to host".
  3. If I put the IP address of the NAS in the WINS server entry in the Mac's network setup, I can connect by name.

It obviously seems to be a name resolution error, but I can't figure out why. The only thing that has changed since it used to work is that I got a new router that now gives out DHCP (all machines are dhcp clients) addresses of 192.168.x.x, but used to be 10.0.x.x. I've grep'd through everything that might have saved that old address, but can't find anything. It's also worth noting that the second Mac (the one that connects successfully) was added to the network after the router change.

Please let me know if there are additional points of information needed to troubleshoot this further.

Randy Miller

Posted 2010-11-06T21:26:28.730

Reputation: 21

You could try to delete and re-add the ethernet connection entry in the network preference pane on the mac that fails – Daniel Beck – 2010-11-06T22:59:30.240

Thanks Daniel, have tried that as well to no avail. – Randy Miller – 2010-11-07T01:57:45.740

Answers

1

This is a name resolution problem, but not exactly DNS unless your NAS box has a fully qualified domain name. The Macs that are visible on the network under the Finder's shared category are discovered through Bonjour and Multicast DNS. I'm not sure exactly what OS X uses for discovery of SMB shares.

It sounds like the Non-Connecting Mac can discover the SMB shares through multicast, but is not getting the correct IP address information. You might try the arp command from the terminal to see what IP address is returned for the name of the NAS box. If the NAS box is named "nas.local" then the command would be:

arp nas.local

and it will return the IP address associated with nas.local in the Mac's ARP cache.

You might try nmblookup to see what sort of SMB information the Mac is receiving. I'm not real familiar with it but I think the command might be:

nmblookup -n nas.local

The samba man page will give you more options and information.

I've seen problems for years with connecting to servers through the sidebar and never nailed down a sure fix for them. You mentioned all machines are on DHCP. You might put the NAS box on a static IP. You could then drop an entry into /etc/hosts for nas.local. That's not ideal but it might be an easy fix for just a couple of computers.

Theo Belk

Posted 2010-11-06T21:26:28.730

Reputation: 610

Thanks for the info, Theo. The arp command returns 'unknown host' for the NAS box, but so does the mac mini so that doesn't seem to matter. Oddly enough, the nmblookup command does return the correct IP address of the NAS. You're right about putting in a hosts entry, but since the mac mini 'just works' I'm really trying to track down the root problem with the iMac not connecting. – Randy Miller – 2010-11-07T19:18:54.480

On more thing to note, the nmblookup command returns the correct ip when I use 'nas', but fails to find 'nas.local'. – Randy Miller – 2010-11-07T19:25:01.680

Not sure if this is a clue or not, but the Console->Samba Logs have a ton of entries in the nmbd section. However, the mac mini (which connects fine) has no entries for Samba at all. Is there something to the way OS X uses samba that is acting different on the 2 computers? – Randy Miller – 2010-11-07T21:33:46.560

Ok, so the name NAS is resolving. Maybe OS X is putting the dot local on automatically. I don't have any theories on why the other Mac is connecting. Maybe something is wrong in the SMB config file. I'll have to look up where the prefs are. – Theo Belk – 2010-11-08T21:04:03.760

It's weird that as soon as I put the IP address of the NAS as a WINS server, it instantly connects. Seems that the connection is based solely on WINS. I looked at the smb.conf file, and WINS is the last in the order of lookups (name resolve order = lmhosts bcast host wins). – Randy Miller – 2010-11-09T02:11:49.497

So it appears that the NAS box is running its own little WINS server. – Theo Belk – 2010-11-11T15:23:50.197

Actually, I found that on a apple forum entry somewhere that the person got their networking to work on the mac by putting all of the ip's of every win box into the WINS entry and they were able to resolve. – Randy Miller – 2010-11-13T00:07:16.100

0

I had the same problem. I half solved it by turning off File Sharing -> SMB sharing, and then turning it on again. This reset samba and now my smbtree command show the network neighbourhood and after this my nmblookup searches return results.

Finder still sees them and won't connect using the links in the sidebar, but I can connect by pressing apple+K and entering smb://servername.local/

Matt Connolly

Posted 2010-11-06T21:26:28.730

Reputation: 1 313