Время на прочтение
4 мин
Количество просмотров 17K
Хотя технология NetBIOS устаревшая, глючная и подвержена атакам хакеров, Microsoft все равно продолжает ее поддерживать несмотря на то, что много раз заявляла об окончании поддержки.
Хочу рассказать свою историю о том, как Microsoft в очередной раз подкинула проблем на ровном месте.
Я был приглашен в одну организацию «NONAME» для решения проблемы с сетевым окружением. Проблема в организации возникла после приобретения нового персонального компьютера с установленной Windows 10 (часть компьютеров исчезла из сетевого окружения). Точнее, были видны все устройства с методом обнаружения WSD (Web Services on Devices), а машины с методом обнаружения NetBIOS канули в Лету.
Компьютерный парк в организации состоит из 12 машин, 2 МФУ и 1 принтера. Персональные компьютеры используются как печатные машинки, выделенных серверов нет, а Active Directory и Linux вообще матерные слова. По большому счету им оно и не надо. Операционная система в основном Windows 7 и пару Windows 8. Обмен документами через общие папки. Рабочая группа у всех одна.
В процессе общения с пользователями было выяснено, что все машины в организации на ночь выключаются и вновь приобретённый компьютер включается в 99,9% случаях первым, т.е. 100% становится Master Browser в сети.
Первым делом у него была остановлена служба «Браузер компьютеров», что привело к проведению новых выборов Master Browser. Им стала машина с операционной системой Windows 8 и через некоторое время все устройства стали снова видны в сетевом окружении. Стало понятно, что виновата новая машина с Windows 10 (хотя это было понятно сразу, но чистота эксперимента превыше всего). Следующим шагом стала настройка всех машин как клиентов (чтоб не участвовали в выборах Master Browser). Машина с Windows 10 была настроена как Master Browser (всегда выигрывает выборы) и одна машина с Windows 7 как Backup Browser. Как это делается описывать не буду – в сети море статей по этому вопросу. После этого все хосты были перезапущены и первой включена машина с Windows 10, т.е. эта машина стала снова Master Browser. Результат: ничего не изменилось, часть компьютеров не видна (да и не должно было ничего измениться). Но было замечено, что машина с Windows 10 (Master Browser) видит в сетевом окружении все устройства, как WSD, так и NetBIOS. Мистика!!!! Сразу же после этого на машину с Windows 10 был установлен сниффер сетевых пакетов (в начале Wireshark, который мало помог, затем старенький Microsoft Network Monitor 3.4 (заточен под Windows)). Сниффер показал, что при запросе от клиентов у Master Browser (машина с Windows 10) списка серверов, Windows 10 возвращает ответ с ошибкой «Сервис не запущен». Были перепроверены все необходимые взаимосвязанные сервисы. Проверены настройки брандмауэра, который был затем отключен. Результат нулевой, все тоже самое – ошибка «Сервис не запущен».
Начались поиски на сайте Microsoft хоть какой-либо информации по данному вопросу и после 3-х дневного поиска наталкиваюсь на статью на сайте под названием «Рефакторинг процесса узла службы», которая при открытии меняет название на «Изменения для группировки узла службы в Windows 10» (Ссылка на оригинал статьи: https://docs.microsoft.com/ru-ru/windows/application-management/svchost-service-refactoring), которая гласит:
«Начиная с Windows 10 Creators Update версии 1703, службы, которые были ранее сгруппированные, будут разделены— каждая из них будет выполняться в собственном процессе SvcHost. Это изменение выполняется автоматически для систем с более чем 3,5 ГБ ОЗУ под управлением номера SKU клиентского рабочего стола. В системах с объемом ОЗУ 3,5 ГБ или меньше мы будем продолжать группировать службы в общий процесс SvcHost.».
Запускаю диспетчер задач и вижу, что почти все службы разгруппированы, т.е. запущены в отдельных процессах svchost.exe, да и памяти на машине с Windows 10 гораздо больше, чем 3,5 Гб (8 Гб).
А вот это уже горячо. Искусственно подрезаю размер памяти до 3484 МБ в настройках Windows 10. Перегружаю устройства и «бинго!» — все стало на свои места: машина с Windows 10 является Master Browser и на всех хостах в сетевом окружении правильно отображается список всех сетевых устройств, вне зависимости от метода обнаружения.
Осталось за малым: нужно вернуть настройки памяти для Windows 10 в исходное состояние и сохранить работоспособность Master Browser. Понятно, что для сохранения работоспособности Master Browser необходимо снова сгруппировать службы, отвечающие за правильную работу Master Browser, т.е. они должны быть в одном адресном пространстве.
Делается это следующим образом (описание в вышеупомянутой статье на сайте Microsoft). Две основные службы необходимые для правильной работы Master Browser это – служба «Браузер компьютеров» и служба «Сервер». Для их группировки в соответствующих ключах службы в HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
необходимо создать или изменить значение ключа SvcHostSplitDisable (REG_DWORD)
в 1, т.е. проделать следующее:
1. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer] "SvcHostSplitDisable"=dword:00000001
2. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Browser] "SvcHostSplitDisable"=dword:00000001
После проделанных манипуляций с реестром нужно выключить все хосты, а затем включить машину с Windows 10 первой и затем все остальные. Теперь в диспетчере задач можно увидеть, что эти две службы снова сгруппированы, т.е. работают в одном адресном пространстве.
Теперь все работает красиво. Весь этот процесс можно сделать в виде скрипта Powershell.
Исходя из выше сказанного, можно сделать следующие выводы:
-
В Windows 10 32-bit для сборки 1703 и выше данная проблема не существует, т.к. Windows использует меньше 4 Гб при своей работе.
-
В Windows 10 64-bit для сборки 1703 и выше данная проблема также не существует, если размер оперативной памяти меньше или равно 4Гб, но если вдруг Вы решите добавить оперативной памяти в эту систему, то получите побочный эффект (спасибо Microsoft). После перезагрузки система увидит, что памяти стало больше 4 Гб и автоматически разгруппирует службы и сетевое окружение перестанет правильно работать и догадаться, что это произошло из-за увеличения количества памяти будет очень затруднительно. В случае размера оперативной памяти более 4 Гб проблема существует и ее «лечение» необходимо выполнить вышеописанным способом.
-
Для сборок Windows 10 ниже 1703 данная проблема не существует вне зависимости от разрядности Windows и размера оперативной памяти для 64-bit версии.
-
Описанная проблема актуальна и для Windows 11
I was directed by a response from the support centre of Microsoft to check a PC which was unable to see other network computers in the Network tab in File explore.
They suggested that a number of services should be changed to Automatic (Delayed Start)
These included
a. Computer Browser (Browser)
b. Function Discovery Provider Host (FDPHOST)
c. Function Discovery Resource Publication (FDResPub)
d. Network Connections (NetMan)
e. UPnP Device Host (UPnPHost)
f. Peer Name Resolution Protocol (PNRPSvc)
g. Peer Networking Grouping (P2PSVC)
h. Peer Networking Identity Manager (P2PIMSVC)
On the machine I was having trouble with there was no service named Computer Browser (Browser).
I checked the other PC and found the service there, but it would not allow the Start type to be changed giving an error message.
<quote>
The delayed auto-start flag could not be set.
Error 87: The parameter is incorrect
</quote>
My question is why did the two PCs have different settings and in one case a missing one?
The two PCs were updated to Win 10 Pro 1803 but by different methods. The problematic one by allowing the Windows Update to 1803 to proceed and then applying all the available cumulative and other updates to proceed. The one with the error 87. by using the
Windows.iso setup.exe to run and allowing any updates to be found and applied.
The other changes appear to have fixed the problem of not seeing other machines on the LAN.
Alan Cameron
The Computer Browser Service is no longer exist in new version of Windows 10, Windows 11 and Windows Server 2019 and higher. Because SMBv1 is disabled by default.
In my case, I got the following error when remote push a Symantec Endpoint package to clients.
The Computer Browser service is no longer available for Windows Server 2019 and higher editions, which is a required service for remote installation using the web console.
Enable the Computer Browser Service on Windows
To enable that service, you need to enable SMBv1 to enable the Computer Browser Service for the old apps.
Note
Note: While disabling or removing SMBv1 might cause some compatibility issues with old computers or software, SMBv1 has significant security vulnerabilities, and we strongly encourage you not to use it.
1. Open an elevated PowerShell window.
2. Run the following command then restart your machine to enable SMBv1:
Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
PS C:\Users\Administrator> Get-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
FeatureName : SMB1Protocol
DisplayName : SMB 1.0/CIFS File Sharing Support
Description : Support for the SMB 1.0/CIFSl, and the Computer Browser protocol.
RestartRequired : Possible
State : Enabled
CustomProperties :
ServerComponent\Description : Support for the SMB 1.0/CIFS , and the Computer
Browser protocol.
ServerComponent\DisplayName : SMB 1.0/CIFS File Sharing Support
ServerComponent\Id : 487
ServerComponent\Type : Feature
ServerComponent\UniqueName : FS-SMB1
ServerComponent\Deploys\Update\Name : SMB1Protocol
3. Once the machine restarted, you can check the Computer Browers service status using PowerShell.
PS C:\Users\Administrator> Get-Service -Name "*browser*"
Status Name DisplayName
------ ---- -----------
Running Browser Computer Browser
Or you can get the status of the service using Services (services.msc).
Remote Push without SMBv1
SMBv1 has significant security vulnerabilities, so you should use the following method to remote push without enable SMBv1.
1. Open Windows Services (services.msc) then turn of the following services:
- Function Discovery Provider Host
- Function Discovery Resource Publication
- Remote Procedure Call (RPC)
- Remote Registry
$services = @("fdPHost","FDResPub","RpcSs","RemoteRegistry")
foreach ($service in $services) { Set-Service $service -StartupType Automatic }
foreach ($service in $services) { Start-Service $service }
Note
Note: If you get the error cannot be configured due to the following error: Access is denied. The service startup type is disabled, you must enable it first using this command Start-Service -Name service_name.
Check status of the services and be sure all services are running.
ForEach ($service in $services) { Get-Service $service}
----------------------------------------------------------------
Status Name DisplayName
------ ---- -----------
Running fdPHost Function Discovery Provider Host
Running FDResPub Function Discovery Resource Publica...
Running RpcSs Remote Procedure Call (RPC)
Running RemoteRegistry Remote Registry
2. Turn on Network Discovery:
On the Services applet, turn on the following:
- SSDP Discovery
- UPnP Device Host
- DNS Client
$services = @("SSDPSRV","upnphost","Dnscache")
foreach ($service in $services) { Set-Service $service -StartupType Automatic }
foreach ($service in $services) { Start-Service $service }
Status Name DisplayName
------ ---- -----------
Running SSDPSRV SSDP Discovery
Running upnphost UPnP Device Host
Running Dnscache DNS Client
3. Turn on File and Printer Sharing using PowerShell.
Set-NetFirewallRule -DisplayGroup "File And Printer Sharing" -Enabled True -Profile Any
Go to Control Panel | Network and Sharing Center | Change Advanced Sharing Settings. to verify the changes, go into effect.
Finally, I tried to remote push again and the error was gone.
Computer Browser Service is a feature of Microsoft Windows to get a list of computers and shared resources on a network and supplies this list to the computers on the network. If this service is stopped or disabled or not installed, this list will not be updated and any services or tools that explicitly depend on this service will not work.
Summary
- Computer Browser Service is deprecated
- Explorer Network Browsing – workaround
- NET VIEW command
- Install the Computer Browser Service
The Computer Browser service is a legacy service that depends on SMBv1 protocol (SMBv1 client/server components). Microsoft publicly deprecated the SMBv1 (Server Message Block version 1) protocol in 2014.
Since Windows 10 (1709), Windows Server (1709), and later versions, the SMB 1.0/CIFS File Sharing Support component (which includes the Computer Browser service) is an optional component, and it is no longer installed by default. You can refer to this post to know more details about SMBv1 support.
For security reasons, Microsoft is working hard to persuade users not to use SMB v1. For more details, see this post: Stop using SMB1/SMB1 isn’t safe, not modern, and not efficient.
Network Explorer and NET VIEW command will not work without Computer Browser service
As already mentioned, if the Computer Browser service is not installed or stopped, the services or tools which depend on this service will not work. The following listed tools and APIs will not work without this service.
- Explorer Network Browsing (aka “Network Neighborhood”)
- NET VIEW command (Available in PowerShell and Command Prompt)
- NetServerEnum API function – List Computers on a Network using C#
Explorer Network Browsing – workaround
The Computer Browser service relies on the SMBv1 protocol to populate the Windows Explorer (aka “File Explorer”) Network node. Without this service, you will not be able to view the computers and shared resources on the current network.
However, if you still want to use the Explorer Network, you can enable the WS-Discovery protocol as a workaround that is recommended in the Microsoft Support article. You can follow the below steps on your Windows-based computers that no longer use SMBv1.
- Start the “Function Discovery Provider Host” and “Function Discovery Resource Publication” services, and then set them to Automatic (Delayed Start).
- When you open Explorer Network, enable network discovery when you’re prompted.
Note: This needs to be done on all Windows computers.
NET VIEW command
The above workaround might not work for the net view command, it will only enable the network browsing in Windows Explorer (File Explorer).
The net view command will return the following error message if the Computer Browser service is not available or not running.
PS C:\> net view
System error 6118 has occurred.
The list of servers for this workgroup is not currently available
Install and Enable the Computer Browser service/SMBv1 feature
As already mentioned, for security reasons, Microsoft is working hard to persuade users not to use SMB v1 (which includes the Computer Browser service). But if you really need it, you can enable it in a client machine by following the below steps.
- Open the Control Panel -> Programs -> Turn Windows Features On or Off
- Scroll down and select SMB 1.0/CIFS File Sharing Support and click OK.
- Finally, restart the machine and check the service.
Make sure that Network Discovery is allowed
by Cesar Cadenas
Cesar has been writing for and about technology going on for 6 years when he first started writing tech articles for his university paper. Since then, his passion… read more
Updated on
- The Computer Browser Service is a rather old Windows service used in some networks to monitor other computers.
- Some users have reported encountering an error that prevents them from viewing other machines.
- To solve this, you’ll have to double-check if certain functions work correctly.
XINSTALL BY CLICKING THE DOWNLOAD
FILE
Computer Browser Service is one of several services on Windows 10 and 11 that gives a list of all computers and shared resources on a network. Without it, you won’t be able to see those computers.
It runs on the SMBv1 protocol which is pretty old at this point, and Microsoft itself even recommends not using it. In fact, the company tells users to disable it. However, some networks still use it for connecting to other computers and seeing what’s going on.
What causes Computer Browser Service errors?
A Computer Browser Service error is actually pretty rare, so it’s a little difficult to pin down the exact reason why it happens. It involves parts of Windows that are old and not commonly used.
The following is a list of the potential reasons why this happens:
How we test, review and rate?
We have worked for the past 6 months on building a new review system on how we produce content. Using it, we have subsequently redone most of our articles to provide actual hands-on expertise on the guides we made.
For more details you can read how we test, review, and rate at WindowsReport.
- Your computer is infected with malware or a virus: This is one of the likely reasons. We recommend downloading some anti-malware software and cleaning out your computer.
- An app is causing compatibility issues: This is the other likely reason, especially if you downloaded something from an unofficial source. Uninstall it as soon as you can.
- Files on your computer are damaged: To address this problem, you’ll need to run some DISM commands. Don’t worry; it’s really easy to do. It’s not at all complicated.
- There’s something wrong with another computer: Since Computer Browser Services requires a connection to another machine, check what’s wrong with that computer.
Because this error is so rare there aren’t many solutions out there. It’s a fairly rare issue to have. But what solutions do exist will have you going into either the Control Panel or Services app.
What can I do if the Computer Browser Service failed to start?
This problem affects certain Windows functions, so it can get a little confusing. But before you go into the complex solutions, try out the simpler tips below:
- Run your computer’s troubleshooter feature to have it seek out the problem and automatically fix it at that moment.
- Conversely, you can also use a repair tool to do it for you if you prefer a third-party option. One of the best in our experience is Fortect.
- Also, it’s recommended that you contact the network administrator, if there is one, with help if it’s another computer failing.
- Perform a clean boot which will restart Windows with a minimal amount of drivers and startup programs working. If your computer works fine after this, you may have a problematic app.
1. Double-check certain functions on Services
- In the Windows Search bar, bring up the Services app.
- Scroll down and locate DNS Client. See if it’s running. If not, right-click and select Start.
- Now check the following three services and see if they’re running: Function Discovery Resource Publication, SSDP Discovery, and UPnP Device Host.
- And like before, if they’re not running, right-click them then select Start.
2. Ensure Network Discovery is allowed
- Launch Windows Defender Firewall.
- Click Allow an app or feature through Windows Defender Firewall on the left-hand side of the window.
- Click the Change settings button, and in the menu below, locate Network Discovery.
- Next to Network Discovery, click the box under Domain and Private. For the latter, do so if your private network is secure.
3. Turn on the Computer Browser service
- Open the Control Panel and go to Network and Sharing Center. If you don’t see it, set the View By setting to Large Icons.
- Click Change advanced sharing settings.
- Turn on File and printer sharing.
- Now in the Windows Search bar, bring up the Services app.
- Locate the Computer Browser service and double-click it to open the Properties window.
- In the Properties window, set the Startup Type to Manual then click Apply.
- Now change the Startup Type again to Automatic. Click Apply then OK to finish up.
4. Enable the SMBv1 feature
- In the Control Panel, click Programs and Features.
- Click Turn Windows feature on or off on the left-hand side.
- Scroll down and locate SMB 1.0/CIFS File Sharing Support.
- Click the box to SMB 1.0/CIFS File Sharing Support to activate, then select the OK button.
There are tons of networking errors on Windows that cause service problems. For that reason, we’re only going to focus on two of them.
The first one revolves around what to do when Google Chrome fails a download. This error can happen because of an overbearing anti-virus interrupting the service.
Or the Windows Attachment Manager isn’t working. The other one is Error Code 0x800704cf which is a problem that prevents you from accessing a network for whatever reason.
Solutions for this can be complex as you may have to change the DNS settings or reset your machine’s proxy.
Feel free to leave a comment below if you have any questions about other network problems. Leave a suggestion about guides that you’d like to see or information on other Windows errors.