🕌

EC2(Windows)をドメイン参加するとNTPの参照先はどうなるのか?

2024/05/14に公開

背景

EC2(Windows)をドメイン参加するとNTPの参照先はどうなるのか気になりました。

※基本の基かもしれません。AWSでWindwos Serverを初めて触る方の参考になれば嬉しい限りです。(もしかすると自動的に参照先が更新されるのか。。?なんて思ったりしてました。。)

結論

デフォルトでは「169.254.169.123(Amazon Time Sync Service)」を参照していますが、ドメイン参加すると参照先に「Time.windows.com」と「ドメインコントローラーのFQDN」の2つが追加されます。(図1、図2)しかしこの中から適当にNTPが参照されるため、サーバごとにばらつきが生じます。

そのためドメインコントローラーと時刻同期をしたい場合は、明示的に設定してあげる必要があります。

図1 ドメイン参加後のサーバ1

図2 ドメイン参加後のサーバ2

※2018 年 8 月以降に公開された Amazon が提供する Windows AMI では、デフォルトで「169.254.169.123(Amazon Time Sync Service)」を参照する様に構成されています。(参考資料[1])
※上記の状態でActive Directory ドメインに参加した場合、NTP タイプ設定が「Allsync」に変更されます。この設定が適用されているクライアントは、使用可能なすべての同期メカニズムを使用して、時刻同期を行います。

手順

  1. NTP参照先の設定をしたいサーバにRDP接続します。

  2. 以下のコマンドを実行し、現在の設定を確認します。(参考資料[2])

    • Windows タイム サービスの状態を表示

      w32tm /query /status
      
    • ピアの一覧とそれらの状態の詳細情報を表示

      w32tm /query /peers /verbose
      
  3. 以下のコマンドを実行し、NTPの参照先を明示的に設定します。(「xxx01.com」と「xxx02.com」を任意で変更。今回は2つ。)

w32tm /config /manualpeerlist:"xxx01.com,0x8 xxx02.com,0x8" /syncfromflags:manual /update
オプション 説明
/manualpeerlist:"xxx01.com,0x8 xxx02.com,0x8" 手動で指定するNTPサーバーのリスト
0x8 クライアントモードを使用
/syncfromflags:manual 指定したNTPサーバーからのみ時刻を取得
/update 設定変更を即座に適用

※ちなみに以下のコマンドを実行するとNTP タイプ設定が 「 NT5DS 」となり、ドメイン階層のみから時刻を同期する様に構成されます。

w32tm /config /syncfromflags:domhier /update
  1. 以下のコマンドを実行し、設定後の確認をします。

    • Windows タイム サービスの状態を表示

      w32tm /query /status
      
    • ピアの一覧とそれらの状態の詳細情報を表示

      w32tm /query /peers /verbose
      

参考資料

[1] Windows インスタンスの時刻の設定 - Amazon Elastic Compute Cloud #ローカル Amazon Time Sync Service を使用してインスタンスを設定する
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/WindowsGuide/set-time.html#configure-ec2-ntp
[2]NTP関連コマンド
https://qiita.com/sugenuma/items/d48a3543e22cf497589e

ヘッドウォータース

Discussion