So behandeln Sie Fehler und Probleme mit Remote Procedure Call
Wenn Sie erhalten RPC-Server ist nicht verfügbar In diesem Beitrag wird beschrieben, wie Fehler und Probleme bei Remote Procedure Call unter Windows 10 behoben werden. RPC oder Remote Procedure Call ist ein netzwerkbasiertes Programmiermodell, das die Punkt-zu-Punkt-Kommunikation zwischen Softwareanwendungen ermöglicht. In diesem Handbuch erfahren Sie, wie Sie Remote Procedure Call-Fehler beheben können. Die Fehler können auftreten, wenn Sie eine Verbindung zu WMI (Windows Management Instrumentation), SQL Server, einer Remoteverbindung oder einigen MMC-Snap-Ins (Microsoft Management Console) herstellen.
Fehlerbehebung bei Remoteprozeduraufrufen
“RPC-Server ist nicht verfügbar”Ist eines der häufigsten Probleme, die auftreten. Dies kann ein einfaches Netzwerkproblem sein oder der Server kann nicht reagieren. Sehen wir uns die Liste der Tools an, mit denen wir Fehler bei Remoteprozeduraufrufen beheben können. Sie können entweder PowerShell oder Eingabeaufforderung mit Administratorrechten verwenden, um diese Befehle auszuführen.
Sie müssen Microsoft Network Monitor oder Microsoft Message Analyzer verwenden, um Protokolle zu analysieren.
PortQuery
Mit diesem Tool können Sie das Problem mit dem Port herausfinden, den Sie verbinden möchten. Es kann feststellen, ob Ihre Anwendung oder Ihr Computer eine Verbindung zum Server herstellen kann.
Portqry.exe -n -e 135
Der obige Befehl versucht, den TCP-Port 25 für die angegebene Server-IP-Adresse abzufragen. Wenn Sie hier eine Website verwenden, wird diese intern in die IP-Adresse übersetzt. Suchen Sie in der Ausgabe nach *ip_tcp, und Portnummer. Wenn die Verbindung fehlschlägt, sollte eine entsprechende Antwort angezeigt werden. Wenn alles gut aussieht, suchen Sie am Ende nach einer (fettgedruckten) Anschlussnummer, die aussehen sollte
… .Servers Antwort: UUID: d95afe70-a6d5-4259-822e-2c84da1ddb0d ncacn_ip_tcp: 169.254.0.10[49664]
Wenn Sie keine Portnummer sehen, bedeutet dies, dass auf der Serverseite etwas nicht stimmt, und der Port hört nicht zu.
Netsh
Als Nächstes können Sie den Netsh-Befehl verwenden Sammeln Sie gleichzeitig Trace-Daten. TRACE bedeutet hier den Pfad von einem Punkt zum anderen in einem Netzwerk. Wenn irgendetwas dazwischen ein Problem verursacht, werden Sie es wissen.
Auf dem Client-Lauf:Startszenario für Netsh-Trace = Netconnection-Capture = Ja Trace-Datei = c: \ client_nettrace.etl maxsize = 512 overwrite = yes report = yes
Auf dem Server ausführen:
Startszenario für Netsh-Trace = Netconnection-Capture = Ja Trace-Datei = c: \ server_nettrace.etl maxsize = 512 overwrite = yes report = yes
Der obige Befehl führt ein Protokoll in einer Trace-Datei (.etl). Halten Sie dieses Fenster der Eingabeaufforderung bereit.
Versuchen Sie nun, das Problem zu reproduzieren, mit dem Sie auf dem Client-Computer konfrontiert waren. Möglicherweise müssen Sie einige Tasten der Software drücken oder alles, was ein Problem für Sie verursacht hat. Sobald Sie das Problem sehen, starten Sie Netsh Trace stoppen in der Eingabeaufforderung des Client-Computers.
Verwenden Sie nun das Analysegerät und filtern Sie die Spur nach
- Ipv4.address == und ipv4.address == und tcp.port == 135 oder nur tcp.port == 135.
- Suchen Sie auch nach dem Protokoll „EPM“ in der Spalte „Protokoll“.
Prüfen Sie nun, ob Sie eine Antwort vom Server erhalten. Wenn Sie eine Antwort erhalten, notieren Sie sich die dynamische Portnummer, die Sie für die Verwendung zugewiesen haben.
- Prüfen Sie, ob Sie erfolgreich eine Verbindung zu diesem dynamischen Port herstellen können.
- Der Filter sollte ungefähr so aussehen: tcp.port == und ipv4.address ==
Es sollte Ihnen helfen, die Konnektivität zu überprüfen und bei Netzwerkproblemen zu isolieren.
Hafen nicht erreichbar
Der häufigste Grund, warum der RPC-Server nicht verfügbar ist, ist, wenn der dynamische Port, zu dem der Client eine Verbindung herzustellen versucht, nicht erreichbar ist. Wenn zwischen den Pfaden eine Unterbrechung auftritt, bei der Rückkehr mit dem Port, bei dem kein Fehler gefunden wurde, usw., kann dies folgende Ursachen haben
- Die Firewall hat den dynamischen Portbereich blockiert.
- Ein Router oder ein Netzwerkgerät in der Mitte lässt das Paket fallen. Die Antwort kommt nicht zurück.
- Der Zielserver verwirft die Pakete (WFP-Drop / NIC-Drop / Filtertreiber usw.)..
Die bewährte Methode für das Problem "Post nicht erreichbar" ist die dynamische Zuordnung. In der Registrierung können Administratoren die dynamische RPC-Portzuweisung konfigurieren.
Diese Tools und Tipps helfen Ihnen, das Problem zu analysieren und herauszufinden. Die Lösung hängt davon ab, was genau das Problem ist, und hängt von der Software und dem Server ab.