Can you post more information about your network configuration. What's the IP address and network mask of the computer where you're using "smbtree"? What are the IP addresses and network masks of the other computers.
These messages indicate that "smbtree" could not communicate to the other computers. A firewall program could be blocking the ports on the computers or you could have a problem with IP routing.
Quote:
timeout connecting to 67.215.65.132:445
timeout connecting to 67.215.65.132:139
|
Try to ping the other computers and verify that communication is working.
I noticed that the computer above appears to be on the Internet. A broadband router will normally block those ports since they aren't forwarded in the router. I don't recommend that you forward those ports through the router because of the security risk.
If you are trying to communicate with another LAN, through the Internet, you should probably use Virtual Private Networking and NOT attempt file sharing directly over the Internet.
There are three main parts to SAMBA (and Windows File Sharing). Only the first of these works between computers on different IP sub-networks.
- SMB on TCP port 445 to list shares and access shared folders
- NetBIOS name service on UDP port 137 (converts computer name to IP)
- Network browse list on UDP port 138 (list of detected servers)
On the same IP sub-network SMB can also use TCP port 139 (NetBIOS session) but it is only used when communication fails through TCP port 445.
When I refer to a sub-network I mean two computers on the same Ethernet LAN that also have the same network address. The network mask determines how much of the IP address (on any particular computer) will be used for the network address. Computers with different network addresses are in a different sub-network even if they connect to the same Ethernet LAN. To use SAMBA with computers on a different sub-network you have to type in an IP address instead of a computer name, and the list of detected servers (browse list) will not show computers on other sub-networks.
SMB is what allows you to list the network shares on other computers and access shared folders, printers and files. SMB uses TCP port 445 to communicate with computers on other sub-networks. SMB can use TCP port 139 to communicate with computers on the same sub-network. SMB uses the IP address to access other computers so you have to provide some kind of "name service" in order to use computer names instead of IP addresses.
NetBIOS name service is what usually translates computer names to IP addresses within each sub-network. It uses broadcasts on UDP port 137. NetBIOS name service does not work between IP sub-networks. When you can't use NetBIOS name service you can type in IP addresses instead of computer names. You can also translate names in some other way as follows.
- Add computer names and IP addresses to "hosts" file
- Use a local DNS server (that you set up)
- Use Windows Internet Name Service (WINS) on a server
- Add computer names and IP addresses to "LMHOSTS" file
The computer name resolution is one of the most confusing things about SAMBA and Windows File Sharing because there are so many choices of how to do it. The only one that requires no user configuration is NetBIOS name service and that only works within the same sub-network.
The network browse service uses broadcasts on UDP port 138. It maintains a list of server computers detected on the same sub-network in the same work group. Computers that do not share folders or printers (server service disabled) will not show up in the list. The browse service is just a convenience and you can always enter a computer name manually or create a shortcut with the correct computer name. The fact that a computer name does or does not appear in the browse list tells you nothing about whether you can actually access the computer using SMB.
Because of the problems with NetBIOS name service and the browse list between sub-networks I recommend that you start by only typing in an IP address for another computer until you can list the shares on the other computer. You can "ping" the other computer using the IP address to verify that IP communication works. In order to list shares you may have to log on to the other computer using a valid user name and password. Computers can be configured to allow anonymous share listing but that can also be disabled.
If you're going to access computers on other sub-networks I recommend that you add the computer names to the "hosts" file. That's the simplest way to use computer names. You can use a DNS server provided that the computers can register their names with the DNS server. The DNS server for your Internet provider won't work since they don't let you register names. On Linux you can enable a WINS server in SAMBA to handle computer name resolution. You may still have to manually add the computer names for WINS to work, but you only add them on the WINS server computer. Only server versions of Windows have WINS server. The "LMHOSTS" file does name resolution similar to "hosts" but also has other options to control the browse service to span sub-networks.
When you're having trouble with SAMBA or Windows File Sharing keep the three main parts in mind, and remember that SMB is the most important one and only one required. The other two parts are nice but not absolutely required if you use IP addresses instead of computer names.