ワークグループ上のWindows Serverで共有フォルダを提供するファイルサーバがある環境で、旧ファイルサーバを廃止するための準備として、新ファイルサーバに「旧ファイルサーバと同じUNCパスをホストするように設定したい」と思い、検証してみましたのでご報告です。
元々、Windows Server 2008(あるいは2003)時代にクライアントがWindows7(あるいはXP)でやっていたことですので、詳しい解説は省略します。
やり方も、同じなので、詳細は前回の記事を参照
■(2/2)DNS名で共有フォルダ参照のために必要なレジストリ設定
https://blog.treedown.net/entry/2016/02/10/010000
今回は、実際に試してみた手順を詳細に記載していきます。
環境
以下をテスト環境で確認してみました。
「FileSVR-A」と「FileSVR-B」の二台のファイルサーバがある環境を想定、FileSVR-AにFileSVR-Bを統合し、FileSVR-Bを廃止するという想定で動作確認を進めます。
この場合、設定するのはFileSVR-Aのレジストリ設定となります。FileSVR-AのOSにはWindows Server 2019(評価版)を使用。
実施
さっそくFileSVR-Aを設定します。レジストリエディタを開き、
"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters"
にアクセスします。
ここで、レジストリキーを新規に作成。
REG_SZ(文字列値)を新規作成します。
(※複数のホスト名を付与する場合は REG_MULTI_SZ 値を作成しますが、今回は一つだけなのでREG_SZを使っています。)
レジストリキーの名前を、
"OptionalNames"と指定します。
このレジストリキーを開いて値のデータを編集します。
値のデータには、「FileSVR-B」と指定し、「FileSVR-A」のレジストリ設定に「FileSVR-B」の名前を指定することで、両方のコンピュータ名が使えるようになります。
設定その2:複数のホスト名を有効化する
上記と同じ場所("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters")に、今度は「REG_DWORD」を新規作成し、名前を「DisableStrictNameChecking」とします。
このキーを作成したら、値を編集し、
値を「1」に設定します。
この二つのレジストリキー設定が完了したところで、この環境では
"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters"に設定されたキーは、このようになりました。
設定が完了しましたので、サーバOSを再起動します。(OS再起動後、反映されます。)
さらに再起動後にはFileSVR-BはFileSVR-Aの中に存在することになるので、FileSVR-Bはシャットダウンやオフライン化するなどして、同一ネットワーク上に存在しないようにしないとエラーの原因となります。(コンピュータ名の重複でエラー)
動作確認
再起動後、有効化された複数のコンピュータ名で共有フォルダにアクセスできることを確認します。
まずは、本名(sysdm.cplで指定するコンピュータ名)である、「FileSVR-A」でアクセスします。
当然ですが、何の問題もなく共有フォルダにアクセスが可能です。
共有フォルダ内のテスト用のテキストファイルもアクセスできますし、内容の編集をし上書き保存も可能です。
この状態を(正常に共有フォルダにアクセスできることが)確認できたところで、先ほどレジストリキーで設定した、もう一つの芸名(alias的なホスト名)である「FileSVR-B」でアクセスしてみます。
特に問題なく共有フォルダを開くことが出来ました。このテキストファイルを編集し上書き保存も同じように実行可能です。※アクセス権や認証情報はFileSVR-Aで指定しているものが使われます。
このやり方が通用するならば、複数の共有フォルダをホストするコンピュータを暫定的に一台でホストするファイルサーバの共有フォルダに統合することは可能になる(はず)です。昔のOSでしか試したことがなかったのですが、比較的新しめのLTSCバージョンであるWindows Server 2019でも成功しました。