4
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

AWSでDFSを構成してみる

Last updated at Posted at 2014-12-15

AWS上でDFSを構築してみる

条件

  • 検証様のOS:Windows2008R2
  • クライアントもWindows2008R2
  • ADはサーバサイドのみで、クライアント側はADに参加させない

手順

  1. Windows2008R2を6台作成

    • dc01.domain.dfs.local:ドメインコントローラー
    • dc02.domain.dfs.local:ドメインコントローラー
    • fileserver01.domain.dfs.local:名前空間サーバ
    • fileserver02.domain.dfs.local:名前空間サーバ
    • target.domain.dfs.local:実際に共有用ディレクトリを保持するサーバ
    • client:dfs領域にアクセスするクライアント
  2. ドメインコントローラーを作成する

    • 役割からドメインコントローラを追加
    • 追加できたらdcpromo.exeでセットアップ
    • 後はよしなに。ADW上ではIPアドレスの配布自体はDHCPなので、動的なIPのままで進める。ただ、DHCPでの割当は固定的。
    • 今回はWindows2008R2互換で作成
  3. 名前空間サーバを作成する

    • ドメイン参加
    • 役割からファイルサーバ > 分散ファイルシステムを追加
    • このタイミングでは名前空間の作成はなし
    • DFSルートの2台分作成する
  4. 名前空間サーバ上で名前空間を作成する

    • DFS管理ツールから名前空間を作成
    • 名前空間サーバ:fileserver01.domain.dfs.local
    • 名前空間の名前と設定→ 共有ディレク名を入れる。設定の編集から共有フォルダーのローカルパスが設定できるがここは適当に。デフォルトはC:¥DFSRoots¥
    • 名前空間の種類:ドメインベースの名前空間を選択
    • Windows Server2008モードを有効にするにチェック
  5. 名前空間サーバの追加

    • 名前空間>作成した名前空間を選択
    • 操作>名前空間サーバの追加を選択
      • 名前空間サーバ:fileserver02
  6. ディレクトリの追加

    • 名前空間>作成した名前空間を選択
    • 操作>新しいフォルダー
    • フォルダターゲット:target.domain.dfs.local
    • 共有名、共有フォルダーのローカルパスは適当に。

動作確認

  • 共有名 domain.dfs.localについてdomain.dfs.localドメインに参加しているWindows機から名前解決を試す。
    ⇒dc01とdc02のIPがかえってくる
  • Linuxクライアントでも同じ結果
$ dig domain.dfs.local @<dc01のアドレス>

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6 <<>> domain.dfs.local @<dc01のアドレス>
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 43716
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;domain.dfs.local.		IN	A

;; ANSWER SECTION:
domain.dfs.local.	600	IN	A	<dc01のアドレス>
domain.dfs.local.	600	IN	A	<dc02のアドレス>

TCPdumpでいろいろ挙動を追う事も考えたけど、面倒なのでやめる

  • ADに参加しているWindows機より適当にアクセスしてみる

    • ¥¥domain.dfs.local¥<共有名>
      →読み書きOK
      target.domain.dfs.localのローカル上でもファイルを確認
  • AD非参加のマシンからアクセス。

    • 参照DNSをdc01/dc02に向ける。
    • domain.dfs.localもAD参加マシンと同様に名前解決できるがアクセス失敗
    • 認証まではいけたけど、おこられた
C:\Users\Administrator>start \\domain.dfs.local\<共有名>
ファイル \\domain.dfs.local\<共有名> が見つかりません。

C:\Users\Administrator>

調べるとこんな記事が

どうやら、アクセス先のサーバを列挙する際に、NetBIOS名を返す事もある様。KBに従い、レジストリを変更する。今時NetBIOSとかなんなの。

DFS サーバー上に DFS のルートまたはレプリカが置かれている場合は、それをサーバーから削除します。DfsDnsConfig パラメータを有効にする前に構成情報を削除し忘れた場合は、dfsutil /clean:computername コマンドを使うと構成情報を削除できます。
レジストリ エディタを起動し、次のキーを開きます。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dfs
DfsDnsConfig 値がある場合は、[編集] メニューの [値の編集] をクリックし、値を 1 に変更します。DfsDnsConfig 値がない場合は、[編集] メニューの [値の追加] をクリックし、次の情報値を追加します。
値の名前 : DfsDnsConfig
データ型 : REG_DWORD
データ : 0 または 1

変更後、念のため名前空間サーバを再起動&名前空間の再作成。無事につながる

挙動の確認

名前空間サーバの障害時の動作。

  • おもむろにマネージメントコンソールから名前空間サーバ1台をstop
  • 無事再接続できた。おおよそ30秒ぐらい?
  • エクスプローラー上のアドレス表示も変わらず
    \\domain.dfs.local\<共有名>

他にも挙動を確認しないとダメだけど、取り合えず動く事は動いた。

domain.dfs.localはdc01,dc02のアドレスを指しているけど、実際にアクセスするのは名前空間サーバのfileserver01,fileserver02

初回アクセス時
C:\Users\Administrator>
C:\Users\Administrator>
C:\Users\Administrator>start \\domain.dfs.local\<共有名>
C:\Users\Administrator>netstat -an

アクティブな接続

  プロトコル  ローカル アドレス          外部アドレス        状態
 ESTABLISHED
  TCP    <接続元IP>:63708    <fileserver01のIP>:445      
C:\Users\Administrator>
C:\Users\Administrator>
fileserver01停止
C:\Users\Administrator>
C:\Users\Administrator>
C:\Users\Administrator>start \\domain.dfs.local\<共有名>

再接続に30秒ぐらいかかった

C:\Users\Administrator>
C:\Users\Administrator>netstat -an

アクティブな接続

  プロトコル  ローカル アドレス          外部アドレス        状態
  TCP    <接続元IP>:63876    169.254.169.254:80     CLOSE_WAIT
  TCP    <接続元IP>:63877    <fileserver02のIP>:445     ESTABLISHED
  TCP    <接続元IP>:63879    <targetのIP>:445      ESTABLISHED
  TCP    [::]:135               [::]:0                 LISTENING

その他

  • オブジェクト的なもの
    • DC:domain,DC=dfs,DC=local
    • CN=system CN=Dfs-Configuration
4
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?