2009-05-30, 08:36
Anyone who's recently updated their PC to Windows 7 RC probally has noticed issues with SMB Shares when connecting to shares from the xbox, either not connecting at all and requiring password to reports of dropping connection randomly.
After much frustration and 10,000 different suggestions to try that didn't work in getting Windows 7 SMB shares to work with XBMC for Xbox, I finally found one post talking about MTU settings on the PC being the culprit.
Sure enough, on my PC that did the trick. But since I changed many other settings, I applied the MTU change on a 2nd PC that also did not work running windows 7 as the ONLY change - and SMB shares are now working as they once did in Windows XP. So i've confirmed it is solely the MTU issue causing SMB to not work and all the other suggestions are not needed.
To apply the fix, open start menu, and in the search box type cmd but don't press enter.
On the search results, right click on cmd.exe and click Run as Administrator
click yes to UAC permission prompt.
Once Command Prompt is open, paste the following command
This disables auto tuning MTU values which is whats causing the problem (XP and earlier used static MTU)
But now you need to go SPECIFY the MTU to use.
press Windows+R to open Run, and type regedit
Click yes on the UAC permission prompt and regedit will open.
On the left you will see a tree structure of folders, you want to open the following path:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters\Interfaces\
So in other words. you click the HKEY_Local_Machine folder, then you click the SYSTEM folder, then the CurrentControlSet folder... etc until your at Interfaces.
Under interfaces you will see 1 or more folders with a bunch of random numbers and letters
Theres no easy way to tell which you want, but when you click on 1 you should see alot of data popup on the right.
If you know your computers private IP address, simply click each one until you see the one that has DhcpIPAddress that matches your IP.
If you can't figure out which one is the one you want, simply do the next step for every single one under Interfaces.
When you click on your interface, go to Edit -> New -> DWORD (32 bit) Value
enter the name "MTU" in all capitols (without the " " around it).
Now it'll be on the list, double click it to edit it.
On the entry box, you should see it have HEX selected, enter the value:
If you wish to input DEC (Decimal, normal numbers), use 1492 instead.
Press OK.
Now on the MTU entry it should look like this
If you need to repeat this for every interface, do this now. Just need to add the MTU key with value of 1492 for your interfaces.
Once you are finished, reboot and you can now access smb://user:pass@yourPCname/sharename/ as normal, or simply smb://yourPCname/sharename/ if you have user/pass saved under Network settings in XBMC Settings.
I don't take credit for this fix, I found it on some forum god knows where, but I figured id write up a noob friendly guide so hopefully a mod will sticky it to help everyone else having this problem. (Searching for SMB Share problems on vista/windows 7 will result in tons of results, many people are having this issue)
After much frustration and 10,000 different suggestions to try that didn't work in getting Windows 7 SMB shares to work with XBMC for Xbox, I finally found one post talking about MTU settings on the PC being the culprit.
Sure enough, on my PC that did the trick. But since I changed many other settings, I applied the MTU change on a 2nd PC that also did not work running windows 7 as the ONLY change - and SMB shares are now working as they once did in Windows XP. So i've confirmed it is solely the MTU issue causing SMB to not work and all the other suggestions are not needed.
To apply the fix, open start menu, and in the search box type cmd but don't press enter.
On the search results, right click on cmd.exe and click Run as Administrator
click yes to UAC permission prompt.
Once Command Prompt is open, paste the following command
Code:
netsh int tcp set global autotuninglevel=disabled
This disables auto tuning MTU values which is whats causing the problem (XP and earlier used static MTU)
But now you need to go SPECIFY the MTU to use.
press Windows+R to open Run, and type regedit
Click yes on the UAC permission prompt and regedit will open.
On the left you will see a tree structure of folders, you want to open the following path:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters\Interfaces\
So in other words. you click the HKEY_Local_Machine folder, then you click the SYSTEM folder, then the CurrentControlSet folder... etc until your at Interfaces.
Under interfaces you will see 1 or more folders with a bunch of random numbers and letters
Theres no easy way to tell which you want, but when you click on 1 you should see alot of data popup on the right.
If you know your computers private IP address, simply click each one until you see the one that has DhcpIPAddress that matches your IP.
If you can't figure out which one is the one you want, simply do the next step for every single one under Interfaces.
When you click on your interface, go to Edit -> New -> DWORD (32 bit) Value
enter the name "MTU" in all capitols (without the " " around it).
Now it'll be on the list, double click it to edit it.
On the entry box, you should see it have HEX selected, enter the value:
Code:
5d4
Press OK.
Now on the MTU entry it should look like this
Code:
MTU REG_DWORD 0x000005d4 (1492)
If you need to repeat this for every interface, do this now. Just need to add the MTU key with value of 1492 for your interfaces.
Once you are finished, reboot and you can now access smb://user:pass@yourPCname/sharename/ as normal, or simply smb://yourPCname/sharename/ if you have user/pass saved under Network settings in XBMC Settings.
I don't take credit for this fix, I found it on some forum god knows where, but I figured id write up a noob friendly guide so hopefully a mod will sticky it to help everyone else having this problem. (Searching for SMB Share problems on vista/windows 7 will result in tons of results, many people are having this issue)