同じユーザーによるサーバーまたは共有リソースへの複数の接続を解決する方法

Windowsの共有ネットワークフォルダへの接続は、特に異なるユーザー認証情報でドライブをマッピングしようとすると、時々奇妙な動作をすることがあります。次のようなエラーが発生することがあります。

The network folder specified is currently mapped using a different user name and password. To connect using a different user name and password, first disconnect any existing mappings to this network share.

または、コマンドライン経由で実行する場合は次のようにします。

net use \\PCNAME07\D$ /user:myuser1 System error 1219 occurred. Multiple connections to a server or shared resource by the same user, using more than one user name, are not allowed. Disconnect all previous connections to the server or shared resource and try again.

基本的に、Windowsは同じネットワーク共有で複数のアカウントでゲームをプレイすることを好みません。同じフォルダを異なる認証情報でマッピングしようとすると、Windowsがエラーを起こします。この問題は、NASドライブやSambaサーバーの共有フォルダを扱う際によく発生し、特に同じマシン上にあってもパスワードやユーザー名が異なる場合に顕著です。もちろん、何らかの回避策を講じない限り、Windowsはこれらを同じリソースとして扱います。

よくある解決策の一つは、ホスト名ではなくIPアドレスを使ってマッピングすることです。これは当然のことながら、Windowsは必要以上にマッピングを難しくしているためです。こうすることで、各接続を個別のリソースとして扱うようになり、異なるユーザーを同じ共有にマッピングしても競合が発生しなくなります。このようなエラーが頻繁に発生する場合は、この方法を試すか、カスタムDNS/hostsエイリアスを作成することを検討してください。

ただし、その前に、すでに接続されているものをすべてクリーンアップする必要があります。面倒ですが、古いマッピングを削除し、キャッシュされた資格情報をクリアして、最初からやり直す必要があります。

Windowsで競合するネットワーク共有マッピングを修正する方法

現在マップされているネットワークドライブを確認する

  • コマンドプロンプトを開きます( を押しWindows + Rてから と入力しますcmd
  • 入力しnet useてEnterキーを押します。これで、マップされたすべてのドライブと、それらのリモートパス、そして現在のステータスが一覧表示されます。一見難解な情報が多いように見えますが、基本的には何が表示されているかが分かります。

既存のネットワークドライブマッピングをすべて削除します

  • 特定のドライブを削除する場合は、「リモート」列からリモートアドレスをコピーします(例\\PCNAME07\D$
  • を実行しますnet use /delete [paste the remote path]。例:net use /delete \\PCNAME07\D$
  • マップされたドライブをすべて一度に削除するには、次のコマンドを実行します。net use * /delete

ええ、確かにやり過ぎな気もしますが、白紙に戻さなければなりません。特にWindowsが適切に接続を切断したり認証情報をキャッシュし忘れたりした場合、古い接続が残っていると奇妙な競合が発生することがあります。

保存された資格情報を消去します(Windows は秘密を保持するのが好きなため)

  • PowerShellまたは実行ダイアログを開き、次のように入力します。rundll32.exe keymgr.dll, KRShowKeyMgr
  • これにより、Windows 資格情報マネージャーがポップアップ表示され、そのリモート マシンに保存されている資格情報がすべて削除されます。
  • プロのヒント:ドメインに参加している場合は、Kerberosチケットを消去することもお勧めします。PowerShellklist purgeまたはコマンドプロンプトで実行してください。理由は定かではありませんが、古いチケットが認証の問題を引き起こすことがあります。

ネットワークサービスを再起動します

  • サービス コンソール ( services.msc ) を開くか、コマンド プロンプトを使用して Workstation サービスを再起動します。
  • タイプnet stop workstation /y && net start workstation
  • 注: Workstationを再起動すると、Windows Server 2016/2019のNetlogonサービスも停止します。Netlogonサービスが実行されているかどうかを確認してください。実行されていない場合は、以下のコマンドで手動で起動してください。net start netlogon
  • 場合によっては、特定のマシンではこのプロセス全体が不安定になり、再起動が必要になります。常にそうとは限りませんが、他に何も解決しない場合は試してみる価値があります。

ドライブを再度マッピングします(理想的にはIPアドレス経由)

  • ホスト名ではなくIPアドレスを使って共有をマッピングしてみてください。例:net use Z: \\192.168.1.100\share /user:yourusername
  • これにより、Windows は共有を個別のリソースとして扱うことができるようになり、同じマシン上の異なるユーザーに簡単に接続できるようになります。
  • リモート サーバーで、複数の資格情報またはネストされた接続が許可されていることを確認します。

ドメインに参加している場合は、Kerberosキャッシュをリセットするとklist purge改善する場合があります。特に最近パスワードやユーザー情報を変更した場合は効果的です。それでも解決しない場合は、マシンを再起動してください。再起動さえすれば、すべてをクリアできる場合もあります。

異なるユーザー認証情報でネットワークドライブをマッピングするのは面倒ですが、これらの手順をすべて正しく実行すれば、それほど難しくはありません。重要なのは、新しいマッピングを試す前に、古い接続と認証情報を適切に消去することです。そうしないと、Windowsは古い情報を保持し続け、新しいユーザーでの接続を拒否してしまいます。

まとめ

  • 既存のマップされたドライブを確認するnet use
  • net use /deleteまたはを使用して古い接続を削除しますnet use * /delete
  • Windows 資格情報マネージャーに保存されている資格情報を消去する
  • ワークステーション サービスを再起動します (必要な場合は PC 全体を再起動します)
  • 競合を避けるためにIPアドレスを使用してネットワーク共有をマップする

まとめ

こういった競合に対処するのは少し面倒ですが、整理整頓して古い接続を削除しておくと状況は変わります。環境によっては、Windowsが古い認証情報やマッピング情報をどうしても忘れてくれないこともあるので、少し粘り強く取り組む必要があります。これでトラブルシューティングにかかる​​時間が数時間短縮されることを願っています。私は複数のマシンでうまくいきましたので、皆さんにもお役に立てれば幸いです。