Udostępnij za pośrednictwem


Przewodnik scenariusza: Rozwiązywanie problemów z łącznością w usłudze WMI i dostępem

W tym artykule opisano sposób przeglądania konfiguracji instrumentacji zarządzania Windows (WMI) oraz sposobu diagnozowania i rozwiązywania problemów z łącznością lub dostępem do usługi WMI.

Poniżej przedstawiono kilka przykładów problemów z konfiguracją usługi WMI lub łącznością, które mogą wystąpić. Problemy dotyczą różnych produktów i aplikacji, które używają usługi WMI lub zależą od nich.

  • Kreator tworzenia klastra próbuje nawiązać połączenie z maszyną zdalną (węzłem klastra), ale nie może pobrać danych.

    Zrzut ekranu Kreatora tworzenia klastra przedstawiający błąd nie można uzyskać dostępu do komputera.

    Zrzut ekranu przedstawiający Kreatora dodawania węzła z błędem nie można pobrać maksymalnej liczby węzłów.

  • Gdy instalator roli usługi Active Directory próbuje nawiązać komunikację z maszyną hosta, Kreator konfiguracji usług domena usługi Active Directory kończy się niepowodzeniem z powodu następującego błędu:

    Program Adprep nie może pobrać danych z serwera testbox.contoso.com za pośrednictwem instrumentacji zarządzania Windows (WMI).

    Zrzut ekranu przedstawiający Kreatora konfiguracji usług domena usługi Active Directory z komunikatem Adprep nie może pobrać błędu danych.

  • Lokalne zapytanie WMI nie może użyć Get-WmiObject polecenia cmdlet programu PowerShell i otrzymuje błąd "Odmowa dostępu".

    Zrzut ekranu przedstawiający wynik polecenia cmdlet get-wmiobject z błędem Odmowy dostępu.

Przepływ połączenia

Istnieje wiele składników i warstw związanych z połączeniem usługi WMI. Następujące składniki są zaangażowane na wysokim poziomie:

  • Aplikacja kliencka lub zarządzana, która inicjuje połączenie lub zapytanie usługi WMI

  • Składnik Model obiektów składników (COM) lub rozproszony składnik modelu obiektów (DCOM) używany do lokalnej i zdalnej komunikacji między procesami (IPC)

  • Warstwa transportu lub sieci (zdalne wywołanie procedury (RPC))

  • Repozytorium WMI i usługa WMI

  • Dostawca usługi WMI

  • Obiekty zarządzane

    Diagram przepływu połączenia usługi WMI.

Identyfikowanie problemu

W zależności od tego, gdzie wystąpi błąd lub awaria lub składnik, który zwraca błąd, problemy można podzielić na kategorie w następujący sposób:

  • Problemy z połączeniem
  • Problemy z dostępem
  • Kody błędów podstawowego dostawcy WMI

Problemy z połączeniem

Błąd połączenia usługi WMI, który występuje przed nawiązaniem połączenia z infrastrukturą usługi WMI lokalnie lub zdalnie, jest uważany za problem z łącznością.

Problem lub błąd jest zwracany przez architekturę COM/DCOM lokalnie lub zdalnie, warstwę transportu (RPC) lub zaporę. Różne błędy mogą wystąpić z problemami z łącznością, ale najczęstsze błędy to:

  • 0x800706BA
    HRESULT_FROM_WIN32(RPC_S_SERVER_UNAVAILABLE)

  • 0x80041015
    Błąd sieci uniemożliwiający normalne działanie.

Problemy z dostępem

Problem z dostępem występuje, gdy połączenie lub zapytanie usługi WMI kończy się niepowodzeniem z powodu niepowodzenia dostępu lub braku uprawnień dla co najmniej jednego składnika usługi WMI.

Innymi słowy, istnieje wiele obszarów w infrastrukturze usługi WMI, takich jak COM/DCOM, przestrzenie nazw usługi WMI, repozytorium usługi WMI i dostawcy, a użytkownicy potrzebują odpowiednich uprawnień dostępu, używania lub interakcji z nimi. Brak uprawnień lub ograniczeń powoduje błędy połączeń usługi WMI i mogą wystąpić następujące błędy:

  • 0x80070005
    E_ACCESS_DENIED
    Odmowa dostępu przez zabezpieczenia DCOM

  • 0x80041003
    WBEM_E_ACCESS_DENIED
    Odmowa dostępu przez dostawcę

Kody błędów podstawowego dostawcy WMI

Nawet po pomyślnym połączeniu z usługą WMI i prawidłowym uprawnieniam zapytanie usługi WMI lub połączenie może zakończyć się niepowodzeniem z powodu problemu z zapytaniem, błędu zwróconego przez dostawcę, nieprawidłową klasę lub nieprawidłową przestrzeń nazw.

Problem może być spowodowany różnymi przyczynami, a błędy są zwracane głównie przez usługę WMI.

W takich przypadkach zwrócony kod błędu pomaga zrozumieć problem. Oto kilka kodów błędów:

  • 0x80041002 — WBEM_E_NOT_FOUND

  • 0x80041004 — WBEM_E_PROVIDER_FAILURE

  • 0x80041062 — WBEM_E_PRIVILEGE_NOT_HELD

  • 0x8004100E — WBEM_E_INVALID_NAMESPACE

  • 0x80041010 — WBEM_E_INVALID_CLASS

  • 0x80041011 — WBEM_E_PROVIDER_NOT_FOUND

  • 0x80041012 — WBEM_E_INVALID_PROVIDER_REGISTRATION

  • 0x80041013 — WBEM_E_PROVIDER_LOAD_FAILURE

Pełna lista błędów zwracanych przez infrastrukturę usługi WMI znajduje się na liście Stałe błędów usługi WMI.

Sprawdzanie konfiguracji

Jeśli możesz potwierdzić, że problem jest problemem z łącznością lub dostępem na podstawie zwróconego błędu lub błędu, sprawdź istniejącą konfigurację usługi WMI lub upewnij się, że użytkownik ma odpowiednie uprawnienia.

  • Domyślnie tylko członkowie grupy Administratorzy mogą zdalnie uzyskiwać dostęp do przestrzeni nazw usługi WMI.
  • Aby nawiązać połączenie z komputerem zdalnym przy użyciu usługi WMI, upewnij się, że dla połączenia są włączone prawidłowe ustawienia dcOM i ustawienia zabezpieczeń przestrzeni nazw usługi WMI.
  • Usługa WMI ma domyślne ustawienia personifikacji, uwierzytelniania i uwierzytelniania (NTLM lub Kerberos), których wymaga komputer docelowy w połączeniu zdalnym. Komputer lokalny może używać różnych wartości domyślnych, które system docelowy nie akceptuje. Te ustawienia można zmienić w wywołaniu połączenia.
  • Połączenia z usługą WMI na komputerze lokalnym mają domyślny poziom PktPrivacyuwierzytelniania .
  • Na połączenia zdalne usługi WMI mają wpływ kontrola konta użytkownika (UAC) i Zapora systemu Windows.

Ustawianie zabezpieczeń modelu DCOM, aby zezwolić użytkownikowi niebędącemu administratorem na zdalny dostęp do komputera

Ustawienia modelu DCOM dla usługi WMI można skonfigurować przy użyciu narzędzia DCOM Configuration (DCOMCnfg.exe) znajdującego się w obszarze Narzędzia administracyjne w Panel sterowania.

To narzędzie uwidacznia ustawienia, które umożliwiają niektórym użytkownikom zdalne łączenie się z komputerem za pośrednictwem modelu DCOM. Za pomocą tego narzędzia można ustawić zabezpieczenia, aby uruchomić, uzyskać dostęp i skonfigurować usługę WMI.

W poniższej procedurze opisano sposób udzielania uprawnień do zdalnego uruchamiania i aktywacji modelu DCOM określonym użytkownikom i grupom.

Jeśli komputer A łączy się zdalnie z komputerem B, możesz ustawić te uprawnienia na komputerze B, aby zezwolić użytkownikowi lub grupie, która nie jest częścią grupy Administratorzy na komputerze B do wykonywania wywołań uruchamiania i aktywacji DCOM na komputerze B.

Aby ręcznie udzielić uprawnień do zdalnego uruchamiania i aktywacji modelu DCOM dla użytkownika lub grupy, wykonaj następujące kroki:

  1. Wybierz pozycję Uruchom,> wpisz DCOMCNFG, a następnie wybierz przycisk OK.
  2. W oknie Usługi składowe rozwiń węzeł Komputery usług>składowych. Kliknij prawym przyciskiem myszy pozycję Mój komputer i wybierz polecenie Właściwości.
  3. W oknie dialogowym Właściwości mojego komputera wybierz kartę Zabezpieczenia COM.
  4. W obszarze Uprawnienia uruchamiania i aktywacji wybierz pozycję Edytuj limity.
  5. W oknie dialogowym Uprawnienia do uruchamiania i aktywacji wybierz pozycję Dodaj, jeśli twoja nazwa lub grupa nie jest wyświetlana na liście Nazwy grup lub użytkowników. W oknie dialogowym Wybieranie użytkowników, komputerów lub grup dodaj swoją nazwę i grupę w polu Wprowadź nazwy obiektów do wybrania, a następnie wybierz przycisk OK.
  6. W oknie dialogowym Uprawnienia do uruchamiania i aktywacji wybierz użytkownika i grupę na liście Nazwy grup lub użytkowników. W obszarze uprawnienia dla <użytkownika lub grupy>sprawdź Zezwalaj na zdalnego uruchamiania i uprawnienia aktywacji zdalnej, a następnie wybierz pozycję OK.

W poniższej procedurze opisano sposób udzielania uprawnień dostępu zdalnego MODELU DCOM do niektórych użytkowników i grup. Jeśli komputer A łączy się zdalnie z komputerem B, możesz ustawić te uprawnienia na komputerze B, aby zezwolić użytkownikowi lub grupie, która nie jest częścią grupy Administratorzy na komputerze B, aby połączyć się z komputerem B.

Aby udzielić uprawnień dostępu zdalnego DCOM, wykonaj następujące kroki:

  1. Wybierz pozycję Uruchom,> wpisz DCOMCNFG, a następnie wybierz przycisk OK.
  2. W oknie Usługi składowe rozwiń węzeł Komputery usług>składowych. Kliknij prawym przyciskiem myszy pozycję Mój komputer i wybierz polecenie Właściwości.
  3. W oknie dialogowym Właściwości mojego komputera wybierz kartę Zabezpieczenia COM.
  4. W obszarze Uprawnienia dostępu wybierz pozycję Edytuj limity.
  5. W oknie dialogowym Uprawnienia dostępu wybierz pozycję ANONIMOWE LOGOWANIE W polu Nazwy grupy lub użytkowników. W obszarze Uprawnienia do LOGOWANIA ANONIMOWEgo zaznacz pole wyboru Zezwalaj na uprawnienia dostępu zdalnego, a następnie wybierz przycisk OK.

Uwaga 16.

Możesz również dodać użytkownika do grupy Użytkownicy rozproszonego modelu COM lokalnie na maszynie docelowej. Domyślnie ta grupa ma wszystkie uprawnienia dostępu do modelu COM/DCOM na dowolnym komputerze z systemem Windows.

Zezwalanie użytkownikom na dostęp do określonej przestrzeni nazw usługi WMI

Możesz zezwolić lub uniemożliwić użytkownikom dostęp do określonej przestrzeni nazw usługi WMI, ustawiając uprawnienie Włącz zdalne w kontrolce usługi WMI dla przestrzeni nazw. Jeśli użytkownik spróbuje nawiązać połączenie z przestrzenią nazw, do którego użytkownik nie może uzyskać dostępu, zostanie wyświetlony błąd 0x80041003.

Domyślnie to uprawnienie jest włączone tylko dla administratorów. Administrator może włączyć zdalny dostęp do określonych przestrzeni nazw usługi WMI dla użytkownika niebędącego administratorem.

Poniższa procedura ustawia uprawnienia zdalnego włączania dla użytkownika niebędącego administratorem.

  1. Nawiąż połączenie z komputerem zdalnym przy użyciu narzędzia WMIMGMT.msc.

  2. Kliknij prawym przyciskiem myszy kontrolkę WMI i wybierz polecenie Właściwości.

  3. Na karcie Zabezpieczenia wybierz przestrzeń nazw i wybierz pozycję Zabezpieczenia.

    Uwaga 16.

    Root\cimv2 to domyślna przestrzeń nazw.

  4. Zlokalizuj lub dodaj odpowiednie konto i sprawdź zabezpieczenia zdalnego włączania i odczytu na liście uprawnień.

    Uwaga 16.

    Aby upewnić się, że te same uprawnienia są dziedziczone do podfolderu lub przestrzeni nazw podrzędnych, wybierz pozycję Zaawansowane. Następnie wybierz zamierzonego użytkownika i upewnij się, że w sekcji Dotyczy wybrano tę przestrzeń nazw i przestrzenie nazw podrzędnych.

    Zrzut ekranu przedstawiający wpis uprawnień dla modelu CIMV2 z wybranymi odpowiednimi uprawnieniami.

Aby sprawdzić łączność z określoną klasą w określonej przestrzeni nazw, możesz użyć narzędzia Instrumentacja zarządzania Windows (WBEMTEST), wykonując następujące kroki:

  1. Otwórz plik WBEMTEST jako administrator i wybierz pozycję Połącz. Domyślnie konsola łączy się z lokalną przestrzenią nazw Root\cimv2 w usłudze WMI.
  2. Zmień przestrzeń nazw na tę, z którą próbujesz przetestować połączenie. Jeśli jest to maszyna zdalna, wprowadź ją w formacie \\<machinename>\Root\cimv2.

Jeśli połączenie zakończy się pomyślnie, główne okno programu WBEMTEST jest połączone z przestrzeń nazw inną niż domyślna.

Domyślnie połączenie WBEMTEST używa poświadczeń zalogowanego użytkownika. Jeśli połączysz się z innym kontem, poświadczenia zostaną wyświetlone przed podjęciem próby nawiązania połączenia.

W poniższym przykładzie pokazano próbę nawiązania połączenia z katalogiem głównym\ccm przestrzeni nazw w lokalizacji "RemoteMachine1" przy użyciu poświadczeń użytkownika User1.

Zrzut ekranu przedstawiający okno Łączenie z próbą nawiązania połączenia z katalogiem głównym\ccm przestrzeni nazw na komputerze RemoteMachine1 przy użyciu poświadczeń użytkownika User1.

Aby skonfigurować połączenie WMI między komputerem przyłączonym do domeny i maszyną grupy roboczej, rozważ użytkownika lokalnego maszyny docelowej.

Uwaga 16.

Jeśli używasz wbudowanego administratora lokalnego maszyny docelowej, ten użytkownik ma już odpowiednie prawa dostępu do usługi WMI zdalnie z innych maszyn i nie wymaga żadnej dodatkowej konfiguracji.

Zapora maszyny docelowej powinna zezwalać na przychodzące połączenie WMI, dla którego można wykonać powyższą konfigurację zapory, jak pokazano w sekcji Ustawienia zapory systemu Windows. Następnie skonfiguruj zabezpieczenia DCOM i przestrzeń nazw usługi WMI, jak pokazano w temacie Ustawianie zabezpieczeń DCOM, aby zezwolić użytkownikowi niebędącemu administratorem na zdalny dostęp do komputera i zezwolić użytkownikom na dostęp do określonych sekcji przestrzeni nazw usługi WMI.

Ustawienia Zapory systemu Windows

Ustawienia usługi WMI dla ustawień Zapory systemu Windows umożliwiają tylko połączenia WMI, a nie inne aplikacje DCOM.

Należy ustawić wyjątek w zaporze dla usługi WMI na zdalnym komputerze docelowym.

Wyjątek dla usługi WMI umożliwia usłudze WMI odbieranie połączeń zdalnych. Jeśli aplikacja kliencka tworzy własny ujście, ten ujście musi zostać jawnie dodany do wyjątków zapory, aby umożliwić pomyślne wywołanie zwrotne.

Możesz włączyć lub wyłączyć ruch WMI za pośrednictwem interfejsu użytkownika zapory systemu Windows. W tym celu wykonaj następujące kroki:

  1. W Panel sterowania wybierz pozycję >.
  2. Wybierz pozycję Zmień ustawienia , a następnie wybierz kartę Wyjątki .
  3. W oknie Wyjątki zaznacz pole wyboru Instrumentacja zarządzania Windows (WMI), aby włączyć ruch WMI przez zaporę. Aby wyłączyć ruch WMI, wyczyść pole wyboru.

Możesz włączyć lub wyłączyć ruch WMI przez zaporę w wierszu polecenia przy użyciu grupy reguł usługi WMI.

  • Użyj następującego polecenia w wierszu polecenia, aby włączyć ruch WMI przez zaporę.

    netsh advfirewall firewall set rule group="windows management instrumentation (wmi)" new enable=yes
    
  • Użyj następującego polecenia, aby wyłączyć ruch WMI przez zaporę.

    netsh advfirewall firewall set rule group="windows management instrumentation (wmi)" new enable=no
    

Zamiast używać pojedynczego polecenia grupy reguł usługi WMI, można również użyć poszczególnych poleceń dla każdego modelu DCOM, usługi WMI i ujścia.

Aby włączyć ruch WMI przy użyciu oddzielnych reguł dla modelu DCOM, usługi WMI, ujścia wywołania zwrotnego i połączeń wychodzących:

  • Aby ustanowić wyjątek zapory dla portu DCOM 135, użyj następującego polecenia:

    netsh advfirewall firewall add rule dir=in name="DCOM" program=%systemroot%\system32\svchost.exe service=rpcss action=allow protocol=TCP localport=135
    
  • Aby ustanowić wyjątek zapory dla usługi WMI, użyj następującego polecenia:

    netsh advfirewall firewall add rule dir=in name ="WMI" program=%systemroot%\system32\svchost.exe service=winmgmt action = allow protocol=TCP localport=any
    
  • Aby ustanowić wyjątek zapory dla ujścia, który odbiera wywołania zwrotne z komputera zdalnego, użyj następującego polecenia:

    netsh advfirewall firewall add rule dir=in name ="UnsecApp" program=%systemroot%\system32\wbem\unsecapp.exe action=allow
    
  • Aby ustanowić wyjątek zapory dla połączeń wychodzących z komputerem zdalnym, z którego komputer lokalny komunikuje się asynchronicznie, użyj następującego polecenia:

    netsh advfirewall firewall add rule dir=out name ="WMI_OUT" program=%systemroot%\system32\svchost.exe service=winmgmt action=allow protocol=TCP localport=any
    

Aby wyłączyć ruch WMI przy użyciu oddzielnych reguł dla modelu DCOM, usługi WMI, ujścia wywołania zwrotnego i połączeń wychodzących:

  • Aby wyłączyć wyjątek DCOM, użyj następującego polecenia:

    netsh advfirewall firewall delete rule name="DCOM"
    
  • Aby wyłączyć wyjątek usługi WMI, użyj następującego polecenia:

    netsh advfirewall firewall delete rule name="WMI"
    
  • Aby wyłączyć wyjątek ujścia, użyj następującego polecenia:

    netsh advfirewall firewall delete rule name="UnsecApp"
    
  • Aby wyłączyć wyjątek wychodzący, użyj następującego polecenia:

    netsh advfirewall firewall delete rule name="WMI_OUT"
    

Rozwiązywanie problemów z różnymi scenariuszami

Większość problemów z łącznością jest spowodowana nieprawidłowymi uprawnieniami, brakami uprawnień lub czynnikami zewnętrznymi, takimi jak zapory lub oprogramowanie antywirusowe. W związku z tym przejrzenie konfiguracji może rozwiązać ten problem.

Oprócz konfiguracji domyślnej niektóre dodatkowe ustawienia mogą mieć wpływ na łączność.

  • Przejrzyj dzienniki zdarzeń aplikacji i systemu pod kątem błędów zarejestrowanych przez aplikację kliencą lub ze źródła (Microsoft-Windows-DistributedCOM) i poszukaj wszelkich odpowiednich błędów lub zdarzeń, które mogą być rejestrowane na komputerze źródłowym lub docelowym w zależności od scenariusza.

  • Przejrzyj dzienniki zdarzeń Zapory systemu Windows w obszarze Podgląd zdarzeń> Aplikacje i usługi Dzienniki>>Windows>z zaawansowaną zaporą zabezpieczeń>dla wszystkich połączeń z usługi WMI blokowanych przez zaporę.

    Niektóre ustawienia zasad grupy są włączone, aby zmodyfikować domyślne zachowanie i uprawnienia RPC i DCOM. Na przykład:

    • Te zasady grupy mogą ograniczać nieuwierzytelnione wywołania RPC, co może spowodować błąd:

      Serwer RPC jest niedostępny. (Wyjątek od HRESULT: 0x800706BA)

      Konfiguracja komputera Szablony\

      To ustawienie steruje sposobem obsługi przez środowisko uruchomieniowe serwera RPC nieuwierzytelnionych klientów RPC łączących się z serwerami RPC. To ustawienie zasad ma wpływ na wszystkie aplikacje RPC, w tym WMI.

    • Te zasady grupy mogą konfigurować niestandardowe uprawnienia MODELU DCOM:

      Konfiguracja\komputera Ustawienia systemu Windows Ustawienia\zabezpieczeń Ustawienia\lokalne\Opcje zabezpieczeń DCOM\: Ograniczenia uruchamiania komputera w składni języka definicji deskryptora zabezpieczeń (SDDL)

      To ustawienie umożliwia określenie listy ACL na dwa sposoby. Deskryptor zabezpieczeń można wpisać w formacie SDDL lub udzielić lub odmówić uprawnień dostępu lokalnego i dostępu zdalnego do użytkowników i grup.

  • Przejrzyj zakres portów dynamicznych RPC na maszynie docelowej:

    • netsh int ipv4 show dynamicport tcp
    • netsh int ipv4 show dynamicport udp
    • netsh int ipv6 show dynamicport tcp
    • netsh int ipv6 show dynamicport udp

    Porównaj go z maszyną roboczą. Jeśli zakres portów nie jest domyślny lub ograniczony do małego zakresu, może to mieć wpływ na połączenie usługi WMI. Przegląd usługi i wymagania dotyczące portów sieciowych dla systemu Windows pokazują domyślny zakres portów wymagany dla RPC.

Jeśli problem dotyczy problemu z dostępem lub podstawowego błędu usługi WMI, przychodzące zapytania są rejestrowane jako zdarzenia operacyjne w dzienniku Microsoft-Windows-WMI-Activity/Operational w obszarze Podgląd zdarzeń>>>>

W niektórych scenariuszach lokalne połączenia WMI mogą zakończyć się niepowodzeniem.

Możesz użyć narzędzia WMIMGMT.msc , aby sprawdzić lokalną łączność WMI, klikając prawym przyciskiem myszy kontrolkę WMI i wybierając polecenie Właściwości.

Poniżej przedstawiono niektóre błędy występujące w przypadku niepowodzenia lokalnej usługi WMI:

  • Nie można nawiązać połączenia z <komputerem> lokalnym, ponieważ "WMI: Nie znaleziono"

    Zrzut ekranu przedstawiający okno Właściwości kontrolki usługi WMI z wyświetlonym błędem Nie znaleziono usługi WMI.

  • Nie można nawiązać połączenia z <komputerem> lokalnym, ponieważ "Win32: System nie może odnaleźć określonej ścieżki".

    Zrzut ekranu przedstawiający okno Właściwości kontrolki usługi WMI pokazujący, że system nie może odnaleźć określonego błędu ścieżki.

  • Nie można nawiązać połączenia z <komputerem> lokalnym, ponieważ "WMI: błąd ogólny"

    Zrzut ekranu przedstawiający okno Właściwości kontrolki WMI (lokalnie) pokazujący błąd ogólny usługi WMI.

Tego rodzaju błędy mogą być czasami spowodowane, jeśli w repozytorium WMI wystąpiła awaria lub wystąpiła uszkodzenie.

Następujące polecenie można użyć w oknie wiersza polecenia z podwyższonym poziomem uprawnień, aby przeprowadzić sprawdzanie spójności na żywo lub obecnie używane repozytorium WMI.

winmgmt /verifyrepository

Możesz również uruchomić to polecenie za pomocą /verifyrepository <path>polecenia . Po określeniu argumentu ścieżki można zweryfikować dowolną zapisaną kopię repozytorium.

W takim przypadku argument ścieżki powinien zawierać pełną ścieżkę do zapisanej kopii repozytorium. Zapisane repozytorium powinno być kopią całego folderu repozytorium.

W poniższej procedurze opisano sposób ponownego kompilowania plików MOF dostawcy WMI i ponownego rejestrowania bibliotek DLL dostawcy WMI. Obejmuje to wszystkich wbudowanych dostawców i tych umieszczonych w ścieżce domyślnej. Uruchom następujące polecenia w oknie wiersza polecenia z podwyższonym poziomem uprawnień.

Uwaga 16.

Poniższe kroki obejmują ponowne uruchomienie usługi WMI.

  1. Zatrzymaj usługę WMI i ustaw ją na :disabled

    sc config winmgmt start= disabled
    net stop winmgmt /y
    
  2. Przejdź do folderu WBEM :

    %systemdrive%
    cd %windir%\system32\wbem
    
  3. Zarejestruj ponownie dostawców usługi WMI:

    for /f %s in ('dir /b *.dll') do regsvr32 /s %s
    
  4. Ustaw usługę WMI z powrotem na Auto i uruchom usługę:

    sc config winmgmt start= Auto
    net start winmgmt 
    
  5. Ponownie skompiluj pliki MOF:

    dir /b *.mof *.mfl | findstr /v /i uninstall > moflist.txt & for /F %s in (moflist.txt) do mofcomp %s 
    

Uwaga 16.

Istnieje wiele zewnętrznych blogów i witryn do zresetowania repozytorium WMI lub ponownego skompilowania repozytorium WMI. Spowoduje to przywrócenie stanu początkowego repozytorium WMI po zainstalowaniu systemu operacyjnego. Usługa WMI utraci wszystkie informacje zebrane w miarę upływu czasu o samym systemie, aplikacjach, usługach i innych jednostkach wokół niego. W związku z tym nie zalecamy ponownego kompilowania repozytorium WMI, chyba że jest ono wykonywane przez pomoc techniczną firmy Microsoft.

Przepływ połączenia na poziomie sieci

Poniższe ślady to dane wyjściowe śladów sieci przechwyconych przy użyciu monitora sieciowego między dwoma maszynami podczas wykonywania zapytania usługi WMI z WMIC.exe.

Może to pomóc w ustaleniu, czy problem jest problemem z łącznością sieciową.

  • Połączenie z maperem punktu końcowego na porcie 135 maszyny docelowej:

    65        9:07:30 AM 3/21/2017        6.2302032        svchost.exe        10.0.0.6        10.0.0.22        TCP        TCP:Flags=......S., SrcPort=49229, DstPort=DCE endpoint resolution(135), PayloadLen=0, Seq=3759018265, Ack=0, Win=8192 ( Negotiating scale factor 0x8 ) = 8192        {TCP:8, IPv4:7}
    
  • Żądanie interfejsu RPC UUID dla IRemoteSCMActivator:

    68        9:07:30 AM 3/21/2017        6.2366981        svchost.exe        10.0.0.6        10.0.0.22        MSRPC        MSRPC:c/o Bind: IRemoteSCMActivator(DCOM) UUID{000001A0-0000-0000-C000-000000000046}  Call=0x5  Assoc Grp=0x0  Xmit=0x16D0  Recv=0x16D0         {MSRPC:9, TCP:8, IPv4:7}
    
  • Połączenie z jednym z portów dynamicznych dostarczonych przez maper punktu końcowego maszyny docelowej:

    77        9:07:30 AM 3/21/2017        6.3539124        WMIC.exe        10.0.0.6        10.0.0.22        TCP        TCP:Flags=......S., SrcPort=49230, DstPort=49154, PayloadLen=0, Seq=2143969401, Ack=0, Win=8192 ( Negotiating scale factor 0x8 ) = 8192        {TCP:10, IPv4:7}
    
  • Połączenie z przestrzeń nazw Root\CIMV2 maszyny "TargetMachine":

    96        9:07:30 AM 3/21/2017        6.4702188        WMIC.exe        10.0.0.6        10.0.0.22        WMI        WMI:IWbemLevel1Login:NTLMLogin Request, NetworkResource=\\TargetMachine\ROOT\CIMV2 PreferredLocale=ms_409,en-US,en Flags=0        {MSRPC:11, TCP:10, IPv4:7}
    
  • Wykonywanie zapytania:

    116        9:07:31 AM 3/21/2017        6.7577443        WMIC.exe        10.0.0.6        10.0.0.22        WMI        WMI:IWbemServices:ExecQuery Request, *Encrypted*        {MSRPC:11, TCP:10, IPv4:7}
    

Zbieranie danych

Przed otwarciem zgłoszenia do pomocy technicznej w celu dalszego zbadania można zbierać dane, wykonując poniższe kroki:

Pobierz TSS.zip i wyodrębnij zawartość.

  1. Uruchom śledzenie, uruchamiając następujące polecenie cmdlet z wiersza polecenia programu PowerShell z podwyższonym poziomem uprawnień.

    .\TSS.ps1 -UEX_WMIAdvanced -WMIProvList RPC,DCOM -NetshScenario netconnection -noBasicLog
    
  2. Odtwórz błąd łączności lub zaczekaj na odtworzenie błędu. Śledzenie działa dłużej niż dwie minuty.

  3. Zatrzymaj śledzenie, postępując zgodnie z instrukcjami w oknie programu PowerShell z uruchomionym narzędziem TSS.

Skrypt tworzy plik zip zawierający wszystkie wyniki śledzenia i informacje diagnostyczne. Po utworzeniu zgłoszenia do pomocy technicznej możesz przekazać ten plik do bezpiecznego obszaru roboczego na potrzeby analizy.