2011/06/24

ここが変だよ「Windows Server 仮想化テクノロジ入門」 ・・・ RDP-Tcp の接続の種類

ITPro サイトの公開分には含まれませんが、書籍「Windows Server 仮想化テクノロジ入門」の第 3 章に誤った記述を発見してしまいました。書籍をご購入いただいた方へ、大変申し訳ございません。

誤った記述とは、 P.195 のヒントにある「なお、既定の[RDP-Tcp]は接続の種類が[Microsoft RDP 6.1]となっていますが、「6.1」は Windows のバージョンと一致するものであり、RDP 6.1 を示すものではありません。」というところです。これは間違っていました。

完全に言い訳ですが、私も間違いましたが、Windows Server 2008 R2 が間違っていたんです。 書籍を訂正するとしたら、「なお、既定の[RDP-Tcp]の接続の種類は、RDP のバージョンを示します。Windows Server 2008 R2 では[Microsoft RDP 6.1]と表示されますが、これは Windows Server 2008 R2 の不具合であり、正しくは[Microsoft RDP 7.0]と表示されるべきです。Windows Server 2008 R2 SP1 では訂正されており、[Microsoft RDP 7.1]と表示されます。」になるでしょうか。

なぜこんなことになってしまったのか。まあ、ちょっと聞いてってください。奥さん。
「RDP-Tcp」の「接続の種類」とは、「リモート デスクトップ セッション ホストの構成」スナップインの接続設定一覧のことです。既定で「RDP-Tcp」が 1 つだけあります(Citrix のソリューションがあれば「ICA-Tcp」とかもできると思います)。Windows Server 2008 R2 は、RDP 7.0 に対応していますが、ここの「接続の種類」には「Microsoft RDP 6.1」となっています。この不都合な不一致から、書籍の記述のようになってしまいました。

実は、Windows Server 2008 R2 SP1 では、「Microsoft RDP 7.1」と、RDP プロトコルのバージョンを正しく反映します。実際のスクリーンショットは以下のようになります。


この「接続の種類」の値がどこからきているか調べてみました。次のレジストリ値の設定から取得しているようです。実際、「WDName」の値を書き換えると、「接続の種類」の表示も変わるので、間違いないようです。

HKEY_LOCAL_MACHNE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp\WDName


関係ないですが、コマンドラインの勉強にもなりますので、レジストリ エディターを使用せずに、上記の値を取り出す方法を 2 つ紹介します。まずは、REG コマンドを使用した方法。

REG QUERY "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v WDName

次は、WMIC コマンドを使用した、WMI 経由での取得です。 名前空間 \\root\cimv2\TerminalServices の Win32_TSGeneralSettings クラスから取得することもできます。なお、Windows XP や Windows Server 2003 の場合は、名前空間 \\root\cimv2に Win32_TSGeneralSettings クラスがありますのでご注意を。

WMIC /NAMESPACE:\\root\cimv2\TerminalServices PATH WIN32_TSGeneralSetting WHERE TerminalName="RDP-TCP" GET TerminalName, TerminalProtocol

 すぐに確認できる範囲で、Windows のバージョンと、OS バージョン番号、レジストリ値「WDName」、および実装されている RDP のバージョン (クライアントの mstsc.exe の RDP バージョンではありません。RDP 受信側のです) を比較してみました。ご覧ください。「WDName」つまり「接続の種類」は、RDP のバージョンでよいようです。そして、Windows 7 RTM および Windows Server 2008 R2 RTM だけ、間違っているようなのです。おそらく、単純に修正するのを忘れたんでしょう。単なる表示名ですし、機能に影響はありません。でも、書籍の記述には影響してしまいました。

0 件のコメント: