Windows servers use a Microsoft-proprietary network protocol called SMB to provide file services. Mac OS X 10.1 and later can act as a SMB client. There are five items of data that are crucial in the SMB world:

The server address ï¿½ either a DNS name (server.xxyyy.company.com), an IP address, or (if you follow tip 8) a WINS name.

The share name ï¿½ the name of the "share point" the the server is serving the files under.

(For tip 8) The Windows resource domain for workstations in your region -- a grouping of Windows machine names. In small-scale environments, the Windows account domain and resource domain might be the same.

Read the rest of the hint for the tips...

The nine tips:Note: these tips are written assuming a corporate intranet environment, but they'll work anywhere.)

Get Panther (Mac OS X v10.3) ï¿½ earlier versions of Mac OS X have SMB functions, but Panther does it much better.

When creating your Mac OS X account, set your "Short Name" to your corporate user ID in lower case. This can save you much typing later! (You can only set your short name when you create your Mac OS X account. If you already have something else, remember this tip for next time you set up a machine.)

Use Finder's "Connect to Server" function with a "smb:" URL, rather than trying to browse to the server via the Network folder. Browsing is unwieldy and very slow in a large-scale corporate environment.

When responding to the "SMB/CIFS Filesystem Authentication" box, CAREFULLY read all the values. They all look very similar and are easily mis-read. A very common stumbling point is the domain name ï¿½ in some environments it defaults to something that's close, but not quite correct.

Here's how to convert UNC names to "smb:" URLs: Add "smb:" to the front and flip all backslashes to forward slashes. Example: SERVERSHARE\Folder1\Folder2\File.dat becomes smb://SERVER/SHARE/Folder1/Folder2/File.dat

Use the smb URL scheme knowledgeably.

Basic format: smb://server/share

List all shares on a server: smb://server

Specify an Windows domain and user ID: smb://domain;user@server/share

This last format is the best format to use to add a share to your favorites or make an alias.

Example: smb://DOMAIN;userid@server.xxyyy.company.com/SHARE ï¿½ connect to the share (DNS name for server)
Example: smb://DOMAIN;userid@server.xxyyy.company.com ï¿½ list the shares
Example: smb://DOMAIN;userid@SERVER/SHARE ï¿½ connect to the share (WINS name for server)

Use server favorites and aliases to save typing. (And use the smb://domain;user@server/share URL format for your favorites and aliases.)

Advanced trick ï¿½ use a ~/.nsmbrc file to get the Windows account domain to default correctly. Place a text file called .nsmbrc in your home folder with the following two lines. Change the "workgroup=" value to your Windows account domain.

[default]
workgroup=DOMAIN

Enjoy!

[robg adds: We've run versions of some of the above before as standalone hints, but this one really pulls it all together in one spot quite nicely...]

The original article had its dashes and backslashes mangled during the editing process. Until robg gets a chance to fix the original post, here is the fixed version:

Windows servers use a Microsoft-proprietary network protocol called SMB to provide file services. Mac OS X 10.1 and later can act as a SMB client. There are five items of data that are crucial in the SMB world:

The server address -- either a DNS name (server.xxyyy.company.com), an IP address, or (if you follow tip 8) a WINS name.

The share name -- the name of the "share point" the the server is serving the files under.

(For tip 8) The Windows resource domain for workstations in your region -- a grouping of Windows machine names. In small-scale environments, the Windows account domain and resource domain might be the same.

Read the rest of the hint for the tips...

The nine tips:Note: these tips are written assuming a corporate intranet environment, but they'll work anywhere.)

Get Panther (Mac OS X v10.3) -- earlier versions of Mac OS X have SMB functions, but Panther does it much better.

When creating your Mac OS X account, set your "Short Name" to your corporate user ID in lower case. This can save you much typing later! (You can only set your short name when you create your Mac OS X account. If you already have something else, remember this tip for next time you set up a machine.)

Use Finder's "Connect to Server" function with a "smb:" URL, rather than trying to browse to the server via the Network folder. Browsing is unwieldy and very slow in a large-scale corporate environment.

When responding to the "SMB/CIFS Filesystem Authentication" box, CAREFULLY read all the values. They all look very similar and are easily mis-read. A very common stumbling point is the domain name -- in some environments it defaults to something that's close, but not quite correct.

Here's how to convert UNC names to "smb:" URLs: Add "smb:" to the front and flip all backslashes to forward slashes. Example: \SERVER\SHARE\Folder1\Folder2\File.dat becomes smb://SERVER/SHARE/Folder1/Folder2/File.dat

Use the smb URL scheme knowledgeably.

Basic format: smb://server/share

List all shares on a server: smb://server

Specify an Windows domain and user ID: smb://domain;user@server/share

This last format is the best format to use to add a share to your favorites or make an alias.

Example: smb://DOMAIN;userid@server.xxyyy.company.com/SHARE -- connect to the share (DNS name for server)
Example: smb://DOMAIN;userid@server.xxyyy.company.com -- list the shares
Example: smb://DOMAIN;userid@SERVER/SHARE -- connect to the share (WINS name for server)

Use server favorites and aliases to save typing. (And use the smb://domain;user@server/share URL format for your favorites and aliases.)

Advanced trick -- use a ~/.nsmbrc file to get the Windows account domain to default correctly. Place a text file called .nsmbrc in your home folder with the following two lines. Change the "workgroup=" value to your Windows account domain.

I have no problem accessing Windows XP file servers. What I do have a problem with is browsing them in the Network sidebar in Finder (using 10.3.5) The only way I can connect to a shared Windows folder is command-K, which always works. The Network sidebar, however, only shows my own local server and ignores the Windows shared folders. Is there some other fix that will enable me to browse Windows folders from my Mac?

Most likely the share name you are trying to access is longer than 12 characters. The 12 character limit is something that was supposedly fixed in SMB 3.0, but it seems to still be an issue. Check that out.

That usually happens when I try to reconnect to a share that I've been using with no troubles whatsoever before.
It turned out that the .DS_Store-files Mac OS X leaves lying around everywhere seem to cause this. Deleting them causes no harm but makes the share accessible again.

To do so, we are using a command that runs on the windows box, searching and deleting all .DS_Store-files. No need for a script here..

I'm guessing at the cause of this but I think it refers to multiple mount points for the shares. If you type in the ip address of the DNS server that you want to mount as opposed to the domain name you should get the list of shares succesfully each time.

I ran into this problem today (code -36), and after 5 hours I was able to figure out what the problem was.

My w2k domain password had expired. This was problem #1. Loging into a windows machine I was able to successfully change the password. Trying to login again from my mac produced the same error, even though I could login into a different server in the same domain, which narrowed it down to something linking the two machines. Eventually I went into the Keychain manager and deleted all of the links for this server, and then I was able to successfully login.

Usual disclaimers apply; M$ seems to assume you won't turn your firewall on, and that if you do, you'll have to live with breaking stuff, rather than the compromise of running a firewall and opening ports.

I was just having immense trouble mounting a workgroup. I even checked just about every forum I could find and didn't find the answer that solved my problem. My persistence payed off, however and I discovered something that got my system working. In the Authentication for loggin onto a server it says "WORKGROUP/DOMAIN". By default, it was displaying my workgroup and nothing more. I added a '/' to the end of the workgroup (my domain is empty) and all of a sudden everythign was working perfectly.

To save myself the trouble of having to type the '/' every time, I modified my connect line to say "smb://WORKGROUP/;SERVER/SHARE"