答え1
これは PowerShell を使用すると簡単に実行できます。現在のところ、PowerShell Core エディションではこれらのコマンドが適切にサポートされていないため、次のコマンドは Windows に組み込まれている PowerShell で最も適切に機能します。
使用Get-NetAdapter
システム上のネットワーク アダプターを一覧表示します。
使用Get-NetAdapterBinding
-Name "MyAdapter" -AllBindings
ネットワーク アダプタ上のバインドを一覧表示します。
使用Set-NetAdapterBinding
-Name "MyAdapter" -ComponentID ms_tcpip -Enabled $True
コンポーネント名によってバインディングを有効または無効にします。
-?
詳細なオプションについては、リンクされたドキュメントを参照するか、フラグを使用してコマンドを実行してください。
答え2
私は仕事で使用するスクリプトのいくつかに対してこれを行ないました。
常に、多数のアダプタが登録されており、一部はループバックしています。主な問題は、ターゲットとする正しいアダプタを検出し、残りをフィルタリングすることです。また、ユーティリティ netsh によって行われた変更は、再起動が完了するまで wmi インターフェイスに反映されない場合があることにも注意してください。
Win32_NetworkAdapterConfiguration の WMI メンバー関数を調べるか、netsh を使用することをお勧めします。
OS については言及されていないので、Windows のことを指していると思います。Powershell をお勧めします。これは Windows 7 以降にバンドルされており、以前のシステムにもインストールできます。また、dotnet 関数 API へのアクセスも可能になります。
答え3
私は 2016 年のサーバーで試していたのですが、@M.Dundley が提供した行を変更する必要がありました。もちろん、彼の回答がなければ、自分のサーバーを構築することができませんでした。
次の行をtbimdsa
例として使用しました:
disable-NetAdapterbinding -name "MyAdapter" -ComponentID tbimdsa
また、 を使用して証明しましたenable-NetAdapterbinding
。ただし、すべてのバインディングまたはプロパティで機能するわけではないことに注意してください。