Microsoft windows rpc что это такое

Что такое RPC и почему это так важно?

С самого начала я слышал, что вы никогда не отключаете службу удаленного вызова процедур в Windows. Это приводит к ужасным вещам, которые раньше было трудно перевернуть (я считаю, что это уже не легко сделать, но теперь гораздо легче исправить). Тем не менее, я понятия не имею, что он делает или почему это так важно для всей операционной системы.

Можно ли подытожить назначение службы RPC и почему так много других служб / приложений / операций зависит от ее запуска?

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

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

Я верю, что даже когда вы обращаетесь к консоли MMC, например, compmgmt.msc для просмотра информации о локальной машине, это в основном RPC для localhost (хотя я могу ошибаться).

Считайте RPC чем-то на один уровень выше TCP / IP, который используется как низкоуровневая (и небезопасная) сетевая коммуникационная структура многими компонентами Windows. Почему бы не использовать TCP / IP напрямую? Во время разработки Windows NT (первоначальная версия была выпущена в 1993 году) у вас были другие сетевые протоколы, помимо TCP / IP, которые обычно используются, такие как Netware (SPX / IPX), NetBIOS, AppleTalk (я думаю, что Windows поддерживала это в свое время может ошибаться . ) и тому подобное. Так что это независимый от сети способ для компонентов Windows иметь возможность общаться с другими компонентами на локальном или удаленном компьютере.

Правда в том, что RPC широко используется в LOCAL- машине, но для использования HOST-HOST , в основном используется Microsoft для внутренних целей , редко используется сторонними разработчиками .

LOCAL RPC основное использование:

Необработанный компонент RPC, такой как Реестр, Netlogon, Брандмауэр, Управление службами, SQL Server . Некоторые из них вы можете увидеть в списке в разделе «HOST-to-HOST».

многие компоненты DCOM (основанные на RPC, как оболочка C ++ из C) включают компоненты COM +.

Вы можете запустить dcomcnfg, чтобы увидеть, сколько компонентов DCOM на вашем компьютере:

Excel, Internet Explorer, Visual Studio . могут быть автоматизированы, потому что они являются компонентом DCOM:

Даже диалог Свойства файла в Проводнике также является компонентом DCOM, смешно? Если вы удалите все списки ACL из «Правки редактирования» в разрешениях запуска DCOMCNFG, вы не сможете делать почти ничего, кроме работы управления !, даже показывать свойство файла в проводнике!

Основное использование HOST-to-HOST RPC:

Такие вещи, как «Управление компьютером», «Редактор реестра», позволяют подключать его к удаленной машине! Подчеркивание происходит по протоколу RPC через SMB (TCP-порт 445, известный как общий доступ к файлам).

Читайте также:  Apple a1277 windows drivers

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

Почему RPC важен? Просто потому, что каждой зрелой системе нужен механизм межпроцессного взаимодействия, набор инструментов для создания заглушки / прокси, стандарт для упаковки / распаковки объекта. В каждой системе есть похожие вещи. Вы должны знать Android, его Binder очень похож на дизайн DCOM.

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

Удаленный вызов процедур (RPC)

Удаленный вызов процедур (RPC) — это протокол, который одна программа может использовать для запроса услуги у программы, расположенной на другом компьютере в сети, без необходимости понимать детали сети. (Вызов процедуры также иногда называют вызовом функции или вызовом подпрограммы.) RPC использует модель клиент / сервер. Запрашивающая программа является клиентом, а программа, предоставляющая услуги, является сервером. Как и обычный или локальный вызов процедуры, RPC является синхронной операцией, требующей приостановки запрашивающей программы до тех пор, пока не будут возвращены результаты удаленной процедуры. Однако использование облегченных процессов или потоков, которые совместно используют одно адресное пространство, позволяет одновременно выполнять несколько RPC.

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

Существует несколько моделей и реализаций RPC. Популярной моделью и реализацией является Распределенная вычислительная среда (DCE) Open Software Foundation. Институт инженеров по электротехнике и электронике определяет RPC в своей спецификации удаленного вызова процедур ISO, CD / ISO 11578 N6561, ISO / IEC, ноябрь 1991 г.

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

Альтернативные методы связи между клиентом и сервером включают в себя создание очереди сообщений и расширенное межпрограммное взаимодействие IBM (APPC).

Назначение
Удаленный вызов процедур Microsoft (RPC) определяет мощную технологию для создания распределенных клиент-серверных программ. Заглушки и библиотеки времени выполнения RPC управляют большинством процессов, связанных с сетевыми протоколами и связью. Это позволяет вам сосредоточиться на деталях приложения, а не на деталях сети.
Где применимо,
RPC может использоваться во всех клиент-серверных приложениях на основе операционных систем Windows. Его также можно использовать для создания клиентских и серверных программ для разнородных сетевых сред, в которые входят такие операционные системы, как Unix и Apple.

Удаленный вызов процедур (RPC) (Remote Procedure Call (RPC))

Читайте также:  Huawei modem terminal для windows 10

Посетителей: 246064 | Просмотров: 295852 (сегодня 2) Шрифт:

Системная служба удаленного вызова процедур (RPC) представляет собой механизм взаимодействия между процессами (IPC), который позволяет осуществлять обмен данными и вызывать функции из других процессов. Другой процесс может быть запущен на локальном компьютере, в локальной сети или на удаленном компьютере; для получения доступа к нему используется подключение по глобальной (WAN) или виртуальной частной (VPN) сети. Служба RPC выступает в роли службы отображения конечных точек RPC и диспетчера служб СОМ (Component Object Model). Служба удаленного вызова процедур необходима для запуска многих других служб.

Эту службу можно назвать ключевой в Windows XP, ваша система не будет без нее работать, именно поэтому это единственная служба, которую вы не можете отключить через консоль Службы (services.msc). Отключение данной службы в Windows 2000 приводило к тому, что система переставала загружаться. Поэтому я КАТЕГОРИЧЕСКИ не рекомендую отключать эту службу (а сделать это можно только через утилиту msconfig).

Название службы: RpcSs
Название процесса: svchost.exe
По умолчанию в Windows XP Home: Автоматически
По умолчанию в Windows XP Pro: Автоматически
Рекомендуемое значение: Автоматически
Вход от имени: Сетевая служба
Используемые протоколы и порты, на которых служба ожидает входящий трафик: TCP: 135, TCP: 593

Какие сервисы нужны для нормального функционирования службы Удаленный вызов процедур (RPC) (Remote Procedure Call (RPC)):

Какие сервисы требуют работу службы Удаленный вызов процедур (RPC) (Remote Procedure Call (RPC)) для нормального функционирования:

Сервер RPC недоступен в Windows 10 — Как исправить?

Remote Process Call (RPC) в переводе «удаленный вызов процедур» — это протокол, который позволяет программам на одном компьютере получать доступ к определенным службам программы на другом компьютере, который находится в той же сети. Другими словами, его основная цель, это дать возможность клиенту и серверу взаимодействовать друг с другом по сети. Но, иногда пользователи сталкиваться с ошибкой «Сервер RPC недоступен» в Windows 10, и ошибка может появляться при подключении к удаленному рабочему столу, при попытке распечатать документ на сетевом принтере, в почте outlook, abbyy licensing service и т.п. Недоступность RPC может быть не только по локальной сети, а так же в периферийных устройствах контроллера как сканер или принтер.

Причины ошибки, когда сервер RPC недоступен в Windows 10 могут быть разные, но в основном это: служба(ы) требуемые для RPC отключены, удаленный помощник отключен в брандмауэре, IPV6 или общий доступ к файлам и принтерам отключен, IP-адрес приводит к сбою сервера RPC или службы RPC отключены в реестре. Давайте разберем эти моменты, чтобы исправить ошибку, когда удаленный вызов процедур дает сбой и появляется ошибка, что сервер RPC недоступен в Windows 10.

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

Службы RPC могут перейти от автоматического режима в ручной, что и будет вызывать ошибку. Первым делом стоит проверить службу. Нажмите сочетание кнопок Win+R и введите services.msc, чтобы быстро открыть службы. В предоставленном списке найдите следующие службы и нажмите правой кнопкой мыши, выберите «свойства». Задайте параметры, если у вас не так — Тип запуска: Автоматически и запустить, если служба остановлена.

  1. Локатор удаленного вызова процедур (RPC).
  2. Модуль запуска процессов DCOM-сервера.
  3. Удаленный вызов процедур (RPC).
  • Если у вас ошибка связанная с программой ABBYY licensing service, то ищите службу с названием ABBYY FineReader и установить для нее те же значения.
  • Если у вас стоят не правильные параметры и не можете ничего изменить (выделено все серым), то следуйте 5 способу.
Читайте также:  What is audio codec windows

2. Удаленный помощник в брандмауэре

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

Нажмите Win+R и введите firewall.cpl, чтобы открыть параметры брандмауэра. Слева нажмите на «Разрешение взаимодействия с приложениями«.

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

3. Включение IPV6 и общего доступа к файлам и принтерам

В некоторых случаях вы можете столкнуться с ошибкой 1722: RPC сервер недоступен, когда происходит сбой сетевого подключения, так как отключены сетевой доступ к принтерам для сетей Microsoft и протокол TCP/IPv6.

Нажмите Win+R и введите ncpa.cpl, чтобы открыть сетевые адаптеры. Нажмите на сетевом адаптеры, через которое идет сеть, и выберите «свойства». Далее в списке найдите два параметра и убедитесь что они включены (галочки установлены).

  1. Общий доступ к файлам и принтерам для сетей Microsft.
  2. IP версии 6 (TCP/IPv6).

Если ошибка «сервер RPC недоступен» с кодом 1722 все еще появляется, то двигаемся ниже.

4. Очистить DNS

Очистка старых DNS может исправить код ошибки 1722 RPC. В первую очередь убедитесь, что службы, связанные с RPC, работают как в способе 1. Далее запускаем командную строку от имени администратора и введите следующие команды для очистки и сброса DNS:

  • ipconfig /flushdns
  • ipconfig /renew

Проверьте, исправлена ли ошибка 1722 RPC недоступен.

5. Редактор реестра для запуска RPC служб

Если вы не смогли запустить службы способом 1, то запустим их через реестр. Для полной эффективности, убедитесь, что вы проделали способ 3 и способ 4. Нажмите Win+R и введите regedit, чтобы открыть редактор реестра.

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RpcSs
  • Справа щелкните два раза мышкой по Start и установите значение 2 с шестнадцатеричной системой.
  • Это активирует удаленный вызов процедур (RPC).

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DcomLaunch
  • Откройте параметр Start и задайте значение 2 с шестнадцатеричной системой.
  • Это запустит модуль запуска процессов DCOM-сервера.

И еще по одному пути:

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RpcEptMapper
  • Откройте параметр Start и задайте значение 2 с шестнадцатеричной системой.
  • Это запустит локатор удаленного вызова процедур (RPC).

Перезагрузите ПК и проверьте, исправлена ли ошибка, когда RPC сервер недоступен в Windows 10.

Оцените статью