増殖するOperatingSystemSKU(その1)――WMIクエリの謎解き:その知識、ホントに正しい? Windowsにまつわる都市伝説(87)(2/2 ページ)
Windowsのエディションは「SKU」という番号で識別できることをご存じでしょうか。Windows Serverの場合は、インストールオプションでSKUが区別されることもあります。このSKUに関連して、今回はDirectAccessのセットアップで登場するWMIクエリの謎を解きます。
謎を解く鍵は、クライアントOSのOperatingSystemSKU値の一覧
2つ目のクエリを複雑にしているのは、条件に含まれるOperatingSystemSKUの値が多いことです。SKU番号はWindowsに新しいエディションが追加されると増えるため、エディションを正しく判断するには、Windowsのバージョン番号とSKU番号を組み合わせる必要があるのです。
先ほど紹介した「Win32_OperatingSystem class」のドキュメントは、Windowsの全エディションをカバーしていません。より幅広いエディションをカバーしているドキュメントが以下にあります。ただし、SKU番号が16進数になっていることも含め、分かりにくい一覧ですし、Windows 8/8.1以前のSKU番号が一部含まれていません(以前はありましたが、Windows 10追加時に削除されました)。
- GetProductInfo function[英語](Windows Dev Center)
Windows 7以降のSKU番号を分かりやすく一覧にすると、以下の表のようになります。存在する全てのエディションをカバーしているわけではありませんが、DirectAccessのWMIクエリの謎解きには十分だと思います。なお、Enterprise Nは「Windows Media Player」が削除されているエディションで、日本市場では提供されません。Enterprise EおよびUltimate Eエディションの詳細は不明です。このエディションは、実際には提供されなかったようです。
SKU番号 | エディション |
---|---|
1 | Ultimate |
3 | Home Premium |
4 | Enterprise(90日評価版も同じSKU番号) |
27 | Enterprise N |
28 | Ultimate N |
48 | Professional |
65 | Embedded Standard(Windows Thin PCを含む) |
70 | Enterprise E |
71 | Ultimate E |
SKU番号 | エディション |
---|---|
4 | Enterprise |
27 | Enterprise N |
48 | Pro |
72 | Enterprise Evaluation(90日評価版) |
84 | Enterprise N Evaluation(90日評価版) |
103 | Pro with Media Center |
SKU番号 | エディション |
---|---|
4 | Enterprise |
27 | Enterprise N |
48 | Pro |
72 | Enterprise Evaluation(90日評価版) |
84 | Enterprise N Evaluation(90日評価版) |
104 | Mobile |
121 | Education(バージョン1607以降のPro Educationについては未確認) |
123 | IoT Core |
この一覧を使ってクエリを解読すると、次のようになります。2つのクエリの結果が「真」の場合に、このWMIフィルターが設定されたGPOがコンピュータに適用されるということになります。
●1つ目のクエリ
システムタイプがモバイルである
かつ
●2つ目のクエリ
「サーバである」または「Windows 8/8.1またはWindows 10のEnterpriseまたはEnterprise NまたはEnterprise評価版またはEnterprise N評価版である」または「Windows 7のEnterpriseまたはEnterprise NまたはEnterprise EまたはUltimateまたはUltimate NまたはUltimate Eである」
Windows Server 2012 R2のWMIフィルターには問題があった
ちなみに、Windows Server 2012のDirectAccessのWMIフィルターは、以下のようになっています(リスト3)。ぜひ解読してみてください。Windows Server 2012 R2のDirectAccessのWMIフィルターも同じです。
Select * from Win32_ComputerSystem WHERE PCSystemType = 2 Select * from Win32_OperatingSystem WHERE (ProductType = 3) OR (Version LIKE '6.2%' AND (OperatingSystemSKU = 4 OR OperatingSystemSKU = 27 OR OperatingSystemSKU = 72 OR OperatingSystemSKU = 84)) OR (Version LIKE '6.1%' AND (OperatingSystemSKU = 4 OR OperatingSystemSKU = 27 OR OperatingSystemSKU = 70 OR OperatingSystemSKU = 1 OR OperatingSystemSKU = 28 OR OperatingSystemSKU = 71))
解読するとすぐに分かると思いますが、このWMIフィルターではWindows Server 2012 R2と同世代のWindows 8.1(バージョン6.3)が除外されてしまいます(画面4)。つまり、Windows Server 2012 R2とWindows 8.1 Enterpriseの環境でDirectAccessをセットアップした場合、「モバイルコンピューターに対してのみDirectAccessを有効にする」オプションを使うと、“DirectAccessクライアントとしてセットアップされない”というトラブルに巻き込まれることになります。
これは、Windows Server 2012 R2の製品のバグ(クエリの修正し忘れ)だと思います。問題を回避するには、クエリを修正してもよいのですが、「モバイルコンピューターに対してのみDirectAccessを有効にする」オプションを使わずに、ドメインのセキュリティグループを使用してGPOの適用先を割り当てる方が簡単です。
Windows Server 2016で問題は解消されたように見えるけど、実は……
Windows Server 2016のDirectAccessでは、Windows 8.1 Enterpriseが除外されてしまう問題はクエリの「Version LIKE '6.[2-3]%'」の部分で修正されました。また、Windows 10 Enterpriseへの対応もクエリの「Version LIKE '[1-9][0-9].%'」で修正されました。これで万全のように見えますが、実はそうではありません。
Windows 10 Enterprise LTSB(SKU番号125)とWindows 10 Education(SKU番号121)は、Windows 10 Enterpriseがベースなので、DirectAccessをサポートしているはずです。しかし、Windows Server 2016のDirectAccessの既定のWMIフィルターでは、これらのエディションは除外されてしまうのです(画面5)。DirectAccessでこれらのエディションをサポートする必要がある場合は、この点に留意する必要があります。
次回は、Windows ServerのOperatingSystemSKUの謎解きをする予定です。
筆者紹介
山市 良(やまいち りょう)
岩手県花巻市在住。Microsoft MVP:Cloud and Datacenter Management(Oct 2008 - Sep 2016)。SIer、IT出版社、中堅企業のシステム管理者を経て、フリーのテクニカルライターに。マイクロソフト製品、テクノロジーを中心に、IT雑誌、Webサイトへの記事の寄稿、ドキュメント作成、事例取材などを手掛ける。個人ブログは『山市良のえぬなんとかわーるど』。近著は『Windows Server 2016テクノロジ入門−完全版』(日経BP社)。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- Windowsで起動時に自動実行される不要なプログラムを「見つける」方法
アプリケーションのインストールなどを繰り返していると、いつのまにかWindowsの起動時に自動実行されるプログラムが増殖する。これらを確認するには、Windows 2000なら[コンピュータの管理]を、Windows XPなら[システム情報]を使う。またWindows XPでは[システム構成ユーティリティ]で削除指定ができる。 - Windowsのsvchost.exeプロセスとは? ―sc.exeでサービスをコマンドラインから制御する―
リッスンしているネットワーク・ポートを調べていると、svchost.exeというプロセスが所有者となっていることがよくある。svchost.exeは、ネットワーク関連の基本的なサービスを起動するための親となるプロセスであり、いくつかのグループに分けてサービスを起動している。scコマンドを使うと、サービスをコマンド・プロンプトから制御することができる。 - Windows 10のWindows Updateサービスを停止しようと考えている方へ
Windows 10のWindows Updateは、以前のWindowsから大きく変わりました。Windows 10になってからも変更は続いています。半ば強制的なWindows Updateに対抗する最終手段は「Windows Updateサービス」の無効化ですが、どうしてもというなら、影響を知った上で一時的に無効化するのがよいでしょう。 - Windows 10初期リリース(1507)のサービス終了のお知らせ
マイクロソフトは2017年4月12日(日本時間、以下同)、当初の予定通り、Windows Vista(Service Pack 2)に対する全ての製品サポートを終了しました。次にサポートが終了するのはWindows 7ですが、まだ3年もあると思っていませんか。それよりも前に、セキュリティ更新提供が終了するWindows 10があります。