Как найти службу 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 недоступен и 8 способов исправления в системе Windows 10

Функция удаленного обмена данными между компьютерами, которые находятся в одной сети, является довольно популярной. Ею пользуются миллионы людей по всему миру, но иногда при попытке подключения люди могут увидеть сообщение о том, что сервер RPC недоступен на операционной системе Windows 10. Из-за этого, например, не получается распечатать документ через Abbyy Licensing Service. Проблема очень распространена, а потому нашлось несколько способов ее решения.

Почему «Сервер RPC недоступен»

Для начала попробуем определить, почему при попытке подключения на экране появляется ошибка.

screenshot_1

Опытные пользователи предлагают обратить внимание на следующие причины:

  • отключение компьютера от сети;
  • деактивация служб RPC;
  • при подключении используется неправильное имя сервера;
  • сбились сетевые настройки;
  • трафик блокируется брандмауэром.

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

screenshot_2

Что делать в таком случае

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

Службы Windows

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

  • Щелкните ПКМ по иконке «Пуск».
  • Запустите «Диспетчер устройств».

screenshot_3

  • Перейдите во вкладку «Службы».
  • Кликните ЛКМ по надписи «Открыть службы» (расположена внизу).

screenshot_4

  • В списке служб найдите «Локатор удаленного вызова процедур (RPC)». Удостоверьтесь, что в пункте «Тип запуска» установлено значение «Вручную», а в пункте «Состояние» – «Отключена». Если один из параметров отличается, то действуйте дальше.

screenshot_5

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

screenshot_6

  • Найдите службу «Удаленным вызовом процедур (RPC)». Задайте для нее автоматический тип запуска, а также принудительно запустите.

screenshot_7

  • Сохраните изменения.

screenshot_8

Необходимо сделать то же самое с другими службами: «Сервер», «Средство построения конечных точек», «Удаленный реестр», «Питание», «Диспетчер печати» и «Модуль запуска процессов DCOM-сервера». Теперь ошибка должна исчезнуть. На всякий случай рекомендуется перезагрузить компьютер. Причем как первый, так и второй.

screenshot_9

Деактивация брандмауэра

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

  • Используя меню «Пуск», откройте «Параметры».

screenshot_10

  • Перейдите в раздел «Обновление и безопасность», а затем – «Безопасность Windows».

screenshot_11

  • Щелкните ЛКМ по опции «Брандмауэр и защита сети».

screenshot_12

  • Отключите инструмент.

screenshot_13

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

Поиск вирусов

Случается обратная ситуация, когда проблема вызывается не ошибкой защитника, а наличием вирусов, которые получили доступ к службе RPC. Рекомендуется провести полноценную проверку при помощи специальных антивирусных программ вроде Kaspersky Internet Security или Avast.

На заметку. Так как Windows 10 обладает встроенным средством защиты, вы можете запустить проверку через него, отказавшись от установки стороннего антивируса.

screenshot_14

Перезапустите сервер RPC

Также для устранения неполадок рекомендуется перезапустить сервер RPC. Операция выполняется следующим образом:

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

screenshot_15

  • Перейдите в раздел «Администрирование». А затем – «Службы».

screenshot_16

  • Двойным щелчком ЛКМ откройте настройки службы «DCOM Server Process Launcher».
  • В пункте «Тип запуска» установите значение «Автоматически», а потом нажмите на кнопку «Запустить», чтобы служба начала работать.

screenshot_17

  • Если изначально стояли указанные параметры, то сначала нужно отключить службу. После этого не забудьте ее активировать.

Наконец, останется перезагрузить компьютер. Так вы сможете быть уверены, что изменения вступили в силу. Скорее всего, проблема исчезнет.

Чистая загрузка компьютера, чтобы исключить сторонние приложения

Не исключено, что сервер RCP вступил в комплект с другими службами компьютера. Во избежание проблем с удаленным подключением рекомендуется деактивировать все приложения, работающие по принципу автозагрузки:

  • Откройте инструмент «Конфигурация системы».

screenshot_18

  • Во вкладке «Службы» отметьте пункт «Скрыть все службы Microsoft». Это позволит обезопасить себя от случайного отключения важных процессов.

screenshot_19

  • Запустите «Диспетчер задач» («Ctrl» + «Shift» + «Esc»).
  • Перейдите во вкладку «Автозагрузка» и отключите все процессы, представленные здесь.

screenshot_20

Разумеется, изменения вступят в силу только после перезагрузки устройства. Компьютер запустится в «чистом» режиме, и конфликт должен быть исчерпан. Проверьте, появится ли ошибка снова.

Проверьте настройки сетевого подключения

Ошибка бывает следствием того, что на вашем компьютере сбились сетевые настройки. На всякий случай обратитесь к инструкции:

  • Запустите окно «Выполнить» комбинацией клавиш «Win» + «R».
  • Введите запрос «ncpa.cpl» и нажмите на кнопку «ОК».

screenshot_21

  • Кликните ПКМ по текущему подключению.
  • Перейдите в «Свойства».

screenshot_22

  • Активируйте интернет-протоколы IPv4 и IPv

screenshot_23

  • Запустите «Диспетчер устройств».

screenshot_24

  • Раскройте вкладку «Сетевые адаптеры».
  • Обновите драйверы сетевых устройств или переустановите их.

screenshot_25

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

Измените настройки реестра

Возможно, вам до сих пор не удалось решить проблему из-за того, что стандартными способами сервер RCP не включился. Стоит попробовать сделать это в принудительном порядке:

  • Откройте окно «Выполнить».
  • Обработайте запрос «regedit».

screenshot_26

  • Перейдите в директорию «HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesRpcSs».
  • Двойным щелчком ЛКМ откройте настройки файла «Start».
  • Установите для него значение «2» и выберите шестнадцатеричную систему исчисления.

screenshot_27

  • Вернитесь в папку «Services». Повторите действия, описанные выше, с другими файлами «Start», которые располагаются в подпапках «DcomLaunch» и «RpcEptMapper».

Если все сделано правильно, произойдет принудительный запуск служб. В то же время есть вероятность, что изменения вступят в силу только после перезагрузки ПК.

Используйте «Восстановление системы» для восстановления вашего компьютера

Радикальная мера, которая поможет в том случае, если ранее с удаленным подключением у вас не возникало сложностей:

  • Откройте «Панель управления».

screenshot_28

  • Используя поиск ПУ, найдите пункт «Восстановление».

screenshot_29

  • Щелкните по надписи «Открыть восстановление системы».

screenshot_30

  • Выберите точку восстановления и подтвердите выполнение операции.

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



Всем привет! В общем, сегодня столкнулся с проблемой – при попытке подключения к удаленному компьютеру произошла следующая системная ошибка:

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

Бился я с ней где-то часа два, и все же мне удалось её решить. Я на всякий пожарный описал все возможные способы, которые мне попадались в интернете. Постарался описать подробно, но сжато, чтобы не тратить ваше время. Если что-то будет не получаться – пишите в комментариях, постараюсь вам помочь.

Содержание

  1. Способ 1: Запуск служб
  2. Способ 2: Целостность системных файлов
  3. Способ 3: Выключение антивируса или брандмауэра
  4. Способ 4: Комплексные меры
  5. Задать вопрос автору статьи

Способ 1: Запуск служб

Сервер RPC недоступен в Windows 10 и Windows 11

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

  1. Одновременно на клавиатуре зажмите две клавиши:

+ R

  1. Введите команду:

services.msc

Сервер RPC недоступен в Windows 10 и 11: как решить проблему?

  1. Теперь найдите службу «Локатор удаленного вызова процедур (RPC)». Чтобы открыть службу, два раза быстро нажмите левой кнопкой мыши. Или через правую кнопку и контекстное меню перейдите в «Свойства».

Сервер RPC недоступен в Windows 10 и 11: как решить проблему?

  1. В первую очередь обратите внимание на «Состояние» – служба не должна быть активной. Если вы видите, что она запущена – остановите её с помощью кнопки. После этого еще проверьте «Тип запуска» – чтобы стоял параметр «Вручную». Примените настройки и закройте окошко.

Сервер RPC недоступен в Windows 10 и 11: как решить проблему?

  1. Вторую службу, которую нужно проверить – это служба «Удаленного вызова процедур (RPC).

Сервер RPC недоступен в Windows 10 и 11: как решить проблему?

  1. Данная служба наоборот должна быть запущена (смотрим в «Состояние») – если она по каким-то причинам остановлена, запустите её. Также установите автоматический тип запуска. Не забудьте применить настройки, если вы их меняли.

Сервер RPC недоступен в Windows 10 и 11: как решить проблему?

  1. Все то же самое делаем для служб:

Сервер

Средство построения конечных точек Windows Audio

Удаленный реестр

Питание

  1. Все они должны быть запущены. Ну и не забудьте проверить тип запуска – служба должна автоматически запускаться вместе с запуском операционной системы.

ПРИМЕЧАНИЕ! Если в коде ошибки вы видите конкретный номер 1722 – это значит вам нужно дополнительно проверить еще две службы «Модель запуска процессов DCOM-сервера» и «Диспетчер печати».

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

Способ 2: Целостность системных файлов

Для нормальной работы всех служб и встроенных системных программ, которые работают с RPC, нужно, чтобы все файлы системы были исправны. Из-за вирусов, сторонних программ, а также из-за поломки секторов жесткого диска системные файлы могут ломаться. Нам нужно проверить целостность системных файлов и восстановить их.

Запускаем командную строку с правами администратора. Прежде чем мы запустим проверку, хочу вас предупредить, что в некоторых ситуациях процедура может длиться долго. Windows автоматически должна проверить файлы и в случае обнаружения поломок восстановить их. Используем две команды:

DISM.exe /Online /Cleanup-image /Restorehealth
sfc /scannow

Сервер RPC недоступен в Windows 10 и 11: как решить проблему?

Способ 3: Выключение антивируса или брандмауэра

Возможно проблема с удаленным подключением связана с блокировкой вашего антивируса. Попробуйте его выключить. Для этого в правом нижнем углу экрана в трее нажмите правой кнопкой по значку вашего антивируса – далее поищите в каждом из пунктов команду отключения защиты и деактивируйте её на какое-то время. После этого проверьте, чтобы ошибка не возникала.

Сервер RPC недоступен в Windows 10 и 11: как решить проблему?

Если у вас нет стороннего антивируса – его роль исполняет встроенный Windows Defender. Давайте попробуем выключить защиту для той сети, к которой вы подключены.

  1. Откройте «Пуск» – «Параметры».

Сервер RPC недоступен в Windows 10 и 11: как решить проблему?

  1. Найдите раздел «Обновление и безопасность».

Сервер RPC недоступен в Windows 10 и 11: как решить проблему?

  1. Перейдите в подраздел «Безопасность Windows» и слева из списка выберите пункт «Брандмауэр и защита сети».

Сервер RPC недоступен в Windows 10 и 11: как решить проблему?

  1. Выберите ту сеть, к которой вы подключены – она обозначена надписью «активный».

Сервер RPC недоступен в Windows 10 и 11: как решить проблему?

  1. Выключите «Брандмауэр Microsoft Defender».

Сервер RPC недоступен в Windows 10 и 11: как решить проблему?

Если проблема не решилась, включите параметр обратно и переходите к следующей главе. Если проблема решилась, дальше нужно думать, как обратно включить защиту для сети. Можно попробовать установить сторонний антивирус, чтобы он взял роль «защитника» на себя. Вы также можете в «Пуск» – «Параметры» – «Обновление и безопасность» – в разделе «Обновления» установите все пакеты, которые предлагает система. Возможно, есть какой-то баг, который мешает работе защитника и сети. Этот баг может исправиться после обновления. Также обязательно проверьте комп антивирусной программой. Можете для этого использовать встроенный Defender.

Способ 4: Комплексные меры

Итак, у нас есть ошибка сервера RPC, который по каким-то причинам не доступен в Windows (10, 11, 7 или 8). Я опишу ряд советов, которые должны помочь при удаленном подключении и решении данной ошибки.

  • Если вы используете какие-то VPN или Proxy – выключите эти программы и подключения.
  • Полностью проверьте компьютер и систему на наличие вирусов.
  • Уберите все из автозагрузки, кроме драйвера звуковой карты и антивируса. После этого перезагрузите компьютер и проверьте подключение.
  • Выполните комплексную чистку компьютера от всего лишнего.
  • Обновите драйвера на материнскую плату. Если вы используете стороннюю сетевую карту или Wi-Fi адаптер, обновите драйвера и для них. Дрова скачиваем исключительно вручную с официального сайта. Про то, как это сделать – подробно написано в этой статье (ссылка).
  • Если вы пытаетесь получить доступ к какому-то устройству в своей локальной сети – почитайте рекомендации отсюда.
  • Обновите прошивку вашего роутера, если вы используете его для подключения.
  • Установите все обновления для вашей системы, если вы этого еще не сделали.

На этом все, дорогие друзья. Вы можете обращаться за помощью ко мне в комментариях. Я или кто-то из других специалистов портала WiFiGiD.RU вам ответит и постарается помочь. Старайтесь писать, как можно подробнее о своей проблеме, а также о том, что вы уже сделали из статьи выше. Всем добра и берегите себя.

Ошибка “
Сервер RPC недоступен
” (
The RPC server is unavailable
) появляется в Windows при ошибке коммуникации между двумя компьютерами по сети, когда компьютер (клиент RPC) не может подключиться к удаленному компьютеру (сервер RPC). В результате программа, которую вы запустили, не работает и возвращает ошибку, т.к. не можете получить данные с удаленного сервера. В этой статье мы разберем наиболее частые проблемы, которые могут препятствовать нормальному взаимодействию компьютеров через сеть по протоколу RPC.

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

Протокол 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 взаимодействие между компьютерами:

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

Проверка доступности удаленного компьютера

Убедитесь, что удаленный компьютер включен, отвечает на ping по имени и IP адресу. Если RPC сервер не доступен по имени, проверьте корректность DNS записей и попробуйте сбросить DNS кэш на клиенте:
ipconfig /flushdns
.

Если имя компьютера, на котором запущен RPC-сервер недавно изменилось, попробуйте перерегистрировать его в DNS Active Directory:
ipconfig /registerdns

Проверка служб RPC

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

  1. Откройте консоль управления службами (services.msc);
  2. Убедитесь, что следующие службы запущены (статус Running), а тип их запуска – автоматический: Remote Procedure Call (RPC), RPC Endpoint Mapper и DCOM Server Process Launcher;проверить, что службы RCP запущены в Windows

Если RPC службы отключены и не запускаются, попробуйте активировать их через реестр. Найдите ветки этих служб в реестре и измените значение параметра Start на 2 (автоматический запуск службы):

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

включить службы RpcSs в реестре

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

Test-NetConnection powershell проверка TCP порт 135 службы RPC Endpoint Mapper

Если 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

включить протокол ipv6 и протокол общего доступа в windows 10

Некоторые сетевые приложения некорректно работают при отключенном протоколе TCP/IPv6, возвращая ошибку:
1722 The RPC server is unavailable
. Если после включения ipv6 ошибка RPC сохраняется, попробуйте отключить протокол Teredo через реестр:

Создайте в ветке реестра HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpip6Parameters параметр типа DWORD с именем DisabledComponents и значением 8:

reg add hklmsystemcurrentcontrolsetservicestcpip6parameters /v DisabledComponents /t REG_DWORD /d 8

В некоторых случаях приходится получаить дамп трафика на RPC сервера и анализирвать его с помощью Microsoft Network Monitor 3.4 или Message Analyzer.

На чтение 8 мин. Просмотров 101 Опубликовано 13.09.2022

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

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

Содержание

  1. Что такое сервер RPC?
  2. Почему не работает сервер RPC?
  3. Проверьте службу RPC
  4. Внести изменения в сетевое подключение
  5. Включите нужные процессы
  6. Перезапустите сетевое подключение
  7. Обновление / переустановка драйвера сетевого адаптера
  8. Выполните тест Ping
  9. Промойте DNS
  10. Измените настройки брандмауэра
  11. Изменение параметров в реестре
  12. Восстановление Windows
  13. Часто задаваемые вопросы
  14. Как запустить службу RPC?
  15. Можно ли перезапустить службу RPC?
  16. Можно ли отключить RPC Endpoint Mapper?

Что такое сервер RPC?

RPC расшифровывается как Remote Procedure Call (удаленный вызов процедур). Проще говоря, сервер RPC — это функция, позволяющая Windows взаимодействовать как по сети, так и на вашем компьютере. Вы должны сразу же решить проблему, потому что она может вызвать проблемы с несколькими устройствами или функциями, которые должен выполнять ваш компьютер.

Когда вы получаете сообщение об ошибке, говорящее, что RPC Server недоступен, это может означать, что сама служба остановлена. Это достаточно легко исправить. Однако другие проблемы с вашим компьютером также могут создавать проблемы с сервером RPC — и для их устранения может потребоваться более тщательное расследование. 

Почему не работает сервер RPC?

Более чем одна проблема может помешать серверу RPC работать правильно. Проблема может быть связана, например, с самой службой, брандмауэром или сетевым подключением.

Проверьте службу RPC

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

  1. Нажмите клавишу Windows + R.
  2. Введите «services.msc» без кавычек.
  3. Нажмите OK.
  4. Найдите DCOM Server Process Launcher. Щелкните правой кнопкой мыши по этому пункту и выберите «Запустить».
  5. Найдите Remote Procedure Call (RPC). Щелкните запись правой кнопкой мыши и выберите Start.
  6. Найдите Диспетчер конечных точек RPC. Щелкните запись правой кнопкой мыши и выберите Start.

Если эти записи уже говорят о том, что они запущены, выберите Обновить вместо Запустить, чтобы проверить, поможет ли это службе работать правильно. 

Также следует проверить, будет ли служба запускаться автоматически. Третья колонка после названия — это Тип запуска. Под ним каждый из этих процессов должен быть указан как Автоматический.

Многие процессы можно изменить прямо из окна Службы, но это не относится к трем важным процессам, связанным с RPC Server. Их необходимо настроить в реестре.

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

Внести изменения в сетевое подключение

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

Включите нужные процессы

  1. Нажмите клавишу Windows + R.
  2. Введите «ncpa.cpl» без кавычек.
  3. Нажмите Enter.
  4. Найдите сеть, которую вы используете. Может отображаться несколько подключений, поэтому важно сделать это на той сети, к которой подключен ваш компьютер.
  5. Щелкните правой кнопкой мыши на сети и выберите «Свойства».
  6. Найдите пункты «Общий доступ к файлам и принтерам для сетей Microsoft» и «Протокол Интернета версии 6».
  7. Убедитесь, что оба флажка установлены.
  8. Нажмите OK.

Перезагрузите компьютер и проверьте, устранена ли ошибка сервера RPC.

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

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

  1. Выключите компьютер.
  2. Отключите маршрутизатор и модем от сети.
  3. Подождите пять минут. 
  4. Подключите модем.
  5. Подождите еще пять минут или до тех пор, пока все индикаторы на модеме не будут гореть в правильных настройках в течение хотя бы минуты.
  6. Подключите маршрутизатор.
  7. Подождите, пока маршрутизатор не станет полностью активным и рабочим.
  8. Включите компьютер. Дайте всему загрузиться и дождитесь, пока ваш компьютер поймает подключение к Интернету.
  9. Снова проверьте состояние службы RPC в окне «Службы».
  10. Попробуйте воспроизвести действие, которое вы выполняли, когда получили сообщение об ошибке RPC.

Иногда то, что исправление работает или нет, видно не сразу. Вам нужно использовать компьютер и посмотреть, возникнет ли ошибка снова.

Обновление / переустановка драйвера сетевого адаптера

Иногда обновление драйвера сетевого адаптера может помочь решить проблемы со службой RPC. 

  1. Нажмите клавишу Windows + X.
  2. Выберите Диспетчер устройств.
  3. Раскройте категорию Сетевые адаптеры.
  4. Щелкните правой кнопкой мыши на используемом адаптере.
  5. Выберите Обновить драйвер.
  6. Нажмите Автоматически искать драйверы.
  7. Следуйте подсказкам, чтобы установить драйверы, если Windows найдет их.

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

Выполните тест Ping

Если вы пытаетесь подключиться к удаленному серверу, проблема может быть связана с вашим подключением к этому серверу. Попробуйте выполнить ping-тест, чтобы убедиться, что все в порядке.

Для выполнения этого теста вам понадобится IP-адрес удаленного сервера.

  1. Нажмите клавишу Windows + R.
  2. Введите «cmd» без кавычек.
  3. Нажмите Enter.
  4. Введите «ping XXX.XX.X.X», но замените Xs на IP-адрес, который вы хотите проверить.
  5. Нажмите Enter.
  6. Прочитайте результаты, чтобы определить, был ли тест успешным.

Например, когда я пингую 8.8.8.8 для проверки соединения с сервером Google DNS, я получаю задержку около 21 мс при 0 процентах потери пакетов. Хотя результаты могут быть разными, вам нужна низкая задержка и низкая потеря пакетов. Если вы заметили что-то другое, проверьте удаленный сервер и убедитесь, что он работает правильно. 

Промойте DNS

Если ваш DNS настроен неправильно, его очистка может помочь решить проблемы с сервером RPC.

  1. Нажмите клавишу Windows + R.
  2. Введите «cmd» без кавычек.
  3. Нажмите Enter.
  4. Введите следующие команды одну за другой и нажмите Enter.
  5. Перезагрузите компьютер.

После этого попробуйте повторить действия, которые привели к ошибке сервера RPC, чтобы узнать, устранила ли ее переустановка DNS. 

Измените настройки брандмауэра

Ваш брандмауэр может блокировать прохождение трафика RPC. Если это так, это может помешать работе службы. Проверьте, правильно ли он настроен для работы с функциями RPC.

  1. Нажмите клавишу Windows.
  2. Введите «Брандмауэр» без кавычек.
  3. Выберите «Брандмауэр Windows Defender».
  4. Нажмите «Разрешить приложение или функцию через брандмауэр Windows Defender» в левой боковой панели.
  5. Найдите «Удаленная помощь».
  6. Установите флажок, если он не установлен.
  7. Нажмите OK, чтобы сохранить настройки.

Изменение параметров в реестре

Изменение реестра — это серьезный шаг, который может создать проблемы, если вы не знаете, что делаете. Перед началом работы убедитесь, что система и файлы сохранены в резервной копии.

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

Единственная причина для внесения этих изменений — если запись Remote Procedure Call в Services не настроена на автоматический запуск.

  1. Нажмите клавишу Windows + R.
  2. Введите «regedit» без кавычек.
  3. Нажмите Enter и нажмите Да.
  4. Разверните, Computer>HKEY_LOCAL_MACHINE>SYSTEM>CurrentControlSet>Services
  5. Щелкните на RpcSs.
  6. Дважды щелкните Start в правой панели.
  7. Введите «2» без кавычек в поле Value Data.
  8. Нажмите OK.
  9. Нажмите на процесс DcomLaunch, как вы нажали на RpcSs. Это должна быть отдельная запись в разделе Службы.
  10. Дважды щелкните Start в правой панели.
  11. Введите «2» без кавычек в Value Data.
  12. Нажмите OK.
  13. Щелкните на записи RpcEptMapper, как и на других.
  14. Дважды щелкните на Start в правой панели.
  15. Введите «2» без кавычек в Значение данных.
  16. Нажмите OK.
  17. Закройте редактор реестра.

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

Восстановление Windows

Если файлы реестра отсутствуют, попробуйте выполнить расширенное восстановление Windows. Это может помочь вам восстановить файлы без полного сброса системы. Это можно сделать из среды восстановления Windows.

Восстановление запуска не исправит все проблемы, но это отличный вариант, который можно попробовать, если ваш сервер RPC все еще не работает. 

  1. Нажмите и удерживайте кнопку питания на компьютере в течение десяти секунд. Дайте ему выключиться.
  2. Включите его и, когда появится логотип Windows, снова нажмите и удерживайте кнопку питания, пока он не выключится.
  3. Снова включите его. Повторите тот же процесс.
  4. Снова включите устройство и дайте ему загрузиться. На экране должна появиться среда восстановления Windows.
  5. Нажмите Посмотреть дополнительные параметры восстановления.
  6. Нажмите Устранение неполадок.
  7. Выберите Дополнительные параметры.
  8. Выберите Startup Repair (Восстановление запуска).
  9. Нажмите Перезапустить. 

Завершение этого процесса может восстановить ваш реестр. Если все еще не работает и параметры реестра по-прежнему недоступны, подумайте о переустановке Windows на вашем компьютере.

Часто задаваемые вопросы

Как запустить службу RPC?

Это делается тем же способом, которым вы проверяете, включена ли она. Просто перейдите в раздел «Службы» и выберите «Запустить». Однако все службы RPC должны запускаться автоматически. 

Можно ли перезапустить службу RPC?

Перезагрузка компьютера — это быстрый и простой способ перезапустить службу RPC. Вы также можете зайти в утилиту Services и обновить службу там.

Можно ли отключить RPC Endpoint Mapper?

Лучше всего оставить RPC endpoint mapper включенным. Его отключение может вызвать проблемы со стабильностью, а также помешать корректной работе определенных программ и функций. 

Понравилась статья? Поделить с друзьями:
  • Лост арк соединение с сервером было разорвано как исправить
  • Как найти девушку на ночь в минске
  • Как найти автора картины по картине
  • Как найти песню по первым звукам
  • Как найти массу бруска физика