Ошибка сервер rpc недоступен способы устранения

Обновлено 15.02.2022

the rpc server is unavailable

Добрый день! Уважаемые читатели и гости одного из крупнейших 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 выполняются следующие шаги:

  1. Клиент вызывает клиентскую заглушку. Вызов представляет собой вызов локальной процедуры с параметрами, помещенными в стек обычным способом.
  2. Клиентская заглушка упаковывает параметры процедуры в сообщение и выполняет системный вызов для отправки сообщения. Упаковка параметров процедуры называется маршалингом.
  3. Локальная ОС клиента отправляет сообщение с клиентского компьютера на удаленный сервер.
  4. Серверная ОС передает входящие пакеты на серверную заглушку.
  5. Заглушка сервера распаковывает параметры из сообщения — это называется демаршалингом .
  6. Когда серверная процедура завершается, она возвращается к серверной заглушке, которая маршалирует возвращаемые значения в сообщение. Затем заглушка сервера передает сообщение на транспортный уровень.
  7. Транспортный уровень отправляет полученное сообщение обратно на клиентский транспортный уровень, который возвращает сообщение клиентской заглушке.
  8. Клиентская заглушка не упорядочивает возвращаемые параметры, и выполнение возвращается вызывающей стороне.

Клиент 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)

Could not change the connection state for server

Или в приложении Terminal Services Manager будет ошибка при попытке получения данных «Сервер RPC недоступен«.

Сервер RPC недоступен

Так же RPC может быть причиной проблемы в репликации контроллеров домена, где в логах Windows будет фигурировать ошибка ID 1722. Это очень не приятный момент, который может привести к большим проблемам.

Типы RPC

Существует пять типов RPC:

  1. Обычный метод работы, при котором клиент выполняет вызов и не продолжает работу до тех пор, пока сервер не вернет ответ.
  2. Клиент звонит и продолжает свою обработку. Сервер не отвечает.
  3. Средство для отправки нескольких клиентских неблокирующих вызовов в одном пакете.
  4. У клиентов RPC есть средство широковещательной рассылки, т. е. Они могут отправлять сообщения на множество серверов, а затем получать все полученные ответы.
  5. Клиент делает неблокирующий вызов клиент/сервер; сервер сигнализирует о завершении вызова путем вызова процедуры, связанной с клиентом.

Почему может не работать служба RPC

  1. Удаленный компьютер с которым идет взаимодействие выключен
  2. На удаленном сервере не запущена или перестала работать служба RPC
  3. Подключение по RPC происходит не к тому серверу (Может быть проблема с DNS или IP адресом)
  4. Есть блокировки между клиентом и сервером на фаэрволе
  5. Используются некорректные настройки сетевого подключение на клиенте или сервере

Преимущества удаленного вызова процедур

К преимуществам удаленного вызова процедур можно отнести следующее:

  • помогает клиентам общаться с серверами посредством традиционного использования вызовов процедур на языках высокого уровня;
  • может использоваться как в распределенной, так и в локальной среде;
  • поддерживает процессно-ориентированные и поточно-ориентированные модели;
  • скрывает внутренний механизм передачи сообщений от пользователя;
  • требует минимальных усилий для переписывания и повторной разработки кода;
  • обеспечивает абстракцию, т. е. характер передачи сообщений по сети скрыт от пользователя;
  • опускает многие уровни протокола для повышения производительности.

Недостатки 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 пакеты.Проверка доступности службы RPC через ping

  • Далее выполните Nslookup, чтобы удостовериться, что нужное вам имя компьютера преобразовывается в нужный IP-адрес. Выполните:

nslookup SVT201S01.root.pyatilistnik.org

Небольшой пример из практики, предположим, что вы мигрировали сервер в другую подсеть, в итоге в DNS должна быть изменена соответствующая запись, но Windows это поймет не сразу, так как у нее есть свой локальный кэш, он живет 15 минут, поэтому если при проверке DNS имени вам выдается не тот IP-адрес, вам необходимо произвести очистку кэша DNS.

Проверка доступности службы RPC через nslookup

  • Далее я вам советую проверить отвечает ли порт. Напоминаю, что служба RPC Endpoint Mapper слушает порт под номером 135. В PowerShell введите команду:

Test-NetConnection svt2019s01.root.pyatilistnik.org -Port 135

Если удаленный RPC порт доступен вы в в строке TcpTestSucceeded будет стоять статус «True».

Проверка доступности службы RPC через Test-NetConnection

Если будет порт закрыт или блокируется, то ошибка «Сервер RPC недоступен (The rpc server is unavailable)» вам обеспечена. Поняв, что порт не отвечает, нужно удостовериться, что трафик от клиента до сервера не блокирует фаервол. По умолчанию в любой версии Windows есть встроенный брандмауэр. На время тестирования и поиска причины, я советую его выключить для всех профилей. Сделаем мы это через командную строку:

Netsh Advfirewall set allprofiles state off

Данная команда выключит брандмауэр на всех трех профилях сетевой карты.

Отключение брандмауэра Windows через командную строку

Далее если порт 135 стал доступен, то можно делать правила на удаленном сервере. Напоминаю, что нужно сделать правило для трех служб:

  1. Remote Procedure Call (RPC) — Удаленный вызов процедур (RPC)
  2. RPC Endpoint Mapper — Сопоставитель конечных точек RPC
  3. 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

Следующим шагом является проверка состояния службы на нужном вам сервере или компьютере. Проверять следует три службы:

  1. Remote Procedure Call (RPC) — Удаленный вызов процедур (RPC)
  2. RPC Endpoint Mapper — Сопоставитель конечных точек RPC
  3. 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 запущены и имею автоматический тип запуска.

Проверка состояния служб RPC

Если службы не запущены, то откройте оснастку «services.msc’, зайдите в свойства службы и выставите автозапуск и попробуйте запустить вручную.

services.msc

Если по каким, то причинам вы не можете запустить службу из оснастки, то можно это сделать через реестр (Кстати реестр можно править и удаленно). Для этого есть несколько веток, но для начала откройте окно «Выполнить» и введите regedit.

Запуск реестра Windows

  • Модуль запуска процессов DCOM-сервера — HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesDcomLaunch
  • Сопоставитель конечных точек RPC — HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesRpcEptMapper
  • Удаленный вызов процедур (RPC) — ветка реестра HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesRpcSs

В каждом из этих расположений есть ключик «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.

Сервер RPC недоступен — способы исправитьПри подключении к удаленному компьютеру или виртуальной машине, некоторым сетевым устройствам, а также при установке и работе прикладных программ, использующих клиент-серверную архитектуру (в том числе на единственном локальном компьютере) пользователь может получить сообщение об ошибке «Сервер RPC недоступен» (RPC server is unavailable).

В этой инструкции подробно о способах исправить ошибку «Сервер RPC недоступен» в Windows 11 и Windows 10 с фокусом прежде всего на домашнего пользователя, но многие решения универсальны и подойдут для других сценариев.

Службы RPC и связанные с ними службы

Сообщения об ошибке Сервер RPC недоступен

Первое что следует проверить при ошибке — работу и тип запуска служб, необходимых для правильной работы протокола удаленного вызова процедур RPC. Некоторые из представленного списка — необходимые, некоторые — опциональны, но в некоторых случаях также способны приводить к ошибке «Сервер RPC недоступен».

  1. Откройте «Службы Windows», для этого можно нажать клавиши Win+R на клавиатуре (или нажать правой кнопкой мыши по кнопке «Пуск» и выбрать пункт «Выполнить», ввести services.msc и нажать Enter. Открыть службы Windows
  2. Найдите службы из списка, который приведен ниже после 5-го пункта, убедитесь, что они выполняются, а тип запуска задан верно. Список служб RPC
  3. Если это не так, дважды нажмите мышью по такой службе, измените тип запуска службы и примените настройки. Автоматический запуск службы RPCss
  4. Если ошибка RPC возникает при подключении к удаленному компьютеру или виртуальной машине, убедитесь, что и на нем службы настроены правильно.
  5. После изменения параметров запуска служб, перезагрузите компьютер.

Список служб в формате: Название службы на русском языке (название на английском) — тип запуска по умолчанию:

  • Инструментарий управления Windows (Windows Management Instrumentation) — Автоматически
  • Локатор удаленного вызова процедур RPC (Remote Procedure Call RPC Locator) — Вручную, можно попробовать поставить «Автоматически».
  • Модуль запуска процессов DCOM-сервера (DCOM Server Process Launcher) — Автоматически
  • Служба времени Windows (Windows Time service) — Автоматически
  • Сопоставитель конечных точек RPC (RPC Endpoint Mapper) — Автоматически
  • Удаленный вызов процедур RPC (Remote Procedure Call RPC) — Автоматически

Если для отдельных служб тип запуска выставлен неверно, при этом изменить его в интерфейсе управления службами невозможно, можно использовать редактор реестра.

Для этого: запустите редактор реестра (Win+Rregedit) и перейдите к разделу реестра

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservices

В этом разделе реестра измените значение параметра Start на 2 (дважды нажав по параметру и задав новое значение) в следующих подразделах:

  • DcomLaunch
  • RpcEptMapper
  • RpcLocator
  • RpcSs
  • W32Time
  • Winmgmt

Часть параметров могут не изменяться и в реестре, в этой ситуации может помочь изменение прав доступа к разделам реестра.

В справке на официальном сайте Майкрософт приводится ещё две службы, которые могут вызывать ошибку «Сервер RPC недоступен» при входе в Windows :

  • Модуль поддержки NetBIOS через TCP/IP (TCP/IP NetBIOS Helper)
  • Удаленный реестр (Remote registry)

Протокол IPv6 и общий доступ к файлам и принтерам

Отключенная поддержка IP версии 6 и «Общий доступ к файлами и принтерам для сетей Майкрософт» также могут приводить к сбоям доступа к серверу RPC. Проверьте, включены ли они и, если нет — включите:

  1. Нажмите клавиши Win+R на клавиатуре, введите ncpa.cpl и нажмите Enter.
  2. Нажмите правой кнопкой мыши по сетевому подключению и откройте его свойства. Открыть свойства подключения Windows
  3. Отметьте пункты «Общий доступ к файлами и принтерам для сетей Майкрософт» и «IP версии 6» и примените настройки. Включить IPv6 для RPC

Брандмауэр Windows

В части настроек брандмауэра Windows при ошибке доступа к серверу RPC, в зависимости от сценария проблемы возможны разные решения.

Первый вариант:

  1. В Панели управления (открыть её можно, используя поиск в панели задач) откройте пункт «Брандмауэр Защитника Windows»
  2. В панели слева нажмите «Разрешение взаимодействия с приложениями или компонентами брандмауэра Защитника Windows». Разрешение приложений в брандмауэре Windows
  3. Нажмите кнопку «Изменить параметры» и разрешите взаимодействие для «Удаленный помощник». Разрешение для удаленный помощник в брандмауэре

Если предыдущий метод не помог, попробуйте:

  • Открыть порт 135 на локальной и удаленной машине. Подробнее: Как открыть порты в Windows.
  • Полностью отключить брандмауэр Windows (возможно, временно, чтобы выяснить, является ли его работа причиной ошибки)

Дополнительные методы решения проблемы

Если предыдущие варианты не помогли, при этом вы уверены, что на сервере (при удаленном подключении к собственным ресурсам или серверам, которые использует ваше ПО) проблем нет, попробуйте следующие варианты решения проблемы:

  • Используйте команды в командной строке, запущенной от имени Администратора
    ipconfig /flushsdns
    ipconfig /renew
  • Если используется профиль сети «Общественная» (Общедоступная), попробуйте переключить её на «Частная» — Как изменить тип сети в Windows 11 и в Windows 10.
  • Если вам известен IP-адрес сервера, к которому выполняется подключение, проверьте, доступен ли порт 135 на нем с помощью команды PowerShell (заменив IP-адрес на нужный), при успехе в пункте TcpTestSucceeded должен быть статус «True»
    Test-NetConnection 192.168.1.1 -port 135

    Проверка подключения по порту 135

  • При наличии сторонних антивирусов или файрволлов, попробуйте отключить их, или отключить только функции защиты в сети.
  • При использовании VPN-сервисов, попробуйте отключить их.
  • Попробуйте отключить протокол teredo для IPv6 с помощью команды
    netsh interface teredo set state disabled

    Чтобы в дальнейшем включить его обратно используйте команду

    netsh interface teredo set state enabled
  • Учитывайте: если ошибка «Сервер RPC недоступен» возникает при запуске, установке или работе какого-либо прикладного ПО, полученного и модифицированного неофициальными методами, причина может быть в целенаправленной блокировке доступа к серверам лицензирования или иным.
  • Проверьте компьютер на наличие вирусов и вредоносных программ, блокировок доступа к сайтам в файле hosts.

RPC – это способ обмена информацией между процессами или между клиентом (устройством, инициирующем связь RPC) и сервером (устройством, которое с ним связывается) в сети или системе. Многие встроенные компоненты Windows используют RPC, который в качестве отправной точки для связи между системами применяет различные порты. При возникновении неполадок возникает сообщение «Сервер RPC недоступен».

Способы устранения ошибки «Сервер RPC недоступен»

Решение ошибки «Сервер RPC недоступен».

Причины появления ошибки

В типичном сеансе RPC клиент связывается с программой сопоставления конечных точек сервера по TCP-порту 135 и для указанной службы требует определённого номера динамического порта. Сервер отвечает, отправив IP-адрес и номер порта, для которого служба зарегистрирована в RPC после её запуска, а затем связывается с клиентом с указанным IP-адресом и номером порта. Возможные причины ошибки «Сервер RPC недоступен» следующие:

  1. Остановка службы RPC – когда служба RPC на сервере не запущена.
  2. Проблемы с разрешением имён – имя сервера RPC может быть связано с неправильным IP-адресом. Это значит, что клиент связывается с неправильным сервером или пытается связаться с IP-адресом, который в настоящее время не используется. Возможно, имя сервера не распознаётся вообще.
  3. Трафик заблокирован брандмауэром – брандмауэр или другое приложение безопасности на сервере или брандмауэр устройства между клиентом и сервером могут препятствовать доступу трафика к TCP-порту сервера 135.
  4. Проблемы с подключением – проблема с сетью может быть причиной отсутствия соединения между клиентом и сервером.

Ошибка «Сервер RPC недоступен»

Способы решения

При запуске или установке некоторых программ вы можете получить сообщение «Сервер RPC недоступен». Это часто связано с синхронизацией времени, необходимой для запуска программы. Без этого некоторые приложения могут работать неправильно или не запускаться вообще. Что делать, чтобы сообщение больше не появлялось, рассмотрим далее.

Код ошибки 1722

Ошибка 1722 «Сервер PRC недоступен» может возникать при использовании сетевого принтера или звуковых устройств в седьмой версии Windows. Причиной может быть антивирусная программа, блокирующая коммуникационные порты – для её устранения нужно найти параметры управления доверенными программами в настройках антивируса.

Ошибка 1722 «Сервер PRC недоступен»

Также ошибка может возникнуть из-за того, что в системе присутствует сам вирус – стоит проверить систему и диск с помощью другой антивирусной программы, чем в настоящее время. Для устранения нажмите Пуск/Настройки/Панель управления. Затем откройте Администрирование/Службы. Появится окно, в котором с правой стороны вы найдете «Сервер». На «Сервере» проверьте, включён ли автоматический тип запуска. Измените параметр при необходимости и перезагрузите компьютер.

Устранение ошибка 1722

Отключение брандмауэра Windows

Если при печати в Windows 7 появляется ошибка «Сервер RPC недоступен», проблема может крыться в брандмауэре. Он отвечает за блокировку доступа к компьютеру во внутренней или внешней сети посторонними лицами или приложениями, что исключает возможность контроля ПК. Ниже приведены некоторые советы, которые позволят вам отключить (в случае, если вы хотите использовать для этого другое приложение) и включить интегрированный брандмауэр Windows. Измените имя компьютера с помощью «Настроек»:

  1. Это один из самых простых способов отключения сетевого брандмауэра. Для этого используйте вкладку «Параметры системы».
  2. Из списка доступных опций выберите «Сеть и Интернет».
  3. Перейдите на вкладку Ethernet и выберите «Брандмауэр Windows» с правой стороны окна.
  4. Выберите включение и отключение брандмауэра.
  5. В списке доступных операций выберите параметр «Отключить брандмауэр Windows» (не рекомендуется).
  6. Нажмите «ОК». Брандмауэр выключен.

Отключить брандмауэр Windows

Следующий способ – редактор локальной групповой политики (GPO):

  1. Нажмите клавиши Win + R и введите «gpedit.msc». Откроется редактор локальной групповой политики.
  2. Параметр, ответственный за отключение брандмауэра, расположен по адресу

«Конфигурация компьютера» – «Административные шаблоны» – «Сеть» – «Сетевые подключения» – «Стандартный профиль» – «Брандмауэр Windows: защита всех сетевых подключений».

  1. Измените состояние настройки на «ВЫКЛ».
  2. После нажатия кнопки «ОК» или «Применить» брандмауэр Windows перестанет работать.

Вызов редактора локальной групповой политики

Для более опытных пользователей вышеупомянутый сценарий можно выполнить с помощью редактора реестра.

  • нажмите пуск и введите «regedit», запустите приложение от имени администратора;
  • в окне редактора найдите каталог

HKLMSYSTEMCurrentControlSetServicesSharedAccessParametersFirewallPolicyDomainProfile;

  • найдите параметр EnableFirewall и измените его значение с 1 на 0;
  • таким же образом отредактируйте ключ EnableFirewall в следующем каталоге

HKLMSYSTEMCurrentControlSetServicesSharedAccessParametersFirewallPolicyPublicProfile;

  • и последний каталог с ключом EnableFirewall

HKLMSYSTEMCurrentControlSetServicesSharedAccessParametersFirewallPolicyStandardProfile.

Закройте редактор реестра и перезагрузите компьютер. С этого момента брандмауэр Windows отключается. Чтобы снова возобновить брандмауэр с помощью редактора реестра, просто измените указанные выше значения с названием EnableFirewall с 0 на 1, и перезапустите компьютер.

Ручной запуск задачи services.msc

При запуске или установке некоторых программ вы можете получить сообщение «Сервер RPC недоступен». Это часто связано с синхронизацией времени, необходимой для запуска программы. Без этого некоторые приложения могут работать неправильно или не запускаться вообще. При недоступности функции может произойти сбой, для исправления необходимо включить службу синхронизации:

  • сначала нажмите меню «Пуск» и в строке поиска введите «Выполнить», нажмите «Enter»;
  • в следующем окне введите services.msc и подтвердите кнопкой «OK»;
  • найдите в списке элемент «Служба времени Windows»;
  • дважды щёлкните эту службу. Откроется меню, в котором вы должны нажать кнопку «Выполнить».

Служба времени Windows

С этого момента сообщение «RPC-сервер недоступен» появляться не должно.

Устранение неполадок Windows

Исправить ошибку в Windows 10 поможет встроенное средство устранения неполадок системы. Перезагрузите компьютер и после подачи звукового сигнала нажимайте кнопку F8 раз в секунду, пока не откроется меню выбора вариантов загрузки. Первым из них будет «Устранение неполадок компьютера». Выберите это действие и дождитесь окончания операции.

Ошибка в FineReader

Проблема может возникать в Windows 8 и выше и при попытке запуска службы ABBYY FineReader Licensing Service. Для проверки состояния в списке служб (как его найти, описано выше) выберите ABBYY FineReader Licensing Service. В окне свойств убедитесь, что параметр «Тип запуска» установлен на «Автоматический». При необходимости измените его, закройте редактор кнопкой «ОК» и перезагрузите компьютер.

ABBYY FineReader Licensing Service

Проверка на вирусы

В Windows XP и выше сообщение о неисправности может быть вызвано наличием вируса. Просканируйте свой ПК с помощью антивирусной программы, следуя указаниям мастера. В Windows 10 можно воспользоваться стандартным «Защитником». Для этого нажмите правой кнопкой мыши на значок «Щит» возле часов и выберите «Открыть». Запустите проверку на вирусы нажатием соответствующей кнопки в окне.

Защитник Windows 10

Как видите, избавиться от ошибки можно многими способами. В этом списке представлены наиболее вероятные варианты исправления ошибки. При необходимости придётся переустановить операционную систему, воспользовавшись установочным диском.

Are you experiencing issues with your RPC server on Windows? Learn how to fix errors such as «RPC Server Is Unavailable» from our troubleshooting article.

Those who’ve been using systems such as Windows 10 for an extended period of time may have run into an issue with the RPC Server becoming unavailable. In this scenario, you’re most likely unable to properly connect to other devices on your network.

Experiencing this issue may limit your ability to share files, use printers, and share data or information over a network. Today, we’ll go over what you can do to fix the “RPC Server is unavailable” error on Windows operating systems.


fix RPC SERVE IS UNAVAILABLE

Table of Contents 

  • What is the RPC Server is Unavailable error? What causes it?
  • Method 1. Make sure the RPC services are running
  • Method 2. Enable Remote Assistance in your firewall settings
  • Method 3. Disable the Selective Startup feature
  • Method 4. Flush and renew your DNS
  • Method 5. Enable File and Printer Sharing for Microsoft Networks
  • Method 6. Force RPC services to start
  • Final thoughts

What is the RPC Server is Unavailable error? What causes it?

Simply put, the RPC server allows you to share data through a network and transfer information to another device. RPC enables you to manage devices over this network, such as printers and scanners.

If the RPC server becomes unavailable, you lose this functionality. There are multiple causes for this error, the most common ones being the following issues:

  • Services required by RPC are disabled — It’s possible that you, another person using the computer, or some form of malware disabled several services. If a service required by RPC is disabled, you’re likely to run into issues.
  • Your firewall is blocking remote assistance — The firewall may end up causing problems with the RPC server. If this happens, you’ll be unable to use RPC services without fixing your firewall settings first.
  • File Printer Sharing or IPV6 is disabled — Some types of RPC servers require both IPV6 and File Printer Sharing to be enabled on the network.
  • Your IP address is poorly configured —  Your IP address may trigger the RPC Server unavailable error message. In this case, simply flushing and renewing your IP address and DNS server could fix the problem. 
  • RPC is disabled in the Registry — If the RPC services have been disabled on a Registry-level, you’ll need to fix it by using the Registry Editor.

No matter the cause, our methods will help you resolve the “RPC server is unavailable” error on your Windows device.

Solved: RPC Server is Unavailable

Note: Our methods were tested on a Windows 10 operating device. It’s possible that different operating systems may require slightly different steps in order to accomplish the fix.

Method 1. Make sure the RPC services are running

In most cases, the RPC server experiences issues thanks to the service being disabled. This can happen for various reasons, most commonly because of a third-party application making a modification.

Follow the steps below to re-enable the RPC services in your system:

  1. Open the search bar in your taskbar by clicking on the magnifying glass icon. You can also bring it up with the Windows + S keyboard shortcut.
  2. Type in Services and click on the first search result.
    WINDOWS SERVICES
  3. Scroll down and locate the Remote Procedure Call (RPC) service from the list. Right-click on the service and then select Properties from the context menu.
    RPC PROPERTIES
  4. Ensure that the Startup type is set to Automatic. Afterward, click on the Start button to property start the service.
    RPC Properties
  5. Click Apply and then close the pop-up window. Now, repeat the same steps for the following 3 services: RPC Endpoint Mapper, Remote Procedure Call (RPC) Locator, and DCOM Service Process Launcher.
  6. After starting each service, restart your computer and check if the RPC server error is still present.

Method 2. Enable Remote Assistance in your firewall settings

Based on user reports, we were able to determine that one of the most common reasons for experiencing the “RPC Server Is Unavailable” error is caused by the firewall.

This is common — in order to filter everything and secure your device, the firewall often tends to block remote connections. Luckily, there’s a way to get around this without having to disable the firewall itself:

  1. Open the search bar in your taskbar by clicking on the magnifying glass icon. You can also bring it up with the Windows + S keyboard shortcut.
  2. Type in Allow an app through Windows Firewall and click on the first search result.
    allow app through Windows firewall
  3. Click on the Change settings button. Bear in mind that this action may require you to have access to an administrator account.
    • Read: Check out our How to make a local user an administrator in Windows 10 guide.
    • If you don’t have access to an account with the appropriate permissions, get in touch with your network administrators.
      remote assistance
  4. Scroll down and locate Remote Assistance in the entry list. Make sure that the checkboxes in its row are all ticked to fully enable the service. (See image below).
    remote assistance
  5. Click the OK button to finalize the change. We recommend restarting your computer and checking if the RPC server is available after making this change.

Method 3. Disable the Selective Startup feature

Selective Startup makes it so your device boots up without all features enabled. This can easily cause conflicts with the RPC server, rendering it unusable. Here’s how to disable this feature:

  1. Press the Windows + R keys on your keyboard. This is going to bring up the Run utility.
  2. Type in “msconfig” without the quotation marks and press the Enter key on your keyboard. This will launch the System Configuration.
  3. Stay on the General tab, and then ensure you have Normal startup selected. Click on the Apply button to finalize the change.
    disable the selective startup feature
  4. Restart your computer and check if the RPC server is correctly functioning. If this method didn’t work for you, try the next solution.

Method 4. Flush and renew your DNS

If your DNS is outdated, you can manually clear its cache to potentially fix the issues this causes. The method is simple and involves using the Command Prompt. Keep it in mind that you might be required to use an administrator account to perform this method.

  1. Press the Windows + R keys on your keyboard. This is going to bring up the Run utility.
  2. Type in “cmd” without the quotation marks and press the Enter key on your keyboard. This will launch the classic Command Prompt application.
    windows run dialog
  3. Paste in the following command and press the Enter key to execute it: ipconfig /flushdns.
    command prompt > ipconfig
  4. After successfully executing the previous command, you’ll need to renew your DNS. Type in and run this command: ipconfig /renew.
    command prompt > ipconfig
  5. Close the Command Prompt. We recommend restarting your computer and checking if the RPC Server error remains in place.

Method 5. Enable File and Printer Sharing for Microsoft Networks

Configuring your network to enable RPC services is a quick fix for the error at hand. By enabling the appropriate features, you can resolve all conflicts related to the RPC server and possibly fix the error at hand.

  1. Press the Windows + R keys on your keyboard. This is going to bring up the Run utility.
  2. Type in “control” and press the Enter key on your keyboard. This will launch the classic Control Panel application.
    Windows run dialog box
  3. Click on Network and Internet, then choose Network and Sharing Center. If you don’t see this option, ensure that your viewing mode is set to Category.
    control panel > network and internet
  4. From the menu on the left side, click on the Change adapter settings link. This is going to open a new window.
    change adapter settings
  5. Right-click on the connection you’re currently using and select Properties.
    change adapter settings > properties
  6. Locate the File and Printer Sharing for Microsoft Networks and the Internet Protocol Version 6 (TCP/IPv6) options from the list. Make sure that both checkboxes are checked.
    file and printer sharing for microsoft network
  7. Click OK. Restart your device and check if the RPC error is still present after enabling these options.

Method 6. Force RPC services to start

You can use the Registry Editor to force RPC services to start up. This is the most advanced method of fixing the issue at hand — we recommend you to create a Registry backup before proceeding with the steps below.

  1. Press the Windows + R keys on your keyboard. This is going to bring up the Run utility.
  2. Type in “regedit” without the quotation marks and press the Enter key on your keyboard. This will launch the Registry Editor application.
    windows run dialog > regedit
  3. Navigate to the following key: ComputerHKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesRpcSs
  4. You can use the address bar in the Registry Editor to type or paste the key as well, making navigation faster.
    registry editor
  5. Right-click on the Start value, and then choose Modify from the context menu. A new pop-up window should appear.
  6. Make sure that the Value data is set to 2. Change the Base selection to Hexadecimal, and then click the OK button.
    replace registry editor values
  7. Repeat the steps and modify the Start value in the following 2 Registry keys as well: 
    • ComputerHKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesDcomLaunch 
    • ComputerHKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesRpcEptMapper
  8. After modifying all 3 keys in the locations listed above, close the Registry Editor and restart your computer. You should immediately be able to test if the “RPC Server Is Unavailable” error appears.

Final thoughts

If you need any further help with Windows, don’t hesitate to reach out to our customer service team, available 24/7 to assist you. Return to us for more informative articles all related to productivity and modern-day technology!

Would you like to receive promotions, deals, and discounts to get our products for the best price? Don’t forget to subscribe to our newsletter by entering your email address below! Receive the latest technology news in your inbox and be the first to read our tips to become more productive.

You may also like

» How To Fix System Service Exception Error In Windows 10
> What Causes “Unmountable Boot Volume” on Windows 10 and How to Fix It
» [Solved] Hard Drive Not Showing up in Windows 10

Обмен данными между компьютерами в сети всегда выполняется согласно определенным процедурам – наборам правил, именуемым протоколами. Одним из таких протоколов является Remote Process Call, сокращенно RPC, отвечающий за взаимодействие приложений, установленных на клиентском и серверном компьютерах. Протокол RPC может использоваться самым разными программами и службами, причем не только в рамках взаимодействия между двумя физическими компьютерами.

При подключении клиент обращается к службе сопоставления конечных точек на сервере по TCP-порту 135 и запрашивает номер порта, на котором работает нужное ему приложение. Служба сопоставления конечных точек передает клиенту номер назначенного затребованному приложению порта, после чего по полученному порту TCP между клиентом и сервером начинается обмен данными. Если клиент не смог подключиться к серверу, в приложении появится ошибка «Сервер RPC недоступен». 

Первое, что рекомендуется проверить при получении ошибки «Сервер RPC недоступен» — это статус перечисленных ниже служб на клиентском и серверном ПК. Откройте командой services.msc оснастку управления службами и проверьте эти службы:

1. Удаленный вызов процедур (RpcSs). Самая главная служба, она должна быт запущена и иметь тип запуска «Автоматически». 

2. Инструментарий управления Windows (winmgmt). Должна быть запущена и иметь тип запуска «Автоматически».

3. Локатор удаленного вызова процедур RPC (RpcLocator). По умолчанию имеет тип запуска «Вручную», но можно попробовать перевести ее в автоматический режим.

4. Модуль запуска процессов DCOM-сервера (DcomLaunch). Запущена, автоматический тип запуска.

5. Служба времени Windows (W32Time). Запущена, автоматический тип запуска.

6. Сопоставитель конечных точек RPC (RpcEptMapper). Запущена, автоматический тип запуска.

Если настройки какой-то из этих служб отличаются, выставьте их так, как показано выше. Если вдруг настройки в свойствах той или иной службы окажутся неактивными, воспользуйтесь редактором реестра. Запустите оный командой regedit, разверните ветку HKLMSYSTEMCurrentControlSetservices и установите 2 в качестве значения параметра Start в подразделах RpcSs, Winmgmt, RpcLocator, DcomLaunch, W32Time и RpcEptMapper.

Примечание: так как для редактирования некоторых ключей реестра могут понадобиться системные привилегии, рекомендуем запускать редактор реестра с помощью утилиты ExecTI, предназначенной для предоставления штатным и сторонним программам прав TrustedInstaller.

Дополнительно можно проверить состояние служб «Модуль поддержки NetBIOS через TCP/IP» и «Удаленный реестр». Запустите их, если они остановлены.

На следующем этапе диагностики рекомендуем проверить сетевые настройки, в частности статус протокола IPv6. Откройте командой ncpa.cpl сетевые подключения, затем откройте свойства вашего сетевого адаптера и отыщите в списке пункт «IP версии 6 (TCP/IPv6)». Включите его, если отключен. То же самое касается опции «Общий доступ к файлам и принтерам для сетей microsoft». 

Также зайдите на обоих компьютерах в раздел настроек «Дополнительные параметры общего доступа» и убедитесь, что сетевое обнаружение и общий доступ к файлам и принтерам для используемого сетевого профиля включены. 

Попасть в раздел можно из Центра управления общим доступом или выполнив в окошке Win + R быструю команду control.exe /name Microsoft.NetworkAndSharingCenter /page Advanced. В этом же окне раскройте раздел «Все сети», активируйте опцию «Все сети» и отключите парольную защиту. 

Далее следует убедиться, что на клиентском и серверном ПК не заблокирован используемый протоколом RPC порт 135. Проще всего это сделать, выполнив в запущенной от имени администратора команду netstat -ano | find «135». Если порт 135 открыт, появится запись с информацией о текущем соединении, в противном случае ничего не отобразится. 

Если порт закрыт, откройте его, создав в брандмауэре два правила для входящих и исходящих соединений этими командами:

netsh advfirewall firewall add rule name=»Открытие порта 135.входящие» dir=in action=allow protocol=TCP localport=135

netsh advfirewall firewall add rule name=»Открытие порта 135.исходящие» dir=out action=allow protocol=TCP localport=135

Заодно проверяем, разрешено ли в брандмауэре взаимодействие с удаленным помощником. Для этого в окне брандмауэра жмем «Разрешение взаимодействия с приложением или компонентом в брандмауэре Защитника Windows» и смотрим, установлен ли флажок в чекбоксе «Удаленный помощник». Если нет, жмем кнопку «Изменить параметры», активируем опцию и сохраняем настройки. 

Если проблема не была решена, обратите внимание на следующие моменты.

 Отключите VPN и ли прокси, если таковые используются. 

 В случае использования сторонних антивирусов и особенно брандмауэров попробуйте их отключить.

 Проверьте файл HOSTS на предмет блокировок IP-адресов.

 Если используется тип сети «Общественная», измените ее на «Частную».

 Отключите на время сетевой протокол teredo, выполнив в консоли команду netsh interface teredo set state disabled (для повторного включения замените ключ disabled на enabled).

Наконец, можно сбросить сетевые настройки из раздела «Сеть и Интернет» приложения «Параметры» на тот случай, если неполадка подключения была обусловлена их сбоем.

Понравилась статья? Поделить с друзьями:
  • Ошибка сервер rpc занят и не может завершить операцию
  • Ошибка сервер ole в access
  • Ошибка сервер imap сбросил соединение
  • Ошибка связи невозможно соединиться с сервером
  • Ошибка связи не удается открыть сокет на tls сервере