Well I goofed...not OpenELEC, not sure why the heck I said that. Was up all night at this thing. It's CoreELEC I test a nightly build of Kodi 18. Sorry about that. Before doing this I read all about OpenELEC and how LibreELEC came abouts so perhaps that was still stuck in my head.
Drove me nuts till I found this.
I just updated my kodi to 18 and LE to 9 and... "smb wasn't working". I had to force smb1 min/max in kodi setting and "legacy security" to make it work again.
The SMB client in LE 8.2 based releases defaults to SMB2 and SMB2 does not support browsing so this will always fail. If your server supports SMB2+ you can configure it manually - use an authenticated connection (use username/password). If it does not support SMB2 your only option is to force Kodi to use SMB1 .. set the SMB client to min and max SMB1. If it's really crap and ancient, you might need to set the legacy security option.
I had to used this setting...
So to be more secure i should use SMB2 min, ok, but i have some questions :
Apart for security, is there other benefits to use SMB2 instead of SMB1 ? I read about better speed; is it real ? Can i expect faster connexion when i watch a movie on my Kodi client connected to a smb share on my Windows 7 "server" ? I think i was in SMB 1 since a lot of years; all was working fine exept sometimes some "buffering".... Could it be thing from past with SMB 2 ?
Which are really security risks using SMB 1 for a "LAN" use ? It's a "local" area network, isn't it ? So i think that if i don't share smb over internet (i never tried this) there isn't risks ? I used guest connexion to not have to enter credentials when i browse my lan shares.
Am i wrong ? Could someone access to my SMB 1 shares (guest access) from internet ?!
I want to be sure it is worth to use SMB2 (a little more effort to make things works...) instead of my actual SMB1 and legacy security (it is working right now ).
Go read about "WannaCry" ..
Ok, i did it. I read a lot about wanna cry, smbv1, etc. I read that even if a device is patched for wannacry, it is recommended to disable SMBv1 in case of a new attack, because SMBv1 is very old.
Beside my LE devices, i also updated Kodi on a Windows client. I thought it will have the same requirements that LE to access my SMB sources but no : it access it without prompt me to enter name and password. If i undesrtand : it means it is using SMBv1 (i didn't disabled SMBv1 on my Windows 7 server, not yet ).
My questions :
1- Is there a way to display in kodi which smb version is used when i play a video from a smb share ?
2- Since i updated LE to version 9, i have "buffer" issue : video is often paused somes seconds and then payed again (i never had this issue, or only sometimes before LE9) : can it be related to changes in SMB ? (something else ?)
3- If i use SMBv2/3 instead of SMBv1 in Kodi : wil i really see an improved speed ? (access to sources, start to play faster, etc.)
4- If i'm actually using SMBv1 on my windows client, will it use SMBv2 as soon as i will edit source to enter my name and password for the smb source ?
2. It's possible but normally impossible to pin down to a specific thing. SMB2/3 will give faster throughput (an incentive to update)
3. Our testing showed a positive improvement. All testing is subjective to environments.. YMMV.
4. Honestly no idea how Windows handles version negotiation. Kodi on Windows uses the native SMB capabilities of the OS whereas on other OS (Linux/Android/macOS etc.) we use smbclient (part of Samba).
Thanks for all your clear reply
Is SMB the best choice for sharing sources on my Windows 7 PC or should i consider other sharing protocol instead ? I read a little about NFS; but i think it isn't native on Windows.
NFS is marginally more efficient but not natively supported on Windows. I've used SMB for years without issues .. if it has problems the issue is configuration or inadequate bandwidth.
Ok, thanks, i stay with SMB
I found a way to display SMB version used on Windows, with this command on PowerShell : Get-SmbConnection
As soon as i start playing a video on my windows client (Kodi 18), i can see the "dialect" used, and it show "2.1" :
I'm surprised, i thought it will be dialect "1" since i'm not "authentificated" (credential used and shown in powershell is the one from my PC client; which isn't the same on my WIndows 7 server) :
The current complexity is caused by Microsoft not ourselves, but it's not particularly hard to configure things as long as you stick to a couple of basic principles. The main one is that all connections must be authenticated with a username/password.
Should i understand that authentificated is a condition to use SMBv2 only on LE 9 client, not on Windows client ?
As I said before, I have no knowledge on how the Windows stuff works.