Назад | Перейти на главную страницу

Диспетчер Hyper-V «Служба RPC недоступна»

В домене Active Directory и плоская сеть среда, запускающая Hyper-V Manager как та же учетная запись администратора:

  1. По крайней мере, на 2 ПК с Windows 10 и при попытке подключиться к:
    1а. Любой из 10 серверов Hyper-V Server 2012 R2 выходит из строя с ошибкой RPC server unavailable. Unable to establish communication between '<Hyper-V server FQDN>' and '<client PC hostname>'.
    1b. Любой из 2 серверов Hyper-V Server 2016 завершается успешно.
  2. На сервере контроллера домена Windows Server 2012 R2 (я знаю, я знаю) и пытаюсь подключиться к:
    1а. Любой из 10 серверов Hyper-V Server 2012 R2 завершается успешно.
    1b. Любой из 2 серверов Hyper-V Server 2016 завершается успешно.

Итак, основная причина, похоже, связана с подключением между затронутыми клиентами и серверами.

Повышенная команда cscript "<path>\hvremote.wsf" /show /target:%affectedServer% /override вывел следующее (анонимно):

Microsoft (R) Windows Script Host Version 5.812
Copyright (C) Microsoft Corporation. All rights reserved.


Hyper-V Remote Management Configuration & Checkup Utility
John Howard, Hyper-V Team, Microsoft Corporation.
http://blogs.technet.com/jhoward
Version 1.08 9th Sept 2013

INFO: Computername is %affectedClient%
INFO: Computer is in domain %ADDNSDomainName%
INFO: Current user is %ADNetBIOSDomainName%\ben.hooper
INFO: OS is 10.0.16299 64-bit Microsoft Windows 10 Enterprise
INFO: Assuming /mode:client as the Hyper-V role is not installed
WARN: User override to assume Windows 8.1/Windows Server 2012 R2 behaviour
INFO: Hyper-V Tools are enabled

-------------------------------------------------------------------------------
DACL for COM Security Access Permissions
-------------------------------------------------------------------------------

\Everyone    (S-1-1-0)
     Allow: LocalLaunch RemoteLaunch (7)

NT AUTHORITY\ANONYMOUS LOGON    (S-1-5-7)
     Allow: LocalLaunch (3)

BUILTIN\Distributed COM Users    (S-1-5-32-562)
     Allow: LocalLaunch RemoteLaunch (7)

BUILTIN\Performance Log Users    (S-1-5-32-559)
     Allow: LocalLaunch RemoteLaunch (7)

APPLICATION PACKAGE AUTHORITY\ALL APPLICATION PACKAGES    (S-1-15-2-1)
     Allow: LocalLaunch (3)

\    (S-1-15-3-1024-2405443489-874036122-4286035555-1823921565-1746547431-2453885448-3625952902-991631256)
     Allow: LocalLaunch (3)

-------------------------------------------------------------------------------
ANONYMOUS LOGON Machine DCOM Access
-------------------------------------------------------------------------------

ANONYMOUS LOGON does not have remote access

  This setting should only be enabled if required as security on this
  machine will be lowered. This computer is in a domain. It is not
  required if the server(s) being managed are in the same or trusted
  domains.

  Use hvremote /mode:client /anondcom:grant to turn on if required

  Both computers are in domain %ADDNSDomainName%


-------------------------------------------------------------------------------
Firewall Settings for Hyper-V Management Clients
-------------------------------------------------------------------------------

Domain Firewall Profile is active
Public Firewall Profile is active


-------------------------------------------------------------------------------
IP Configuration
-------------------------------------------------------------------------------


%IPConfig%


-------------------------------------------------------------------------------
Stored Credentials
-------------------------------------------------------------------------------


%storedCredentials%



-------------------------------------------------------------------------------
Testing connectivity to server:%affectedServer%
-------------------------------------------------------------------------------

1: - Remote computer network configuration
     PASS - Found one or more network adapters

     Network adapter 1 of 1
       - Hyper-V Virtual Ethernet Adapter #2
       - Host Name:%affectedServer%
       - IP Addresses: 172.16.100.111 fe80::3cb0:1dda:7e90:c948
       - IP Subnets: 255.255.255.0 64

2: - Remote computer general information
     PASS - Queries succeeded

     - Name: %affectedServer%
     - Domain: %ADDNSDomainName%
     - OS: 6.3.9600 64-bit Microsoft Hyper-V Server 2012 R2
     - OS Type: Server

3: - Ping and resolve name of remote computer
     PASS - Server found
          - Protocol Address:             172.16.100.111
          - Protocol Address resolved:    172.16.100.111

     The name could not be resolved using WMI. A regular ping will be done
     to see if name resolution is working. This is not a sign of an issue.

4: - Ping %affectedServer% using IPv4

     A timeout is OK, but if you get an error that %affectedServer%
     could not be found, you need to fix DNS or edit
     \windows\system32\drivers\etc\hosts.

     >
     > Pinging %affectedServer%.%ADDNSDomainName% [172.16.100.111] with 32 bytes of data:
     > Reply from 172.16.100.111: bytes=32 time=2ms TTL=128
     >
     > Ping statistics for 172.16.100.111:
     >     Packets: Sent = 1, Received = 1, Lost = 0 (0% loss),
     > Approximate round trip times in milli-seconds:
     >     Minimum = 2ms, Maximum = 2ms, Average = 2ms
     >


5: - Ping %affectedServer% using IPv6

     A timeout is OK, but if you get an error that %affectedServer%
     could not be found, you need to fix DNS or edit
     \windows\system32\drivers\etc\hosts.

     > Ping request could not find host %affectedServer%. Please check the name and try again.
     >


6: - Connect to root\cimv2 WMI namespace
     PASS - Connection established

7: - Connect to root\virtualization\v2 WMI namespace
     PASS - Connection established

8: - Simple query to root\cimv2 WMI namespace
     PASS - Simple query succeeded

9: - Simple query to root\virtualization\v2 WMI namespace
     PASS - Simple query succeeded
          - 3 computer system(s) located

10: - Async notification query to root\virtualization\v2 WMI namespace
     FAIL - Notification query failed The RPC server is unavailable.

There may be a DNS issue and the server cannot locate this machine.
You should check this by performing a ping test from the server to
this machine verifying that the IP address the server is trying to
reach matches the IP address of this machine shown in the output above.
Note that it does not matter if the ping succeeds or fails, just that
the IP address is correct.

  Run on %affectedServer%: ping -4 %affectedClient%

Note that if you do not have DNS in your infrastructure, you can edit
the \windows\system32\drivers\etc\hosts file on the server to add an
entry for %affectedClient%

If you do have DNS in your infrastructure, you may want to try flushing
the DNS cache on the server, and re-registering against DNS on the client

 Run on %affectedServer%: ipconfig /flushdns
 Run on %affectedClient%: ipconfig /registerdns

If you are connected over a VPN, see %StackExchange-bannedURL% for
information about another likely cause.

If the server is in an untrusted domain to this client, you need to
enable anonymous logon access to DCOM on this machine:

  Run 'hvremote.wsf /mode:client /anondcom:grant' and retry.

If this machine has IPSec policy enforced on it, and the server is in a
workgroup or untrusted domain from this computer, inbound connections
to the client may be blocked by your administrator. You may be able to
temporarily work around this by running net stop bfe on this machine,
but you may lose access to some network services while that service
is stopped. However, this may be against the policy of your administrator.

If the server is behind a router/firewall from the client, WMI/DCOM
calls may be being blocked. This will likely be the case if the server
is, for example, on a public IP directly to the Internet. In this
situation, some solutions to consider are:
 - VPN to tunnel traffic
 - Publish Hyper-V Manager through a TS/RD Gateway
 - Access the server through RDP and perform 'local' management
 - Run a management machine (physical or virtual) and RDP to that

There have been several instances of third party firewalls and/or
anti-virus software having adverse effects on remote management.
In some cases, disabling that software has not been sufficient to
resolve the issue, and it has been necessary to completely remove
the program.



INFO: Are running the latest version

-------------------------------------------------------------------------------
3 warnings or errors were found in the configuration. Review the
detailed output above to determine whether you need to take further action.
Summary is below.

1: Running on a later OS than tested on. User override given
2: Cannot perform async WMI query. See detailed resolution steps above.
3: Some tests were not run due to prior failures

-------------------------------------------------------------------------------
INFO: HVRemote complete

Я тщательно исследовал эту ошибку, и ни у кого нет этой конкретной проблемы / среды, но, в любом случае, нет рекомендуемых исправлений (проверка того, что доверительные отношения домена здоровы, проверка правильности работы DNS на обоих концах, проверка локальных административных разрешений, проверка локальных разрешение перенаправления ICMPv4 и т. д.), отсюда и этот пост.

Важные заметки:

  1. Раньше это работало до тех пор, пока не были внесены изменения в Cyber ​​Essentials Plus.
  2. Компьютерные объекты серверов Hyper-V 2012 R2 и 2016 находятся в одном подразделении, поэтому применяются одни и те же объекты групповой политики.

 

Обновление: 2017/12/22 08:47:

В соответствии с https://social.technet.microsoft.com/Forums/en-US/268cd630-7fa3-49c8-a98e-21c458c7b7bb/win10-1709-update-broke-hyperv?forum=win10itprovirt, это:

 

Обновление: 2017/12/27 14:15:

Я создал объект групповой политики, чтобы перенастроить правила создания брандмауэра Windows, чтобы разрешить входящие соединения WMI, и подтвердил, что он успешно применяется:

  1. Выполнение gpresult /v и проверка вывода.
  2. Подключение regedit и проверка ключа реестра HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsFirewall\FirewallRules.

Однако проблема остается даже после полного отключения брандмауэра Windows на сервере во всех профилях.

Входящие подключения WMI должны быть разрешены в брандмауэре Windows на ПК, а не сервер Hyper-V.