настройка rpc windows 10
Причины ошибки, когда сервер RPC недоступен в Windows 10 могут быть разные, но в основном это: служба(ы) требуемые для RPC отключены, удаленный помощник отключен в брандмауэре, IPV6 или общий доступ к файлам и принтерам отключен, IP-адрес приводит к сбою сервера RPC или службы RPC отключены в реестре. Давайте разберем эти моменты, чтобы исправить ошибку, когда удаленный вызов процедур дает сбой и появляется ошибка, что сервер RPC недоступен в Windows 10.
1. Проверка служб RPC
2. Удаленный помощник в брандмауэре
Нажмите Win+R и введите firewall.cpl, чтобы открыть параметры брандмауэра. Слева нажмите на «Разрешение взаимодействия с приложениями«.
Найдите «Удаленный помощник» и удостоверьтесь, что параметры для сети, включены везде. Перезагрузите компьютер или ноутбук, и проверьте, исправлена ли ошибка, когда сервер RPC недоступен.
3. Включение IPV6 и общего доступа к файлам и принтерам
В некоторых случаях вы можете столкнуться с ошибкой 1722: RPC сервер недоступен, когда происходит сбой сетевого подключения, так как отключены сетевой доступ к принтерам для сетей Microsoft и протокол TCP/IPv6.
Нажмите Win+R и введите ncpa.cpl, чтобы открыть сетевые адаптеры. Нажмите на сетевом адаптеры, через которое идет сеть, и выберите «свойства». Далее в списке найдите два параметра и убедитесь что они включены (галочки установлены).
Если ошибка «сервер RPC недоступен» с кодом 1722 все еще появляется, то двигаемся ниже.
4. Очистить DNS
Очистка старых DNS может исправить код ошибки 1722 RPC. В первую очередь убедитесь, что службы, связанные с RPC, работают как в способе 1. Далее запускаем командную строку от имени администратора и введите следующие команды для очистки и сброса DNS:
Проверьте, исправлена ли ошибка 1722 RPC недоступен.
5. Редактор реестра для запуска RPC служб
Если вы не смогли запустить службы способом 1, то запустим их через реестр. Для полной эффективности, убедитесь, что вы проделали способ 3 и способ 4. Нажмите Win+R и введите regedit, чтобы открыть редактор реестра.
И еще по одному пути:
Перезагрузите ПК и проверьте, исправлена ли ошибка, когда RPC сервер недоступен в Windows 10.
Сервер RPC недоступен в Windows 10, 7, Server 2008, 2012: причины и решения
Различные версии Windows слишком часто пишут, что «сервер RPC недоступен». Это может случаться как просто при запуске какой-то программы, так и при входе в систему, попытке выполнить команду через PowerShell и очень часто – в момент подключения к принтеру. Тот самый таинственный RPC-сервер – это служба удаленного подключения к другим устройствам, которая не смогла запуститься, связаться с аппаратом на той стороне или имеет какие-то системные неполадки. Мы постараемся помочь всем: как тем, кто столкнулся с ошибкой «сервер RPC недоступен» в пользовательских версиях Windows 10, 8, 7, XP, так и в серверных разновидностях Windows Server 2012, 2008.
Что значит «сервер RPC недоступен»?
Смысл сообщения в том, что система не в состоянии связаться с другим компьютером или иным устройством. Это может потребоваться при развертывании сетей, открытии удаленного доступа к ПК или даже по причине взлома операционной системы. Порой причина в программе, которая требует те или иные полномочия. Если ошибка появляется при входе в систему, но никто из пользователей ПК не настраивал автоматическое подключение – дело плохо, нужно срочно искать вредоносный софт. В остальных случаях все легко исправить.
Разновидности проблемы
Какие бывают вариации ошибки «сервер RPC недоступен»:
Вариантов проблемы много, мы начнем с исправления тех, что возникают в обычных Windows 7, 10, затем перейдем к проблемам в серверных ОС и в конце рассмотрим оставшиеся разновидности.
Как исправить ошибку в Windows 10, 8, 7, XP?
Если при печати или подключении к другому ПК на любой Windows, начиная с XP, появляется данная ошибка, следует проверить доступность устройства. Девайс обязан быть включенным и отзываться на команду ping. Чаще всего именно неактивность принтера, компьютера или сервера является причиной проблемы. После его выхода в сеть, все пройдет. Дальнейшие процедуры имеет смысл проводить в том случае, если оба устройства активны и откликаются на команду ping, но ошибка все равно появляется.
Полезно! Стоит попробовать запустить средство устранения неполадок, которое исправит большинство системных неполадок, которые сможет найти. Это позволит значительно сократить время. Что использовать инструмент, нужно зайти в «Панель управления» на вкладку «Устранение неполадок» и выбрать «Использование принтера».
Решение 1: активируем службы RPC
При ошибке 1722 «сервер RPC недоступен» следует проверить активность основных служб, которые нужны для использования удаленного подключения.
Скорее всего error 1722 в Windows и ряд других ошибок будет устранен уже на этом этапе.
Решение 2: открываем порты
Переходя к этому пункту, мы рекомендуем сначала отключить брандмауэр Windows полностью, это позволит понять, дело действительно в фаерволе или он не имеет к ошибке никакого отношения. Если после выключения этого инструмента защиты наблюдается улучшение, рекомендуем провести следующую процедуру.
Решение 3: включаем протоколы связи
Реже, но бывает такое, что в протоколах связи неактивны несколько важных параметров.
Решение 4: чистим DNS
Простой способ, который тоже может помочь. Достаточно в командную строку с повышенными привилегиями вставить ipconfig /flushdns и задействовать команду кнопкой Enter. Если в недавнем прошлом изменялось имя ПК, к которому происходит подключение, следует перерегистрировать DNS с помощью команды ipconfig /registerdns.
Способы решения для Windows Server 2008, 2012
В Windows Server есть еще одна разновидность ошибки – «Сервер RPC недоступен (Исключение из HRESULT: 0x800706BA)». Она тоже высвечивается в момент попытки выполнения команды с использованием подключения к удаленному ПК. Сначала нужно проверить доступность устройства, это просто сделать с использованием строки: «Get-WmiObject Win32_ComputerSystem –ComputerName 192.168.0.114», где IP и название компьютера указываем своего сервера.
Как можно исправить ошибку с кодом 0x800706ba (0x6ba):
Сервер RPC недоступен ABBYY FineReader Licensing Service
При попытке использования программы ABBYY для расшифровки PDF-файлов может появиться подобная ошибка. Мы о ней уже неоднократно слышали и знаем, как исправлять.
Подводя итог, ошибка «сервер RPC недоступен» практически всегда связана с тем, что не удается подключиться к удаленному компьютеру, серверу или принтеру. Причинами подобному явлению становятся либо закрытые порты, либо неактивные службы, либо выключенное состояние серверных-устройств. Все это легко поправить вручную и теперь вы знаете, как это сделать во всех популярных версиях Windows.
Рейтинг статьи 2 / 5. Голосов: 4
Пока нет голосов! Будьте первым, кто оценит этот пост.
Настройка rpc windows 10
Добрый день! Уважаемые читатели и гости одного из крупнейших IT блогов в рунете Pyatilistnik.org. В прошлый раз мы с вами разобрали замечательную утилиту командной строки robocopy, и с ее помощью научились создавать точные копии папок, двигать их в нужное расположение и многое другое. В сегодняшней публикации я покажу вам, как устранять ошибку «Сервер RPC недоступен (The rpc server is unavailable)», покажу примеры, когда ее мониторинг очень важен в работе корпоративных сервисов.
Для чего нужна служба «Удаленный вызов процедур (RPC)»
Процедура сообщения RPC
Когда программные операторы, использующие структуру RPC, компилируются в исполняемую программу, в скомпилированный код включается заглушка, которая выступает в качестве представителя кода удаленной процедуры. Когда программа запускается и выполняется вызов процедуры, заглушка получает запрос и пересылает его клиентской программе и времени выполнения на локальном компьютере. При первом вызове клиентской заглушки она связывается с сервером имен, чтобы определить транспортный адрес, по которому находится сервер.
Программа среды выполнения клиента знает, как обращаться к удаленному компьютеру и серверному приложению, и отправляет сообщение по сети, которое запрашивает удаленную процедуру. Точно так же сервер включает исполняющую программу и заглушку, которая взаимодействует с самой удаленной процедурой. Протоколы ответа-запроса возвращаются таким же образом.
Данная служба есть в любой операционной системе Windows, начиная от Windows 7 и заканчивая Windows 11 и в любой из Windows Server редакции.
Как работает RPC?
Когда вызывается служба RPC (удаленный вызов процедуры), вызывающая среда приостанавливается, параметры процедуры передаются по сети в среду, в которой должна выполняться процедура, а затем процедура выполняется в этой среде. Когда процедура завершается, результаты передаются обратно в вызывающую среду, где выполнение возобновляется, как если бы оно возвращалось из обычного вызова процедуры.
Во время RPC выполняются следующие шаги:
Если вы видите ошибку «Сервер RPC недоступен” (The RPC server is unavailable)», то у вас точно недоступен порт 135. Это может быть критичным для ряда ситуации. Например вы не сможете сохранить настройки RDS фермы, если у одного из хостов RDSH есть проблемы с RPC, то вы будите видеть ошибку «Could not change the connection state for server», вы не сможете перевести его в режим обслуживания (Drain Mode)
Или в приложении Terminal Services Manager будет ошибка при попытке получения данных «Сервер RPC недоступен«.
Так же RPC может быть причиной проблемы в репликации контроллеров домена, где в логах Windows будет фигурировать ошибка ID 1722. Это очень не приятный момент, который может привести к большим проблемам.
Типы RPC
Существует пять типов RPC:
Почему может не работать служба RPC
Преимущества удаленного вызова процедур
К преимуществам удаленного вызова процедур можно отнести следующее:
Недостатки RPC
Некоторые из недостатков RPC включают следующее:
Проверка доступности службы RPC
Если вдруг компьютер не ответил, то это не значит, что он не работает, может работать брандмауэр и просто блокировать ping пакеты.
Небольшой пример из практики, предположим, что вы мигрировали сервер в другую подсеть, в итоге в DNS должна быть изменена соответствующая запись, но Windows это поймет не сразу, так как у нее есть свой локальный кэш, он живет 15 минут, поэтому если при проверке DNS имени вам выдается не тот IP-адрес, вам необходимо произвести очистку кэша DNS.
Если удаленный RPC порт доступен вы в в строке TcpTestSucceeded будет стоять статус «True».
Если будет порт закрыт или блокируется, то ошибка «Сервер RPC недоступен (The rpc server is unavailable)» вам обеспечена. Поняв, что порт не отвечает, нужно удостовериться, что трафик от клиента до сервера не блокирует фаервол. По умолчанию в любой версии Windows есть встроенный брандмауэр. На время тестирования и поиска причины, я советую его выключить для всех профилей. Сделаем мы это через командную строку:
Данная команда выключит брандмауэр на всех трех профилях сетевой карты.
Далее если порт 135 стал доступен, то можно делать правила на удаленном сервере. Напоминаю, что нужно сделать правило для трех служб:
Еще хочу отметить, что если у вас есть сторонние антивирусные решения, например Касперский, то там так же есть встроенный сетевой экран, где так же нужно будет создать необходимые, разрешающие правила, которые корректно будут обрабатывать трафик динамических RPC портов.
Проверка работы служб RPC
Следующим шагом является проверка состояния службы на нужном вам сервере или компьютере. Проверять следует три службы:
В оболочке PowerShell выполните команду:
Для удаленного выполнения Enter-PSSession svt2019s01 далее Get-Service RpcSs,RpcEptMapper,DcomLaunch| Select DisplayName,Status,StartType
Напоминаю, что в команде svt2019s01, это имя удаленного сервера. Как видно из примера, все службы RPC запущены и имею автоматический тип запуска.
Если службы не запущены, то откройте оснастку «services.msc’, зайдите в свойства службы и выставите автозапуск и попробуйте запустить вручную.
Если по каким, то причинам вы не можете запустить службу из оснастки, то можно это сделать через реестр (Кстати реестр можно править и удаленно). Для этого есть несколько веток, но для начала откройте окно «Выполнить» и введите regedit.
В каждом из этих расположений есть ключик «Start«, выставите ему значение «2«, это будет означать автоматический запуск службы.
Дополнительные сетевые проверки
В некоторых случаях причиной ошибок с доступностью RPC выступает сбой на сетевых адаптерах. Помогает сброс сетевых настроек и перезагрузка. В сети с Active Directory, старайтесь, чтобы на всех ваших сетевых адаптерах в свойствах были выставлены обе галки IPV4 и IPV6, особенно это актуально для контроллеров домена, где вы легко можете получать ошибку 1722. Еще может помочь отключение протокола Teredo у IPv6. В командной строке выполните:
Настройка RPC для использования определенных портов и защита этих портов с помощью IPsec
Аннотация
В данной статье рассматривается настройка RPC для использования определенного диапазона динамических портов, а также защита портов с помощью политики IPsec (Internet Protocol security). По умолчанию при назначении портов для приложений RPC, которые должны прослушивать конечную точку TCP, RPC использует порты из диапазона временных портов (1024-5000). Подобное поведение может усложнить процедуру ограничения доступа к этим портам для сетевых администраторов. В данной статье приведены способы ограничения числа портов, доступных для приложений RPC, а также способы ограничения доступа к этим портам с помощью политики IPsec.
Поскольку действия, описанные в данной статье, приводят к изменениям на уровне системы, требующим перезагрузки компьютера, все эти действия сначала следует выполнить в нерабочей среде, чтобы выявить любые проблемы совместимости, возникающие в результате соответствующих изменений.
Дополнительная информация
Существует несколько задач, которые необходимо выполнить для перераспределения, сокращения числа доступных портов RPC и ограничения доступа к этим портам.
Сначала необходимо ограничить диапазон динамических портов RPC, чтобы их было проще блокировать с помощью брандмауэра или политики IPsec. По умолчанию RPC динамически выделяет порты в диапазоне номеров от 1024 до 5000 для конечных точек, не указывающих порт, который необходимо прослушивать.
Примечание. В данной статье используется диапазон портов от 5001 до 5021 во избежание ситуаций, при которых все временные порты окажутся занятыми, и чтобы сократить число портов, доступных для конечных точек RPC от 3,976 до 20.
Затем необходимо разработать политику IPsec, ограничивающую доступ к этому диапазону портов для всех ведущих узлов сети.
И наконец, можно обновить политику IPsec, предоставив определенным IP-адресам или подсетям доступ к заблокированным портам RPC и запретив доступ для всех остальных.
Чтобы начать процесс настройки диапазона динамических портов RPC, загрузите средство настройки RPC (RPCCfg.exe), а затем скопируйте его на рабочую станцию или сервер, который подвергнется изменениям. Для этого посетите веб-узел Майкрософт:
http://www.microsoft.com/downloads/details.aspx?FamilyID=0f9cde2f-8632-4da8-ae70-645e1ddaf369&DisplayLang=enДля создания политики IPsec загрузите средство политик безопасности протоколов Интернета (Ipsecpol.exe), а затем скопируйте его на рабочую станцию или сервер, который подвергнется перенастройке. Для этого посетите веб-узел Майкрософт:
http://www.microsoft.com/downloads/details.aspx?displaylang=ruFamilyID=7D40460C-A069-412E-A015-A2AB904B7361Примечание. Для создания политики IPsec для Microsoft Windows XP или для более поздней версии операционной системы Windows воспользуйтесь программой Ipseccmd.exe. Ipseccmd.exe входит в состав средств поддержки для Windows XP. Синтаксис и использование IPseccmd.exe аналогичны синтаксису и использованию Ipsecpol.exe. Дополнительные сведения о средствах поддержки Windows XP см. в следующей статье базы знаний Майкрософт.
838079 Средства поддержки для Windows XP с пакетом обновления 2 (SP2)
Перераспределите и сократите диапазон динамических портов RPC с помощью RPCCfg.exe
Для этого выполните следующие действия:
Скопируйте RPCCfg.exe на сервер, который необходимо настроить.
Например, если обозреватель Internet Explorer связывается с веб-сервером через порт 80, в ожидании отклика от сервера он прослушивает порт в диапазоне 1024-5000. Сервер COM среднего уровня, отправляющий исходящий вызов на другие удаленные серверы, также использует порт в этом диапазоне для входящего отклика на этот вызов. Если RPC будет использовать для конечных точек диапазон портов 5001-5021, вероятность использования этих портов другими приложениями значительно уменьшится.
Для получения дополнительных сведений об использовании временных портов в операционных системах Windows посетите веб-узел корпорации Майкрософт по следующему адресу:
Для Windows Server 2003:
Используйте политику протокола IPsec или брандмауэра, чтобы заблокировать доступ к уязвимым портам на соответствующем компьютере
В указанных ниже командах текст, заключенный между символами «%», должен заменяться текстом, который вводит пользователь, создающий политику IPsec. Например, для «%IPSECTOOL%» замена производится следующим образом:
для Windows 2000 «%IPSECTOOL%» меняется на «ipsecpol.exe»;
для Windows XP или более поздней версии Windows «%IPSECTOOL%» меняется на «ipseccmd.exe».
Для получения дополнительных сведений об использовании IPsec для блокировки портов щелкните следующий номер статьи базы знаний Майкрософт:
813878 Блокирование определенных сетевых протоколов и портов с помощью IPSec
Заблокируйте доступ к службе отображения конечных точек RPC для всех IP-адресов
Для этого используйте следующий синтаксис.
Примечание. Для Windows XP и более поздних версий операционной системы используйте Ipseccmd.exe. Для Windows 2000 используйте Ipsecpol.exe (Windows 2000).
Примечание. Не вводите «%IPSECTOOL%» в данной команде. «%IPSECTOOL%» представляет часть команды, которая зависит от версии операционной системы. Например, для Windows 2000 введите следующую команду из каталога, содержащего файл Ipsecpol.exe, чтобы заблокировать любой входящий доступ к TCP 135:
Для Windows XP или более поздней версии операционной системы введите следующую команду из каталога, содержащего файл Ipseccmd.exe, чтобы заблокировать любой входящий доступ к TCP 135:
Заблокируйте доступ к диапазону динамических портов RPC для всех IP-адресов
Для этого используйте следующий синтаксис.
Примечание. Для Windows XP и более поздних версий операционной системы используйте Ipseccmd.exe. Для Windows 2000 используйте Ipsecpol.exe (Windows 2000).
Примечание. Не вводите «%IPSECTOOL%» или «%PORT%» в данной команде. «%IPSECTOOL%» и «%PORT%» представляют части команды, которые зависят от версии операционной системы. Например, для ведущего узла под управлением Windows 2000 введите следующую команду, чтобы заблокировать любой входящий доступ к TCP 5001:
Для ведущих узлов под управлением Windows XP и более поздних версий операционной системы введите следующую команду:
Выполните данную команду для каждого порта RPC, который необходимо заблокировать, изменяя номер порта в теле команды. Порты, которые необходимо заблокировать, принадлежат к диапазону номеров 5001-5021.
Примечание. Не забудьте изменить номер порта в имени правила (-r) и в фильтре (-f).
Дополнительно: При необходимости разрешите доступ к службе отображения конечных точек RPC для определенных подсетей
Чтобы предоставить для определенных подсетей доступ к заблокированным портам RPC, сначала нужно разрешить для них доступ к службе отображения конечных точек RPC, который был заблокирован ранее. Для этого выполните следующую команду:
Примечание. В данной команде используются следующие местозаполнители:
«%IPSECTOOL%» представляет используемую команду – «ipsecpol.exe» или «ipseccmd.exe», в зависимости от используемой операционной системы.
«%SUBNET%» представляет удаленную IP-подсеть, которой необходимо предоставить доступ, например, 10.1.1.0.
«%MASK%» представляет используемую маску подсети, например, 255.255.255.0.
Например, приведенная ниже команда разрешает для всех ведущих узлов подсети 10.1.1.0/255.255.255.0 подключение к порту TCP 135. Подключение для любых других ведущих узлов будет запрещено исходным блокирующим правилом, созданным для данного порта ранее.
Дополнительно: При необходимости разрешите доступ к новому диапазону динамических портов RPC для определенных подсетей
Для каждой подсети, которая теперь имеет доступ к службе отображения конечных точек RPC, необходимо разрешить доступ ко всем портам в новом диапазоне динамических портов RPC (5001-5021).
Если для подсети будет разрешен доступ к службе отображения конечных точек RPC, но не будет разрешен доступ к диапазону динамических портов, приложение может перестать отвечать на запросы, либо могут возникнуть другие проблемы.
Для предоставления доступа к новому диапазону динамических портов RPC для определенной подсети воспользуйтесь следующей командой:
Примечание. В данной команде используются следующие местозаполнители:
«%IPSECTOOL%» представляет используемую команду – «ipsecpol.exe» или «ipseccmd.exe», в зависимости от используемой операционной системы.
«PORT%» представляет порт в диапазоне динамических портов, к которому предоставляется доступ.
«%SUBNET%» представляет удаленную IP-подсеть, которой необходимо предоставить доступ, например, 10.1.1.0.
««%MASK%» представляет используемую маску подсети, например, 255.255.255.0.
Например, приведенная ниже команда разрешает для всех ведущих узлов подсети 10.1.1.0/255.255.255.0 подключение к порту TCP 5001. Подключение для любых других ведущих узлов будет запрещено исходным блокирующим правилом, созданным для данного порта ранее.
Примечание. Данную команду необходимо выполнить для каждой подсети и каждого порта диапазона динамических портов RPC.
Назначьте политику IPsec
Примечание. Команда, приведенная в данном разделе, вступает в действие немедленно.
После создания правил, блокирующих доступ, и всех дополнительных правил, разрешающих доступ к указанным портам RPC, назначьте политику, воспользовавшись следующей командой:
Примечание. Следующая команда вызывает немедленную отмену назначенной политики:
Примечание. Чтобы удалить политику из реестра, используйте следующую команду:
Для вступления изменений в силу необходимо перезагрузить ведущий узел.
Для вступления в силу изменений в настройках RPC требуется перезагрузка.
Изменения в политике IPsec вступают в силу незамедлительно и не требуют перезагрузки.
После перезагрузки рабочей станции или сервера для любых интерфейсов RPC, использующих последовательность протокола ncacn_ip_tcp и не указывающих определенный порт TCP для прослушивания, после запуска сервера RPC во время работы RPC будет выделен порт из данного диапазона.