受け取った場合RPCサーバーが利用できませんメッセージが表示されたら、この投稿では、Windows 11/10 でリモート プロシージャ コールの失敗エラーと問題をトラブルシューティングする方法を示します。 RPC またはリモート プロシージャ コールは、ソフトウェア アプリケーション間のポイントツーポイント通信を可能にするネットワーク ベースのプログラミング モデルです。このガイドでは、リモート プロシージャ コール エラーのトラブルシューティング方法を共有します。このエラーは、Windows Management Instrumentation (WMI)、SQL Server への接続中、リモート接続中、または一部の Microsoft Management Console (MMC) スナップインで発生する可能性があります。
リモート プロシージャ コール エラーのトラブルシューティング
「RPCサーバーが利用できません」という問題は、最もよく発生する問題の 1 つです。単純なネットワークの問題、またはサーバーが応答できない可能性があります。リモート プロシージャ コール エラーのトラブルシューティングに使用できるツールのリストを見てみましょう。これらのコマンドを実行するには、管理者権限を持つ PowerShell またはコマンド プロンプトを使用できます。\
使用する必要がありますMicrosoft ネットワーク モニターまたはMicrosoft メッセージ アナライザーログを分析するため。
ポートクエリ
このツールは、接続しようとしているポートの問題を特定するのに役立ちます。アプリケーションまたはコンピューターがサーバーに接続できるかどうかを判断できます。
Portqry.exe -n <ServerIP> -e 135
上記のコマンドは、指定されたサーバー IP の TCP ポート 25 をクエリしようとします。ここで Web サイトを使用すると、内部で IP アドレスに変換されます。出力内で * を探します。ip_tcp、ポート番号。接続が失敗した場合は、失敗した応答が返されるはずです。すべてが正常であれば、最後にあるポート番号 (太字でマーク) を探します。次のようになります。
....Server's response: UUID: d95afe70-a6d5-4259-822e-2c84da1ddb0d ncacn_ip_tcp:169.254.0.10[49664]
ポート番号が表示されない場合は、サーバー側に問題があり、ポートがリッスンしていないことを意味します。
ネシュ
次に、Netsh コマンドを使用して、同時にトレースデータを収集する。ここでの TRACE は、ネットワーク上のある点から別の点へのパスを意味します。その間に何か問題の原因がある場合は、それがわかります。
クライアントで次を実行します。
Netsh trace start scenario=netconnection capture=yes tracefile=c:\client_nettrace.etl maxsize=512 overwrite=yes report=yes
サーバー上で以下を実行します。
Netsh trace start scenario=netconnection capture=yes tracefile=c:\server_nettrace.etl maxsize=512 overwrite=yes report=yes
上記のコマンドは、ログをトレースファイルに保存します(.etl)。コマンド プロンプトのこのウィンドウを準備しておいてください。
ここで、クライアント マシンで直面していた問題を再現してみます。ソフトウェア上のいくつかのボタン、または問題の原因となっているボタンを押す必要がある場合があります。問題が見つかったらすぐに実行してくださいNetsh トレースの停止クライアント マシンのコマンド プロンプト上で。
次に、アナライザー ツールを使用して、トレースをフィルター処理します。
Ipv4.address== and ipv4.address== and tcp.port==135 or just tcp.port==135
また、「プロトコル」列で「EPM」プロトコルを探します。
次に、サーバーから応答が得られるかどうかを確認します。応答を受け取った場合は、使用するために割り当てられている動的ポート番号をメモします。
- この動的ポートに正常に接続できるかどうかを確認してください。
- フィルターは次のようになります: tcp.port== および ipv4.address==
これは、接続を確認し、ネットワークに問題があるかどうかを切り分けるのに役立ちます。
関連している:修理リモート プロシージャ コールの CPU 使用率が高い。
ポートに到達できません
RPC サーバーが利用できない最も一般的な理由は、クライアントが接続しようとしている動的ポートに到達できない場合です。トレースが途中で途切れたり、ポートが見つからないというエラーを返したりする場合は、次の理由が考えられます。
- ファイアウォールが動的ポート範囲をブロックしました。
- 中間のルーターまたはネットワーク デバイスがパケットをドロップしています。応答が返ってこない。
- 宛先サーバーがパケットをドロップしています (WFP ドロップ/NIC ドロップ/フィルター ドライバーなど)。
Post に到達できない問題に対するベスト プラクティスは、動的割り当てを使用することです。レジストリを使用すると、管理者は RPC の動的ポート割り当てを構成できます。
これらのツールとヒントは、問題を分析して解明するのに役立ちます。解決策は、正確に何が問題なのか、またソフトウェアとサーバーによって異なります。
次の情報を受け取った場合は、これらの関連投稿を確認してください。