Ошибка 0x800706BA с сообщением ‘Сервер RPC недоступен’ (The RPC Server is Unavailable) возникает при попытке удаленного управления, печати на сетевом принтере, запуске служб или обновлении Windows. RPC (Remote Procedure Call) — это фундаментальной службой Windows, от которой зависят десятки других компонентов. Разберем причины ошибки и способы ее устранения.
Главное:
- Служба ‘Удаленный вызов процедур (RPC)’ должна быть запущена и иметь тип запуска ‘Автоматически’
- Брандмауэр Windows может блокировать порты RPC (135, 137-139, 445), вызывая ошибку на удаленных компьютерах
- Служба ‘Модуль подготовки сетевых ресурсов’ (RPC Endpoint Mapper) критически важна для работы RPC
- Ошибка часто появляется после обновления Windows, когда службы сбрасываются на настройки по умолчанию
Что такое RPC и почему он важен
RPC (Remote Procedure Call) открывает путь к программам вызывать функции на другом компьютере или в другом процессе так, как будто они вызываются локально. Это фундаментальный механизм Windows, от которого зависят:
- Windows Update: загрузка и установка обновлений
- Печать на сетевых принтерах
- Удаленное управление компьютером (Remote Desktop, WMI, PowerShell Remoting)
- Работа служб (многие службы используют RPC для взаимодействия)
- Групповая политика в доменной среде
- Общий доступ к файлам и папкам
Код 0x800706BA означает, что клиент RPC не может связаться с сервером RPC. Это может быть локальная служба на том же компьютере или служба на удаленной машине в сети.
Ошибка проявляется по-разному в зависимости от контекста: при печати появляется сообщение о недоступности принтера, при обновлении Windows показывается код 0x800706BA, при удаленном управлении отклоняется подключение. Подробнее о решении проблем с обновлениями читайте в статье об управлении обновлениями.
Решение 1: проверить и запустить службы RPC
Три службы критически важны для работы RPC. Все три должны быть запущены.
Проверка через PowerShell:
Get-Service RpcSs,RpcEptMapper,DcomLaunch | Format-Table Name,DisplayName,Status,StartTypeОжидаемый результат:
| Служба | Описание | Статус | Тип запуска |
|---|---|---|---|
| RpcSs | Удаленный вызов процедур (RPC) | Running | Automatic |
| RpcEptMapper | Сопоставитель конечных точек RPC | Running | Automatic |
| DcomLaunch | Средство запуска процессов DCOM | Running | Automatic |
Если какая-то служба остановлена или отключена:
Set-Service RpcSs -StartupType Automatic
Start-Service RpcSs
Set-Service RpcEptMapper -StartupType Automatic
Start-Service RpcEptMapper
Set-Service DcomLaunch -StartupType Automatic
Start-Service DcomLaunchЕсли служба не запускается с ошибкой «Отказано в доступе», проверьте разрешения через реестр. Откройте regedit и перейдите к HKLMSYSTEMCurrentControlSetServicesRpcSs. Значение «Start» должно быть 2 (Автоматически). Если значение 4 (Отключено), измените на 2 и перезагрузите.
Решение 2: настроить брандмауэр для RPC
Если ошибка возникает при обращении к удаленному компьютеру, брандмауэр может блокировать порты RPC.
Порты, используемые RPC:
| Порт | Протокол | Назначение |
|---|---|---|
| 135 | TCP | RPC Endpoint Mapper |
| 137-139 | TCP/UDP | NetBIOS (для разрешения имен) |
| 445 | TCP | SMB (общий доступ к файлам) |
| 49152-65535 | TCP | Динамические порты RPC |
Разрешить RPC через брандмауэр Windows:
netsh advfirewall firewall set rule group="Удаленное управление рабочим столом" new enable=yes
netsh advfirewall firewall set rule group="File and Printer Sharing" new enable=yesИли создайте правило вручную для порта 135:
netsh advfirewall firewall add rule name="RPC Endpoint Mapper" dir=in action=allow protocol=TCP localport=135
netsh advfirewall firewall add rule name="RPC Dynamic Ports" dir=in action=allow protocol=TCP localport=49152-65535На удаленном компьютере также должны быть открыты эти порты. Проверьте доступность порта 135:
Test-NetConnection -ComputerName ИМЯ_КОМПЬЮТЕРА -Port 135Если TcpTestSucceeded показывает False, порт заблокирован брандмауэром или сетевым оборудованием.
Решение 3: проверить сетевое подключение и DNS
RPC использует имена компьютеров для установки соединения. Если DNS не может разрешить имя удаленного компьютера, RPC не работает.
Проверьте разрешение имени:
nslookup ИМЯ_КОМПЬЮТЕРА
ping ИМЯ_КОМПЬЮТЕРАЕсли nslookup не может разрешить имя, добавьте запись в файл hosts:
notepad C:WindowsSystem32driversetchostsДобавьте строку: 192.168.1.100 ИМЯ_КОМПЬЮТЕРА (замените IP и имя на реальные).
Проверьте сетевое подключение:
ipconfig /allУбедитесь, что:
- IP-адрес назначен (не APIPA 169.254.x.x)
- Шлюз по умолчанию доступен
- DNS-серверы указаны корректно
- Оба компьютера в одной подсети или маршрутизация настроена
Сбросьте сетевые настройки, если подключение нестабильно:
ipconfig /flushdns
netsh winsock reset
netsh int ip resetПосле сброса Winsock перезагрузите компьютер.
Решение 4: исправить реестр для RPC
Некоторые оптимизаторы системы и антивирусы изменяют параметры реестра, связанные с RPC. Проверьте и восстановите стандартные значения.
Проверьте настройки RPC в реестре:
reg query "HKLMSOFTWAREMicrosoftRpc"
reg query "HKLMSYSTEMCurrentControlSetServicesRpcSs"Стандартные значения для службы RpcSs:
reg add "HKLMSYSTEMCurrentControlSetServicesRpcSs" /v "Start" /t REG_DWORD /d 2 /f
reg add "HKLMSYSTEMCurrentControlSetServicesRpcSs" /v "ObjectName" /t REG_SZ /d "NT AUTHORITYNetworkService" /fДля службы RpcEptMapper:
reg add "HKLMSYSTEMCurrentControlSetServicesRpcEptMapper" /v "Start" /t REG_DWORD /d 2 /fДля службы DcomLaunch:
reg add "HKLMSYSTEMCurrentControlSetServicesDcomLaunch" /v "Start" /t REG_DWORD /d 2 /fПосле изменения реестра перезагрузите компьютер. Если изменения не помогли, проверьте системные файлы:
sfc /scannow
DISM /Online /Cleanup-Image /RestoreHealthЭти команды восстановят поврежденные системные файлы, включая компоненты RPC. Подробнее об основах PowerShell для автоматизации диагностики.
Решение 5: исправить ошибку RPC при печати
Ошибка 0x800706BA при печати означает, что компьютер не может связаться с сервером печати или локальная служба диспетчера печати не работает.
Проверьте службу диспетчера печати:
Get-Service Spooler | Format-Table Name,Status,StartTypeЕсли служба остановлена, запустите ее:
Start-Service Spooler
Set-Service Spooler -StartupType AutomaticОчистите очередь печати:
Stop-Service Spooler
Remove-Item -Path "C:WindowsSystem32spoolPRINTERS*" -Force
Start-Service SpoolerДля сетевого принтера проверьте:
- Компьютер, к которому подключен принтер, включен и доступен в сети
- На сервере печати запущена служба Spooler
- Общий доступ к принтеру включен
- Брандмауэр на сервере разрешает входящие подключения на порт 135 и 445
Переустановите драйвер принтера:
- Откройте «Параметры» и перейдите в «Bluetooth и устройства» и затем «Принтеры и сканеры»
- Удалите проблемный принтер
- Нажмите «Добавить устройство» для повторной установки
Решение 6: исправить ошибку RPC в Windows Update
Если ошибка 0x800706BA появляется при обновлении Windows, службы обновления не могут связаться с компонентами RPC.
Полный сброс компонентов Windows Update с проверкой RPC:
net stop wuauserv
net stop cryptSvc
net stop bits
net stop msiserver
net stop RpcSs
net start RpcSs
net start wuauserv
net start cryptSvc
net start bits
net start msiserverПеререгистрируйте DLL-файлы Windows Update:
regsvr32 /s wuapi.dll
regsvr32 /s wuaueng.dll
regsvr32 /s wucltux.dll
regsvr32 /s wups.dll
regsvr32 /s wups2.dll
regsvr32 /s wuweb.dll
regsvr32 /s atl.dll
regsvr32 /s urlmon.dll
regsvr32 /s mshtml.dllЕсли ошибка сохраняется, скачайте обновление вручную из каталога обновлений Microsoft и установите его offline.
В крайнем случае используйте сбросе Windows с сохранением файлов для восстановления всех компонентов системы.
Диагностика RPC в корпоративной среде
В доменной среде ошибка RPC часто связана с групповыми политиками, доменными контроллерами или сегментацией сети.
Проверьте подключение к контроллеру домена:
nltest /dsgetdc:ИМЯ_ДОМЕНА
dcdiag /s:ИМЯ_КОНТРОЛЛЕРАПроверьте репликацию Active Directory (с контроллера домена):
repadmin /showrepl
repadmin /replsumТипичные проблемы в корпоративной среде:
- Файервол между подсетями блокирует динамические порты RPC
- Рассинхронизация времени между компьютером и контроллером домена (допуск 5 минут)
- Групповая политика ограничивает входящие подключения RPC
- DNS-запись компьютера устарела или указывает на неправильный IP
Для ограничения динамических портов RPC (облегчает настройку файервола) добавьте в реестр на обоих компьютерах:
reg add "HKLMSOFTWAREMicrosoftRpcInternet" /v "Ports" /t REG_MULTI_SZ /d "5000-5100" /f
reg add "HKLMSOFTWAREMicrosoftRpcInternet" /v "PortsInternetAvailable" /t REG_SZ /d "Y" /f
reg add "HKLMSOFTWAREMicrosoftRpcInternet" /v "UseInternetPorts" /t REG_SZ /d "Y" /fЭто ограничит диапазон динамических портов RPC до 5000-5100, что упрощает настройку правил файервола. Подробнее в документации Microsoft.
Проверенные конфигурации
- Windows 11 23H2 + отключенная служба RpcSs оптимизатором: включение службы и перезагрузка решили проблему
- Windows 10 22H2 + Kaspersky: добавление порта 135 в исключения файервола антивируса устранило ошибку при печати
- Windows Server 2022 + корпоративный файервол: ограничение динамических портов RPC диапазоном 5000-5100 и открытие этих портов на файерволе решило проблему
Полезные ссылки и материалы
Для решения задач, описанных в этой статье, могут пригодиться:
- Руководство по настройке очистки диска C
- Руководство по настройке Windows 11
Официальная документация: Microsoft Learn: управление Windows.
Часто задаваемые вопросы
Ошибка 0x800706BA появляется при каждой загрузке Windows. Как исправить навсегда?
Проверьте тип запуска служб RpcSs, RpcEptMapper и DcomLaunch. Все три должны быть ‘Автоматически’. Также удалите сторонние оптимизаторы, которые могли отключить эти службы.
Можно ли отключить RPC для безопасности?
Нет. RPC представляет собой фундаментальной службой Windows. Ее отключение приводит к неработоспособности системы. Для безопасности ограничьте доступ к портам RPC через брандмауэр, а не отключайте службу.
Ошибка RPC появляется только при подключении к определенному компьютеру. Что делать?
Проверьте брандмауэр и службы RPC на том компьютере. Убедитесь, что оба компьютера видят друг друга по имени (nslookup). Проверьте, что порт 135 открыт на удаленном компьютере.
0x800706BA и 0x800706BE: в чем разница?
0x800706BA означает ‘Сервер RPC недоступен’ (проблема подключения). 0x800706BE означает ‘Удаленный вызов процедур завершился с ошибкой’ (сервер доступен, но не смог выполнить запрос). Причины и решения различаются.



