Ошибка “
Сервер RPC недоступен
” (
The RPC server is unavailable
) появляется в Windows при ошибке коммуникации между двумя компьютерами по сети, когда компьютер (клиент RPC) не может подключиться к удаленному компьютеру (сервер RPC). В результате программа, которую вы запустили, не работает и возвращает ошибку, т.к. не можете получить данные с удаленного сервера. В этой статье мы разберем наиболее частые проблемы, которые могут препятствовать нормальному взаимодействию компьютеров через сеть по протоколу RPC.
Протокол RPC (Remote Process Call, удаленный вызов процедур) – это распространённый протокол взаимодействия приложений в локальной сети. В основном он используется для обмена данными с удалённым компьютерам, но есть некоторые программы, которые используют RPC для локальных взаимодействий между приложением и запущенной локально службой.
В типовом сеансе клиент RPC подключается к службе RPC Endpoint Mapper (сопоставления конечных точек) на RPC сервере по TCP порту 135 и запрашивает номер порта, на котором запущено нужное ему RPC приложение (служба). Служба RPC Endpoint Mapper возвращает клиенту номер динамического RPC порта, назначенного указанной службе при запуске. Затем RPC клиент взаимодействует с RPC службой по указанному TCP порту.
Если RPC клиент не смог подключиться к RPC серверу, в приложении появится ошибка:
The RPC server is unavailable
В современных версиях Windows (начиная с Windows Vista/2008) используется следующий диапазон динамических RPC портов (Dynamic RPC Port range): 49152 — 65535 (в Windows Server 2003 / XP и ниже использовался другой диапазон 1024 – 65535.
Наиболее распространённые проблемы, из-за которых не работает RPC взаимодействие между компьютерами:
- Удаленный компьютер выключен;
- Не запущены службы RPC на сервере;
- Вы пытаетесь подключиться к RPC серверу по неправильному имени (или как вариант, DNS имени сервера соответствует неверный IP адрес);
- Используются некорректные настройки сетевого подключение на клиенте или сервере;
- RPC трафик между клиентом и сервером блокируется файерволом;
Проверка доступности удаленного компьютера
Убедитесь, что удаленный компьютер включен, отвечает на ping по имени и IP адресу. Если RPC сервер не доступен по имени, проверьте корректность DNS записей и попробуйте сбросить DNS кэш на клиенте:
ipconfig /flushdns
.
Если имя компьютера, на котором запущен RPC-сервер недавно изменилось, попробуйте перерегистрировать его в DNS Active Directory:
ipconfig /registerdns
Проверка служб RPC
Проверьте, что на сервере запущены службы, которые необходимы для обработки входящих RPC подключений:
- Откройте консоль управления службами (services.msc);
- Убедитесь, что следующие службы запущены (статус Running), а тип их запуска – автоматический: Remote Procedure Call (RPC), RPC Endpoint Mapper и DCOM Server Process Launcher;
Если RPC службы отключены и не запускаются, попробуйте активировать их через реестр. Найдите ветки этих служб в реестре и измените значение параметра Start на 2 (автоматический запуск службы):
- Удаленный вызов процедур (RPC) — ветка реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\RpcSs
- Сопоставитель конечных точек RPC — HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\RpcEptMapper
- Модуль запуска процессов DCOM-сервера — HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DcomLaunch
RPC блокируется файерволом (брандмауэром)
Убедитесь, что RPC трафик между компьютерами не блокируется файеволом. Если у вас используется Windows Defender Firewall with Advanced Security, нужно проверить или создать правила, разрешающие RPC трафик. Одно правило, разрешающее доступ к службе RPC Endpoint Mapper по порту TCP/135; второе должно разрешать доступ к RPC службе, которая вам нужна по динамическим RPC портам (RPC Dynamic Ports). Правила нужно создать для всех трех сетевых профилей: Domain, Private и Public.
Проверьте с клиента, что на RPC сервере доступен 135 порт TCP (должен слушаться службой RPC Endpoint Mapper). Можно проверить доступность порта из PowerShell:
Test-NetConnection 192.168.1.201 -port 135
Если RPC порт доступен, должен появится ответ
TcpTestSucceeded:True
.
Вы можете получить список конечных точек RPC (сервисов и приложений), которые зарегистрированы на удаленном компьютере и анонсируются службой RPC Endpoint Mapper с помощью утилиту PortQry
portqry -n 192.168.1.201 -p tcp -e 135
В выводе PortQry можно найти номер порта, назначенный нужной вам службе RPC (она запущена?) и проверить, что этот порт не блокируется с клиента.
Если у вас используется сторонний файервол/антивирус, убедитесь, что он не блокирует RPC трафик и умеет корректно обрабатывать трафик динамических RPC портов.
Проверка сетевых протоколов и настроек
Убедитесь, что на вашем компьютере заданы корректные сетевые настройки: IP адрес, шлюз, маска сети, настройки DNS серверов (можно проверить настройки сети из PowerShell). Проверьте, что в настройках сетевого адаптера, используемого для подключения включены протоколы Internet Protocol Version 6 (TCP/IPv6) и File and Printer Sharing for Microsoft Networks
Некоторые сетевые приложения некорректно работают при отключенном протоколе TCP/IPv6, возвращая ошибку:
1722 The RPC server is unavailable
. Если после включения ipv6 ошибка RPC сохраняется, попробуйте отключить протокол Teredo через реестр:
Создайте в ветке реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters параметр типа DWORD с именем DisabledComponents и значением 8:
reg add hklm\system\currentcontrolset\services\tcpip6\parameters /v DisabledComponents /t REG_DWORD /d 8
В некоторых случаях приходится получаить дамп трафика на RPC сервера и анализирвать его с помощью Microsoft Network Monitor 3.4 или Message Analyzer.
Обновлено 15.02.2022
Добрый день! Уважаемые читатели и гости одного из крупнейших IT блогов в рунете Pyatilistnik.org. В прошлый раз мы с вами разобрали замечательную утилиту командной строки robocopy, и с ее помощью научились создавать точные копии папок, двигать их в нужное расположение и многое другое. В сегодняшней публикации я покажу вам, как устранять ошибку «Сервер RPC недоступен (The rpc server is unavailable)», покажу примеры, когда ее мониторинг очень важен в работе корпоративных сервисов.
Для чего нужна служба «Удаленный вызов процедур (RPC)»
Удаленный вызов процедур (RPC) — это протокол, который одна программа может использовать для запроса услуги у программы, расположенной на другом компьютере в сети, без необходимости разбираться в деталях сети. RPC используется для вызова других процессов на удаленных системах, таких как локальная система. Вызов процедуры также иногда называют вызовом функции или вызовом подпрограммы .
RPC использует модель клиент-сервер. Запрашивающая программа — это клиент, а программа, предоставляющая услуги, — это сервер. Подобно обычному или локальному вызову процедуры, RPC — это синхронная операция, требующая приостановки запрашивающей программы до тех пор, пока не будут возвращены результаты удаленной процедуры. Однако использование облегченных процессов или потоков, которые совместно используют одно и то же адресное пространство, позволяет одновременно выполнять несколько RPC.
Язык определения интерфейса (IDL) — язык спецификации, используемый для описания интерфейса прикладного программирования (API) программного компонента — обычно используется в программном обеспечении удаленного вызова процедур. В этом случае IDL обеспечивает мост между машинами на обоих концах связи, которые могут использовать разные операционные системы (ОС) и компьютерные языки.
Процедура сообщения RPC
Когда программные операторы, использующие структуру RPC, компилируются в исполняемую программу, в скомпилированный код включается заглушка, которая выступает в качестве представителя кода удаленной процедуры. Когда программа запускается и выполняется вызов процедуры, заглушка получает запрос и пересылает его клиентской программе и времени выполнения на локальном компьютере. При первом вызове клиентской заглушки она связывается с сервером имен, чтобы определить транспортный адрес, по которому находится сервер.
Программа среды выполнения клиента знает, как обращаться к удаленному компьютеру и серверному приложению, и отправляет сообщение по сети, которое запрашивает удаленную процедуру. Точно так же сервер включает исполняющую программу и заглушку, которая взаимодействует с самой удаленной процедурой. Протоколы ответа-запроса возвращаются таким же образом.
Данная служба есть в любой операционной системе Windows, начиная от Windows 7 и заканчивая Windows 11 и в любой из Windows Server редакции.
Как работает RPC?
Когда вызывается служба RPC (удаленный вызов процедуры), вызывающая среда приостанавливается, параметры процедуры передаются по сети в среду, в которой должна выполняться процедура, а затем процедура выполняется в этой среде. Когда процедура завершается, результаты передаются обратно в вызывающую среду, где выполнение возобновляется, как если бы оно возвращалось из обычного вызова процедуры.
Во время RPC выполняются следующие шаги:
- Клиент вызывает клиентскую заглушку. Вызов представляет собой вызов локальной процедуры с параметрами, помещенными в стек обычным способом.
- Клиентская заглушка упаковывает параметры процедуры в сообщение и выполняет системный вызов для отправки сообщения. Упаковка параметров процедуры называется маршалингом.
- Локальная ОС клиента отправляет сообщение с клиентского компьютера на удаленный сервер.
- Серверная ОС передает входящие пакеты на серверную заглушку.
- Заглушка сервера распаковывает параметры из сообщения — это называется демаршалингом .
- Когда серверная процедура завершается, она возвращается к серверной заглушке, которая маршалирует возвращаемые значения в сообщение. Затем заглушка сервера передает сообщение на транспортный уровень.
- Транспортный уровень отправляет полученное сообщение обратно на клиентский транспортный уровень, который возвращает сообщение клиентской заглушке.
- Клиентская заглушка не упорядочивает возвращаемые параметры, и выполнение возвращается вызывающей стороне.
Клиент RPC по 135 порту подключается к службе RPC Endpoint Mapper (сопоставления конечных точек), а далее уже запрашивает номер порта, где запущено нужное RPC приложение. Служба сопоставления конечных точек вернет клиенту RPC номер динамического RPC порта (диапазон 1024 – 65535), на котором работает нужная служба. Дальше уже все взаимодействие идет по TCP порту
Если вы видите ошибку «Сервер RPC недоступен” (The RPC server is unavailable)», то у вас точно недоступен порт 135. Это может быть критичным для ряда ситуации. Например вы не сможете сохранить настройки RDS фермы, если у одного из хостов RDSH есть проблемы с RPC, то вы будите видеть ошибку «Could not change the connection state for server», вы не сможете перевести его в режим обслуживания (Drain Mode)
Или в приложении Terminal Services Manager будет ошибка при попытке получения данных «Сервер RPC недоступен«.
Так же RPC может быть причиной проблемы в репликации контроллеров домена, где в логах Windows будет фигурировать ошибка ID 1722. Это очень не приятный момент, который может привести к большим проблемам.
Типы RPC
Существует пять типов RPC:
- Обычный метод работы, при котором клиент выполняет вызов и не продолжает работу до тех пор, пока сервер не вернет ответ.
- Клиент звонит и продолжает свою обработку. Сервер не отвечает.
- Средство для отправки нескольких клиентских неблокирующих вызовов в одном пакете.
- У клиентов RPC есть средство широковещательной рассылки, т. е. Они могут отправлять сообщения на множество серверов, а затем получать все полученные ответы.
- Клиент делает неблокирующий вызов клиент/сервер; сервер сигнализирует о завершении вызова путем вызова процедуры, связанной с клиентом.
Почему может не работать служба RPC
- Удаленный компьютер с которым идет взаимодействие выключен
- На удаленном сервере не запущена или перестала работать служба RPC
- Подключение по RPC происходит не к тому серверу (Может быть проблема с DNS или IP адресом)
- Есть блокировки между клиентом и сервером на фаэрволе
- Используются некорректные настройки сетевого подключение на клиенте или сервере
Преимущества удаленного вызова процедур
К преимуществам удаленного вызова процедур можно отнести следующее:
- помогает клиентам общаться с серверами посредством традиционного использования вызовов процедур на языках высокого уровня;
- может использоваться как в распределенной, так и в локальной среде;
- поддерживает процессно-ориентированные и поточно-ориентированные модели;
- скрывает внутренний механизм передачи сообщений от пользователя;
- требует минимальных усилий для переписывания и повторной разработки кода;
- обеспечивает абстракцию, т. е. характер передачи сообщений по сети скрыт от пользователя;
- опускает многие уровни протокола для повышения производительности.
Недостатки RPC
Некоторые из недостатков RPC включают следующее:
- Клиент и сервер используют разные среды выполнения для своих соответствующих подпрограмм, и использование ресурсов, например файлов, также является более сложным. Следовательно, системы RPC не подходят для передачи больших объемов данных.
- RPC очень уязвим для сбоев, потому что он включает в себя систему связи, другую машину и другой процесс.
- Единого стандарта для RPC не существует; это может быть реализовано множеством способов.
- RPC основан только на взаимодействии и, как таковой, не предлагает гибкости, когда дело касается аппаратной архитектуры.
Проверка доступности службы RPC
- Как я и писал выше, в первую очередь вы должны убедиться, что удаленный компьютер к которому вы делаете проверку RPC доступен по сети. Для этого элементарно откройте командную строку или оболочку PowerShell и воспользуйтесь командой Ping, NSlookup, Test-NetConnection. Я буду производить проверку службы удаленного вызова в PowerShell. Выполним для начала команду Ping. Мой удаленный сервер называется SVT201S01.root.pyatilistnik.org. Пишем команду:
ping SVT201S01.root.pyatilistnik.org
Если вдруг компьютер не ответил, то это не значит, что он не работает, может работать брандмауэр и просто блокировать ping пакеты.
- Далее выполните Nslookup, чтобы удостовериться, что нужное вам имя компьютера преобразовывается в нужный IP-адрес. Выполните:
nslookup SVT201S01.root.pyatilistnik.org
Небольшой пример из практики, предположим, что вы мигрировали сервер в другую подсеть, в итоге в DNS должна быть изменена соответствующая запись, но Windows это поймет не сразу, так как у нее есть свой локальный кэш, он живет 15 минут, поэтому если при проверке DNS имени вам выдается не тот IP-адрес, вам необходимо произвести очистку кэша DNS.
- Далее я вам советую проверить отвечает ли порт. Напоминаю, что служба RPC Endpoint Mapper слушает порт под номером 135. В PowerShell введите команду:
Test-NetConnection svt2019s01.root.pyatilistnik.org -Port 135
Если удаленный RPC порт доступен вы в в строке TcpTestSucceeded будет стоять статус «True».
Если будет порт закрыт или блокируется, то ошибка «Сервер RPC недоступен (The rpc server is unavailable)» вам обеспечена. Поняв, что порт не отвечает, нужно удостовериться, что трафик от клиента до сервера не блокирует фаервол. По умолчанию в любой версии Windows есть встроенный брандмауэр. На время тестирования и поиска причины, я советую его выключить для всех профилей. Сделаем мы это через командную строку:
Netsh Advfirewall set allprofiles state off
Данная команда выключит брандмауэр на всех трех профилях сетевой карты.
Далее если порт 135 стал доступен, то можно делать правила на удаленном сервере. Напоминаю, что нужно сделать правило для трех служб:
- Remote Procedure Call (RPC) — Удаленный вызов процедур (RPC)
- RPC Endpoint Mapper — Сопоставитель конечных точек RPC
- COM Server Process Launcher — Модуль запуска процессов DCOM-сервера
Подробнее, о том как сделать правила — https://docs.microsoft.com/en-us/windows/security/threat-protection/windows-firewall/create-inbound-rules-to-support-rpc)
Еще хочу отметить, что если у вас есть сторонние антивирусные решения, например Касперский, то там так же есть встроенный сетевой экран, где так же нужно будет создать необходимые, разрешающие правила, которые корректно будут обрабатывать трафик динамических RPC портов.
Проверка работы служб RPC
Следующим шагом является проверка состояния службы на нужном вам сервере или компьютере. Проверять следует три службы:
- Remote Procedure Call (RPC) — Удаленный вызов процедур (RPC)
- RPC Endpoint Mapper — Сопоставитель конечных точек RPC
- COM Server Process Launcher — Модуль запуска процессов DCOM-сервера
В оболочке PowerShell выполните команду:
Для локального сервера — Get-Service RpcSs,RpcEptMapper,DcomLaunch| Select DisplayName,Status,StartType
Для удаленного выполнения Enter-PSSession svt2019s01 далее Get-Service RpcSs,RpcEptMapper,DcomLaunch| Select DisplayName,Status,StartType
Напоминаю, что в команде svt2019s01, это имя удаленного сервера. Как видно из примера, все службы RPC запущены и имею автоматический тип запуска.
Если службы не запущены, то откройте оснастку «services.msc’, зайдите в свойства службы и выставите автозапуск и попробуйте запустить вручную.
Если по каким, то причинам вы не можете запустить службу из оснастки, то можно это сделать через реестр (Кстати реестр можно править и удаленно). Для этого есть несколько веток, но для начала откройте окно «Выполнить» и введите regedit.
- Модуль запуска процессов DCOM-сервера — HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DcomLaunch
- Сопоставитель конечных точек RPC — HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\RpcEptMapper
- Удаленный вызов процедур (RPC) — ветка реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\RpcSs
В каждом из этих расположений есть ключик «Start«, выставите ему значение «2«, это будет означать автоматический запуск службы.
Дополнительные сетевые проверки
В некоторых случаях причиной ошибок с доступностью RPC выступает сбой на сетевых адаптерах. Помогает сброс сетевых настроек и перезагрузка. В сети с Active Directory, старайтесь, чтобы на всех ваших сетевых адаптерах в свойствах были выставлены обе галки IPV4 и IPV6, особенно это актуально для контроллеров домена, где вы легко можете получать ошибку 1722. Еще может помочь отключение протокола Teredo у IPv6. В командной строке выполните:
netsh interface teredo set state disabled
Для включения обратно введите:
netsh interface teredo set state enabled
Еще на сайте Майкрософт пишут, что необходимо на сервере RPC иметь включенную службу «Удаленный реестр«. На этом у меня все, с вами был Иван Сёмин, автор и создатель IP портала Pyatilistnik.org.
Remote Procedure Call (RPC) is a technology present since the emergence of computers and utilizes the interprocess communication technique. Its primary purpose is to enable a client and a server to communicate with each other over the network. Some users after completing an upgrade to a newer version of Windows 11/10 might notice that executing any remote command fails with the error message The RPC server is unavailable, Error 0x800706BA – prior to the upgrade these remote commands execute successfully. In this post, we will identify the potential causes and then provide the possible solutions that you can try to help remediate this issue.
The error message The RPC Server is unavailable can be triggered by any of the following:
- One or more services required by RPC are disabled.
- Remote assistance is disabled by the Firewall.
- IPV6 or File Printer Sharing is disabled.
- The IP address is crashing the RPC server.
- RPC services are disabled via Registry.
Read: How to troubleshoot Remote Procedure Call errors & problems.
If you are faced with this error, you can try the recommended solutions below.
- Check RPC service on your computer
- Enable Remote Desktop/Assistance in Firewall
- Change Startup Selection from Selective startup to Normal startup
- Enable IPV6 and File & Printer Sharing for the connected network
- Flush DNS & Renew
- Force RPC services to start using Registry Editor.
- Other sugegstions.
Now, let’s delve into the detailed steps of these solutions.
1] Check RPC service on your computer
This solution implies that conflicts with other third-party applications or changing the system systems might force the RPC service to go from the default (Automatic) value to manual. This means that RPC might not start automatically when needed.
To check RPC service on your computer, do the following:
- Press Windows + R, type services.msc in the dialog box and hit Enter.
- Once in the Services window, search for the following processes:
Remote Procedure Call (RPC)
RPC Endpoint Mapper or Remote Procedure Call (RPC) Locator
DCOM Service Process Launcher
- Right-click on each service one by one and select Properties.
- Once in properties, make sure that the service is Started and the Startup type is set as Automatic.
- Save changes and exit.
Restart your computer and see if the issue is resolved.
2] Enable Remote Desktop/Assistance in Firewall
To allow Remote Assistance in firewall on your computer, do the following:
- Press Windows key + R, type control in the dialog box and hit Enter.
- Once the control panel pops up, type Firewall in the search bar at the top-right side of the window and hit Enter.
- From the results, click on Allow an app through Windows Firewall which is a subcategory underneath Windows Firewall.
- Click on Change settings and make sure that entries enforcing RPC are checked such as Remote Assistance.
Restart your computer and see if the issue is resolved.
3] Change Startup Selection from Selective startup to Normal startup
The selective startup is a booting method which allows your computer to turn on with a minimal number of items loaded. This is usually done when troubleshooting issues with your computer which might involve other third-party applications. However, whenever you boot using selective startup, your computer will also not load all the RPC components onto your computer. In this case, we will select the normal startup and see if this fixes the issue. Here’s how:
- Press Windows key + R, type msconfig in the dialog box and hit Enter.
- Once in the startup configuration, select the tab General and choose the option Normal startup.
- Click Apply > OK to save changes and exit.
You will be prompted for a restart. Restart immediately using the popped-up window and check if the error message is resolved.
4] Enable IPV6 and File & Printer Sharing for the connected network
In some cases, you might encounter the Error 1722: The RPC server is unavailable issue in instances where there’s a network connection interruption caused by one or multiple settings. In this case, enabling IPV6 and File & Printer Sharing for the connected network could resolve the issue. Do the following:
- Press Windows key + R and then type ncpa.cpl in the Run dialog box and hit Enter to open up the Network Connections window.
- Inside the Network Connections window, right-click on the network that you’re currently connected to and hit Properties.
- Once you get to the Properties of your network connection, go to the Networking tab and scroll down through the list of items.
- Locate File and Printer Sharing for Microsoft Networks and Internet Protocol Version 6 (TCP/IPv6) and make sure that both associated boxes are checked.
- Click Ok to save the changes.
Restart your computer and see if the issue is resolved at the next startup.
5] Flush DNS & Renew
This solution requires you to ensure that the services involved in the RPC connection are running (as outlined in solution 1 above) before you proceed to flush the DNS and renew the connection.
If you’re certain that the required services are running, then follow the instructions below to flush the DNS and renew the connection.
- Launch command prompt in elevated mode.
- Inside the elevated Command prompt, type the following command and hit Enter to flush the current IP Configuration:
ipconfig /flushdns
- Once the command is successfully registered, type the following command and hit Enter to renew the IP Configuration:
ipconfig /renew
Once the IP has been renewed, close the elevated Command Prompt and execute remote commands and see if the issue has been resolved.
6] Force RPC services to start using Registry Editor
To use Registry Editor to force RPC services to start, do the following:
- Launch Registry Editor.
- Inside the Registry Editor, use the left-hand pane to navigate to the following location:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RpcSs
- With the RpcSs key selected, move down to the right-hand pane and double-click on Start to edit its properties.
- In the properties box, set the Base to Hexadecimal and the Value data to 2.
- Click OK to enable the Remove Procedure Call (RPC).
Next, use the left-hand pane or the navigation bar at the top (paste the registry path and hit Enter) to navigate to this location:
Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DcomLaunch
- Once you get to that location, double-click on Start from the right-hand pane.
- Then, set the Base to Hexadecimal and the value data to 2.
- Click OK in order to enable the DCOM Server Process Launcher.
Lastly, navigate to the following location by using the navigation bar at the top or by using the left-hand pane:
Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RpcEptMapper
- Move over to the right-hand pane and double-click on Start.
- Then, set the Base to Hexadecimal and the Value Data to 2.
- Click OK.
Close the Registry Editor, restart your computer and see if the ‘The RPC server is unavailable’ issue has been resolved at the next system startup.
7] Other suggestions
- Check for incorrect DNS settings.
- Check for incorrect Time and Time zone settings.
- Ensure that TCP/IP NetBIOS Helper service is running.
- Ensure that Remote Registry service is running.
How do I enable RPC server?
Open Windows Service Manager, locate the Remote Procedure Call (RPC) service, and double-click on it to open it Properties. Ensure that its Startup type is set to Automatic. Click on the Start button to start the service.
The RPC server is unavailable. (Exception from HRESULT: 0x800706BA)
If you see The RPC server is unavailable. (Exception from HRESULT: 0x800706BA) error message then it could mean that either your RPC service is not working properly or that your RPC packets are blocked by firewall.
- Restart the Remote computer
- Run the following command to check if your Port 15 is open –
Test-NetConnection -ComputerName MyComputer -Port 135
- Ensure that all the RPC Services are working OK
- Check your Firewall settings and logs and see if thr protocol is being blocked.
Similar error code: Windows Update error 0x800706ba
Check these related posts if you receive:
- How to fix Remote Procedure Call errors & problems
- The Remote Procedure Call Failed error for Microsoft Store apps
- The Remote Procedure Call Failed while making PIN as Sign-in Option
- The remote procedure call failed error while using DISM.
Всем привет! В общем, сегодня столкнулся с проблемой – при попытке подключения к удаленному компьютеру произошла следующая системная ошибка:
Сервер RPC недоступен.
Бился я с ней где-то часа два, и все же мне удалось её решить. Я на всякий пожарный описал все возможные способы, которые мне попадались в интернете. Постарался описать подробно, но сжато, чтобы не тратить ваше время. Если что-то будет не получаться – пишите в комментариях, постараюсь вам помочь.
Содержание
- Способ 1: Запуск служб
- Способ 2: Целостность системных файлов
- Способ 3: Выключение антивируса или брандмауэра
- Способ 4: Комплексные меры
- Задать вопрос автору статьи
Способ 1: Запуск служб
Чаще всего ошибка «Сервер RPC недоступен» как в Windows 10, так и в Windows 11 возникает из-за того, что зависла одна из служб, работающая с RPC. Подобное бывает при общем сбое операционной системы или при неправильной работе какой-то программы. Давайте попробуем это исправить.
- Одновременно на клавиатуре зажмите две клавиши:
+ R
- Введите команду:
services.msc
- Теперь найдите службу «Локатор удаленного вызова процедур (RPC)». Чтобы открыть службу, два раза быстро нажмите левой кнопкой мыши. Или через правую кнопку и контекстное меню перейдите в «Свойства».
- В первую очередь обратите внимание на «Состояние» – служба не должна быть активной. Если вы видите, что она запущена – остановите её с помощью кнопки. После этого еще проверьте «Тип запуска» – чтобы стоял параметр «Вручную». Примените настройки и закройте окошко.
- Вторую службу, которую нужно проверить – это служба «Удаленного вызова процедур (RPC).
- Данная служба наоборот должна быть запущена (смотрим в «Состояние») – если она по каким-то причинам остановлена, запустите её. Также установите автоматический тип запуска. Не забудьте применить настройки, если вы их меняли.
- Все то же самое делаем для служб:
Сервер
Средство построения конечных точек Windows Audio
Удаленный реестр
Питание
- Все они должны быть запущены. Ну и не забудьте проверить тип запуска – служба должна автоматически запускаться вместе с запуском операционной системы.
ПРИМЕЧАНИЕ! Если в коде ошибки вы видите конкретный номер 1722 – это значит вам нужно дополнительно проверить еще две службы «Модель запуска процессов DCOM-сервера» и «Диспетчер печати».
После перечисленных проверок попробуйте заново проделать те действия, которые до этого вызывали ошибку. Если ошибка пропадет – хорошо. Если она останется – попробуйте перезагрузить комп. После запуска ОС все службы должны запуститься нормально.
Способ 2: Целостность системных файлов
Для нормальной работы всех служб и встроенных системных программ, которые работают с RPC, нужно, чтобы все файлы системы были исправны. Из-за вирусов, сторонних программ, а также из-за поломки секторов жесткого диска системные файлы могут ломаться. Нам нужно проверить целостность системных файлов и восстановить их.
Запускаем командную строку с правами администратора. Прежде чем мы запустим проверку, хочу вас предупредить, что в некоторых ситуациях процедура может длиться долго. Windows автоматически должна проверить файлы и в случае обнаружения поломок восстановить их. Используем две команды:
DISM.exe /Online /Cleanup-image /Restorehealth
sfc /scannow
Способ 3: Выключение антивируса или брандмауэра
Возможно проблема с удаленным подключением связана с блокировкой вашего антивируса. Попробуйте его выключить. Для этого в правом нижнем углу экрана в трее нажмите правой кнопкой по значку вашего антивируса – далее поищите в каждом из пунктов команду отключения защиты и деактивируйте её на какое-то время. После этого проверьте, чтобы ошибка не возникала.
Если у вас нет стороннего антивируса – его роль исполняет встроенный Windows Defender. Давайте попробуем выключить защиту для той сети, к которой вы подключены.
- Откройте «Пуск» – «Параметры».
- Найдите раздел «Обновление и безопасность».
- Перейдите в подраздел «Безопасность Windows» и слева из списка выберите пункт «Брандмауэр и защита сети».
- Выберите ту сеть, к которой вы подключены – она обозначена надписью «активный».
- Выключите «Брандмауэр Microsoft Defender».
Если проблема не решилась, включите параметр обратно и переходите к следующей главе. Если проблема решилась, дальше нужно думать, как обратно включить защиту для сети. Можно попробовать установить сторонний антивирус, чтобы он взял роль «защитника» на себя. Вы также можете в «Пуск» – «Параметры» – «Обновление и безопасность» – в разделе «Обновления» установите все пакеты, которые предлагает система. Возможно, есть какой-то баг, который мешает работе защитника и сети. Этот баг может исправиться после обновления. Также обязательно проверьте комп антивирусной программой. Можете для этого использовать встроенный Defender.
Способ 4: Комплексные меры
Итак, у нас есть ошибка сервера RPC, который по каким-то причинам не доступен в Windows (10, 11, 7 или 8). Я опишу ряд советов, которые должны помочь при удаленном подключении и решении данной ошибки.
- Если вы используете какие-то VPN или Proxy – выключите эти программы и подключения.
- Полностью проверьте компьютер и систему на наличие вирусов.
- Уберите все из автозагрузки, кроме драйвера звуковой карты и антивируса. После этого перезагрузите компьютер и проверьте подключение.
- Выполните комплексную чистку компьютера от всего лишнего.
- Обновите драйвера на материнскую плату. Если вы используете стороннюю сетевую карту или Wi-Fi адаптер, обновите драйвера и для них. Дрова скачиваем исключительно вручную с официального сайта. Про то, как это сделать – подробно написано в этой статье (ссылка).
- Если вы пытаетесь получить доступ к какому-то устройству в своей локальной сети – почитайте рекомендации отсюда.
- Обновите прошивку вашего роутера, если вы используете его для подключения.
- Установите все обновления для вашей системы, если вы этого еще не сделали.
На этом все, дорогие друзья. Вы можете обращаться за помощью ко мне в комментариях. Я или кто-то из других специалистов портала WiFiGiD.RU вам ответит и постарается помочь. Старайтесь писать, как можно подробнее о своей проблеме, а также о том, что вы уже сделали из статьи выше. Всем добра и берегите себя.