近期的項目用到NTP,在使用的時候碰到一些問題,特記錄如下:
(1)NTP Server部分
若要將內部時間伺服器配置為與外部時間源同步,請按照下列步驟操作:
1. 將伺服器類型更改為 NTP。為此,請按照下列步驟操作:
a. 單擊“開始”,單擊“運行”,鍵入 regedit,然後單擊“確定”。
b. 找到並單擊以下註冊表子項:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\Type
c. 在右窗格中,按右鍵“Type”,然後單擊“修改”。
d. 在“編輯值”的“數值資料”框中鍵入 NTP,然後單擊“確定”。
2. 將 AnnounceFlags 設定為 5。為此,請按照下列步驟操作:
a. 找到並單擊以下註冊表子項:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\AnnounceFlags
b. 在右窗格中,按右鍵“AnnounceFlags”,然後單擊“修改”。
c. 在“編輯 DWORD 值”的“數值資料”框中鍵入 5,然後單擊“確定”。
3. 啟用 NTPServer。為此,請按照下列步驟操作:
a. 找到並單擊以下註冊表子項:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer
b. 在右窗格中,按右鍵“Enabled”,然後單擊“修改”。
c. 在“編輯 DWORD 值”的“數值資料”框中鍵入 1,然後單擊“確定”。
4. 指定時間源。為此,請按照下列步驟操作:
a. 找到並單擊以下註冊表子項:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters
b. 在右窗格中,按右鍵“NtpServer”,然後單擊“修改”。
c. 在“編輯值”的“數值資料”框中鍵入 Peers,然後單擊“確定”。
注意:Peers 是一個預留位置,應替換為您的電腦從中擷取時間戳記的對等端列表(以空格分隔)。列出的每個 DNS 名稱都必須是唯一的。必須在每個 DNS 名稱後面附加 ,0x1。如果不在每個 DNS 名稱後面附加 ,0x1,則在步驟 5 中所做的更改將不會生效。
5. 選擇輪詢間隔。為此,請按照下列步驟操作:
a. 找到並單擊以下註冊表子項:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient\SpecialPollInterval
b. 在右窗格中,按右鍵“SpecialPollInterval”,然後單擊“修改”。
c. 在“編輯 DWORD 值”的“數值資料”框中鍵入 TimeInSeconds,然後單擊“確定”。
注意:TimeInSeconds 是一個預留位置,應替換為您希望各次輪詢之間的間隔秒數。建議值為 900(十進位)。該值將時間伺服器配置為每隔 15 分鐘輪詢一次。
6. 配置時間校準設定。為此,請按照下列步驟操作:
a. 找到並單擊以下註冊表子項:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\MaxPosPhaseCorrection
b. 在右窗格中,按右鍵“MaxPosPhaseCorrection”,然後單擊“修改”。
c. 在“編輯 DWORD 值”的“基數”框中單擊以選擇“十進位”。
d. 在“編輯 DWORD 值”的“數值資料”框中鍵入 TimeInSeconds,然後單擊“確定”。
注意:TimeInSeconds 是一個預留位置,應替換為適當的值,如 1 小時 (3600) 或 30 分鐘 (1800)。您選擇的值將因輪詢間隔、網路狀況和外部時間源而異。
e. 找到並單擊下面的註冊表子項:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\MaxNegPhaseCorrection
f. 在右窗格中,按右鍵“MaxNegPhaseCorrection”,然後單擊“修改”。
g. 在“編輯 DWORD 值”的“基數”框中單擊以選擇“十進位”。
h. 在“編輯 DWORD 值”的“數值資料”框中鍵入 TimeInSeconds,然後單擊“確定”。
注意:TimeInSeconds 是一個預留位置,應替換為適當的值,如 1 小時 (3600) 或 30 分鐘 (1800)。您選擇的值將因輪詢間隔、網路狀況和外部時間源而異。
7. 退出登錄編輯程式。
8. 在命令提示字元處,鍵入以下命令以重新啟動 Windows 時間服務,然後按 Enter:
net stop w32time && net start w32time
(2) NTP Client部分
要想使用NTP,首先要確定Windows Time服務已啟動
設定windows預設使用的NTP地址
具體設定在註冊表的HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\DateTime\Servers下的預設值
Dos下通過調用如下指令來完成時間同步操作
net time /setsntp:192.168.1.232 ---- (設定時間伺服器地址)
net stop w32time --- (停止時間服務)
net start w32time --- (啟動時間服務)
w32tm –s --- (立即同步時間)