複数のNICを持っているVMにおいて,SANトラフィックなどに使うNICをPrivate networkに設定したいことがあると思います
。
しかし,デフォルトでは,Public networkになっています。
そこで,下記のコマンドをPowershellで流すと,Public networkになっているすべてのNICをPrivate networkに変更することができます。
すべてのNICをPrivate networkに変更するPowershell
Powershellを管理者権限で立ち上げて,下記のコマンドをペーストします。
Set-ExecutionPolicy UnRestricted $nwcon = [Activator]::CreateInstance([Type]::GetTypeFromCLSID([Guid]“{DCB00C01-570F-4A9B-8D69-199FDBA5723B}”)) $res = $nwcon.GetNetworkConnections() $res | % {if ($_.GetNetwork().GetCategory() -eq "0") {$_.GetNetwork().SetCategory(1)}}
DCB00C01-570F-4A9B-8D69-199FDBA5723Bとは?
DCB00C01-570F-4A9B-8D69-199FDBA5723Bとは,WindowsのクラスID(CLSID)の一つです。
このクラスIDは,レジストリの中で定義されており,特定のプログラムに対応しています。
クラスIDの子要素として含まれている値の中から,特定のプログラムのDLLのパスを取得することができ,DLLをロードすることができます。
今回の場合は,ネットワークの一覧を呼び出すためのクラスIDであるDCB00C01-570F-4A9B-8D69-199FDBA5723Bを指定しています。
その後,GetCategory()で取得できる値が0であれば,Public networkということですので,それを1に書き換えることで,Private networkに変更しています。
0: Public network
1: Private network
2: Authenticated network
1: Private network
2: Authenticated network
以上,複数のNICを持っているVMにおいて,すべてのPublic networkネットワークをPrivate networkに変更する方法でした。
コメント