what protocol does Windows 10 use to discover network hosts?
Not sure this is a Linux question, but I'll start here. Our newly installed Windows 10 computers have some issues listing hosts on the network. Only two of 4 Windows 7 computers show and only one of 6 Windows 10 computers show. No Linux or Mac computers are listed. When viewing network computers from the Windows 7 hosts, all computers, Windows 7, Windows 10, Linux and Mac, show up. This issue for Windows 10 is all over the Internet. In researching this issue, a suggested solution was to set Control Panel > Programs & Features > Turn Windows features on or off > SMB 1.0/CIFS Sharing Support, and checking SMB 1.0/CIFS Client and SMB 1.0/CIFS Server. After doing that, all Network hosts (Win7, Win10, Linux, Mac) show on the Windows 10 computer.
Supposedly, SMB 1.0 is obsolescent and insecure, but Windows 10 cannot see all network hosts without this setting, and why it can see the odd Win7 or Win10 computer or two is inexplicable. The question here is, what would the Windows 10 machine be sending to the Linux host for the Linux host to reply back acknowledging its presence? Why would Linux be responsive to SMB 1.0 and not a more recent version of SMB? Can I determine what version of SMB is enabled on Linux? Can Linux be set to use SMB 2.0 or whatever? Note that SMB in this case refers to Server Message Block, not Samba. |
Quote:
Samba is linux's implementation of SMB, by the way. Yes you can specify which version of the SMB protocol you want linux boxes to use. A linux box can be a samba server, client or both. Configure the settings (including which version of the smb protocol to use) in /etc/samba/smb.conf. See the man page for details - it is very well documented. Let us know how you make out. |
I think thewre is some new extension so Zeroconf can do DNS also. Works with DHCvP also.
|
Workgroup?
Use lmhosts? Assign master? |
Quote:
explique moi s'il te plait! |
Quote:
So - continuing in English ... Interesting situation you are describing. When you say that the Windows computers can "see" the linux computers without the use of Samba on the linux side, are you actually able to access file shares or just see that there is a computer on the network ? Several newer technologies (zeronconf was mentioned earlier, WS-Discovery ...) exist and are part of recent versions of Windows. However, I believe proper file sharing, with a network-aware file system, between linux and Windows still requires smb / cifs (or nfs, the linux-based "equivalent" .. I have never personally set up nfs on a Windows box but I understand that it is possible ... ). It *is* curious, however, that you must enable smb v1 on the W10 computers for them to "see" the linux boxes .. Intuitively this would imply that smb (samba) is configured on the linux side ... Not 100% sure what is going on here ... Any other network-savvy members feel like chiming in ? |
In my limited understanding... Basic network browsing depends on SMB version 1. Basically netbios name service broadcasts the netbios name over the network at startup and a set interval. Other computers pick up the broadcasts and stores its name/ip address in a list.
https://www.samba.org/samba/docs/using_samba/ch07.html Windows has a new protocol for browsing a network called WS-Discovery. Although my two Windows 10 computebrowsers I think are configured the same but do not see each other. As far as I know if samba is not running then Windows 7,10 should not be able to see the linux host although WS-Discovery scans other protocols to automatically pick up printers and other network devices. I believe there is WS-Discovery support in work. As a FYI my Mint 19 file browser is able to "see" my Windows 10 computer that is shared although it fails to connect. CentOS 7 file browser can not see any shares but can connect if entered manually. It may also depend on how the Windows 10 computers networking is configured. Whether it is defined as a public or private,if network discovery is enabled and if all computers are in the same workgroup. |
Quote:
Quote:
However, my issue does not have to do with accessing files between Win10 and Linux. I'm talking about Linux computers which are not running Samba at all. The Windows 7 computers could "discover" these hosts as shown in Windows Explorer > Network. Windows 7 computers could see ALL computers on the network including Window 7, Windows 10, Linux and Mac. The Windows 10 computers could only see a couple of the Windows 7 and only one other Windows 10 host on the network before enabling SMB 1.0. Quote:
Quote:
Quote:
client max protocol = default client min protocol = CORE server max protocol = SMB3 server min protocol = LANMAN1 Now, I have no idea what "CORE" or "default" are. I haven't been able to find documentation describing this. I may experiment by setting the min client protocol to SMB2, but as mentioned, sharing files is not my problem. Identifying computers on the network is. Why? because some programs, like Acronis, use a Windows Explorer-link waterfall list of drives and network hosts in order to let the user select a local (Drive) or network target for saving the backup file. If the target host is not visible, it's not a choice. Quote:
Quote:
So, in the end, do we or do we not know what mechanism Windows 10 is using to probe network computers for their presence? Clearly, successful discovery depends on the SMB version. What on Linux is responding to this "probe"? Can Linux's responding app be set to use SMB 2.0? |
My understanding was that newer Windows clients provide their hostname to the DHCP server when they are given the lease but Linux clients do not, by default at least.
|
Hey mfoley,
Quote:
Quote:
Quick question : can you access shares on a Windows 10 computer from one of the linux computers that *isn't* running smb ? Other members here may still have some insight, but it would be interesting to hear what a similar Windows forum might come up with ... |
mfoley / all :
Came across this information (new to me ..) while researching this issue ... From Wikipedia article: Quote:
|
Quote:
If you install the samba client and samba utilities one can mount the share via the command line or use smbclient which one of its features is accessing the share like a ftp client. |
Quote:
Note that with SMB 1.0 enabled on the Windows 10 computers I don't actually need vers=2.1. Quote:
Code:
> host webserver Code:
$ host watcher The question remains, how does Windows 10 query for computers on the network? The Windows forums seem to have no clue. |
2 Attachment(s)
This article gives good information.
A complicating factor can be the firewall rules implemented by Windows based on the networking profile in use. Screenshots from my Windows 10 install are attached. With Samba, I have found that Windows 10 refuses to connect to a Samba server unless I have these lines in smb.conf Code:
client min protocol = SMB2 |
Quote:
After making the recommended registry and service changes, all Windows 10 computers thus re-configured simply appeared on my Windows Explorer Network panel. After I added the wsdd.py script to my Linux hosts they too immediately appeared. This fellow, Stilez, deserves some kind of award for being the only person on Planet Earth to have figured this out and published a clear how-to. Quote:
Code:
client max protocol = default |
All times are GMT -5. The time now is 03:33 PM. |