當前位置:首頁 » 雲伺服器 » ntp伺服器如何添加ip

ntp伺服器如何添加ip

發布時間: 2022-11-25 06:37:06

1. 時間同步怎麼設置ntp伺服器地址

方法一.
採用Windows、linux等操作系統自帶的時間同步功能
對於Windows操作系統,自身已經集成了自動對時功能,在此僅以windows操作系統為例介紹一下。

雙擊系統托盤下方的時間在伺服器地址欄輸入NTP伺服器的IP地址(1.cn.pool.ntp.org),然後點擊「確定」按鈕保存下來就行了。

方法二.
修改注冊表,提高時間同步精度

由於系統默認的時間同步間隔是7天,我們無法自由選擇,使得這個功能在靈活性方面大打折扣。其實,我們也可以通過修改注冊表來手動修改它的自動同步間隔以提高同步精度,以下以XP系統為例。
1. 在「開始」菜單→「運行」項下輸入「Regedit」進入注冊表編輯器
2. 展開[
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/W32Time/TimeProviders/NtpClient
] 分支,並雙擊 SpecialPollInterval 鍵值,將對話框中的「基數欄」選擇到「十進制」上
3.
對話框中顯示的數字正是自動對時的間隔(以秒為單位),比如默認的604800就是由7(天)×24(時)×60(分)×60(秒)計算來的。設定時間同步周期(建議設為900=15分鍾或3600=1小時等周期值),填入對話框,點擊確定保存關閉對話框。
4.
在Parameters列表中,將NtpServer鍵值修改為NTP伺服器的IP地址(1.cn.pool.ntp.org),然後點擊「確定」按鈕保存。
方法三,採用其他NTP客戶端程序時間同步

可以在互聯網上找到其他客戶端程序實現電腦時間同步。

2. 如何搭建自己的NTP伺服器

  1. NTP伺服器【Network Time Protocol(NTP)】是用來使計算機時間同步化的一種協議,它可以使計算機對其伺服器或時鍾源(如石英鍾,GPS等等)做同步化,它可以提供高精準度的時間校正(LAN上與標准間差小於1毫秒,WAN上幾十毫秒),且可介由加密確認的方式來防止惡毒的協議攻擊。時間按NTP伺服器的等級傳播。按照離外部UTC源的遠近把所有伺服器歸入不同的Stratum(層)中。


  2. 網路時間協議(NTP)用來同步網路上不同主機的系統時間。你管理的所有主機都可以和一個指定的被稱為 NTP 伺服器的時間伺服器同步它們的時間。而另一方面,一個 NTP 伺服器會將它的時間和任意公共 NTP 伺服器,或者你選定的伺服器同步。由 NTP 管理的所有系統時鍾都會同步精確到毫秒級。

  3. 在公司環境中,如果他們不想為 NTP 傳輸打開防火牆,就有必要設置一個內部 NTP 伺服器,然後讓員工使用內部伺服器而不是公共 NTP 伺服器。在這個指南中,我們會介紹如何將一個 CentOS 系統配置為 NTP 伺服器。在介紹詳細內容之前,讓我們先來簡單了解一下 NTP 的概念。

  4. 為什麼我們需要 NTP?

  5. 由於製造工藝多種多樣,所有的(非原子)時鍾並不按照完全一致的速度行走。有一些時鍾走的比較快而有一些走的比較慢。因此經過很長一段時間以後,一個時鍾的時間慢慢的和其它的發生偏移,這就是常說的 「時鍾漂移」 或 「時間漂移」。為了將時鍾漂移的影響最小化,使用 NTP 的主機應該周期性地和指定的 NTP 伺服器交互以保持它們的時鍾同步。

  6. 在不同的主機之間進行時間同步對於計劃備份、入侵檢測記錄、分布式任務調度或者事務訂單管理來說是很重要的事情。它甚至應該作為日常任務的一部分。

  7. NTP 的層次結構

  8. NTP 時鍾以層次模型組織。層級中的每層被稱為一個 stratum(階層)。stratum 的概念說明了一台機器到授權的時間源有多少 NTP 跳。

  9. Stratum 0 由沒有時間漂移的時鍾組成,例如原子時鍾。這種時鍾不能在網路上直接使用。Stratum N (N > 1) 層伺服器從 Stratum N-1 層伺服器同步時間。Stratum N 時鍾能通過網路和彼此互聯。

  10. NTP 支持多達 15 個 stratum 的層級。Stratum 16 被認為是未同步的,不能使用的。

  11. 准備 CentOS 伺服器

  12. 現在讓我們來開始在 CentOS 上設置 NTP 伺服器。

  13. 首先,我們需要保證正確設置了伺服器的時區。在 CentOS 7 中,我們可以使用 timedatectl 命令查看和更改伺服器的時區(比如,"Australia/Adelaide",LCTT 譯註:中國可設置為 Asia/Shanghai )

  14. 代碼如下:

  15. # timedatectl list-timezones | grep Australia

  16. # timedatectl set-timezone Australia/Adelaide

  17. # timedatectl

  18. 繼續並使用 yum 安裝需要的軟體

  19. 代碼如下:

  20. # yum install ntp

  21. 然後我們會添加全球 NTP 伺服器用於同步時間。

  22. 代碼如下:

  23. # vim /etc/ntp.conf

  24. server 0.oceania.pool.ntp.org

  25. server 1.oceania.pool.ntp.org

  26. server 2.oceania.pool.ntp.org

  27. server 3.oceania.pool.ntp.org

  28. 默認情況下,NTP 伺服器的日誌保存在 /var/log/messages。如果你希望使用自定義的日誌文件,那也可以指定。

  29. 復制代碼

  30. 代碼如下:

  31. logfile /var/log/ntpd.log

  32. 如果你選擇自定義日誌文件,確保更改了它的屬主和 SELinux 環境。

  33. 復制代碼

  34. 代碼如下:

  35. # chown ntp:ntp /var/log/ntpd.log

  36. # chcon -t ntpd_log_t /var/log/ntpd.log

  37. 現在初始化 NTP 服務並確保把它添加到了開機啟動。

  38. 代碼如下:

  39. # systemctl restart ntp

  40. # systemctl enable ntp

  41. 驗證 NTP Server 時鍾

  42. 我們可以使用 ntpq 命令來檢查本地伺服器的時鍾如何通過 NTP 同步。

  43. 下面的表格解釋了輸出列。

  44. remote 源在 ntp.conf 中定義。『*』 表示當前使用的,也是最好的源;『+』 表示這些源可作為 NTP 源;『-』 標記的源是不可用的。

  45. refid 用於和本地時鍾同步的遠程伺服器的 IP 地址。

  46. st Stratum(階層)

  47. t 類型。 'u' 表示單播(unicast)。其它值包括本地(local)、多播(multicast)、廣播(broadcast)。

  48. when 自從上次和伺服器交互後經過的時間(以秒數計)。

  49. poll 和伺服器的輪詢間隔,以秒數計。

  50. reach 表示和伺服器交互是否有任何錯誤的八進制數。值 337 表示 100% 成功(即十進制的255)。

  51. delay 伺服器和遠程伺服器來回的時間。

  52. offset 我們伺服器和遠程伺服器的時間差異,以毫秒數計。

  53. jitter 兩次取樣之間平均時差,以毫秒數計。

  54. 控制到 NTP 伺服器的訪問

  55. 默認情況下,NTP 伺服器允許來自所有主機的查詢。如果你想過濾進來的 NTP 同步連接,你可以在你的防火牆中添加規則過濾流量。

  56. # iptables -A INPUT -s 192.168.1.0/24 -p udp --dport 123 -j ACCEPT

  57. # iptables -A INPUT -p udp --dport 123 -j DROP

  58. 該規則允許從 192.168.1.0/24 來的 NTP 流量(埠 UDP/123),任何其它網路的流量會被丟棄。你可以根據需要更改規則。

  59. 配置 NTP 客戶端

  60. 1. Linux

  61. NTP 客戶端主機需要 ntpupdate 軟體包來和伺服器同步時間。可以輕松地使用 yum 或 apt-get 安裝這個軟體包。安裝完軟體包之後,用伺服器的 IP 地址運行下面的命令。

  62. 代碼如下:

  63. # ntpdate

  64. 基於 RHEL 和 Debian 的系統命令都相同。

  65. 2. Windows

  66. 如果你正在使用 Windows,在日期和時間設置(Date and Time settings)下查找網路時間(Internet Time)。

  67. 3. Cisco 設備

  68. 如果你想要同步 Cisco 設備的時間,你可以在全局配置模式下使用下面的命令。

  69. 代碼如下:

  70. # ntp server

  71. 來自其它廠家的支持 NTP 的設備有自己的用於網路時間的參數。如果你想將設備和 NTP伺服器同步時間,請查看設備的說明文檔。

  72. 結論

  73. 總而言之,NTP 是在你的所有主機上同步時鍾的一個協議。我們已經介紹了如何設置 NTP 伺服器並使支持 NTP 的設備和伺服器同步時間。

3. 海康威視監控ntp校時怎麼設置

NTP校時

通過設置NTP 伺服器地址、NTP 埠號和校時時間間隔,設備即按照設置每隔一段時間校時一次。

NVR3.0界面路徑:

主菜單—系統配置—網路配置——NTP

注意:NTP校時,需要設備接入外網或者在區域網中有NTP軟體組建NTP伺服器。


系統事件安全注意事項:

  • 設備在日常使用中要注意保持清潔和防塵,而且切忌勤開勤關。比如:在開啟系統後不要馬上就關閉系統,這樣會較容易損傷設備,雖然在系統控制編寫程序時已注意到該事項,作了一定的保護功能,但在使用時還是請注意。

  • 中央集成控制系統的主機及視頻處理系統可以長期通電,投影機連續開機的時間建議不能超過10個小時。

  • 遵循以下安全原則有助於確保您的人身安全,避免潛在損害

  1. 請勿嘗試自行維修組成系統的所有器材,除非您是經過系統培訓的維修技術人員,請始終嚴格按照操作手冊進行系統的使用和維護。

  2. 請保持所有器材的通風暢順,否則可能會導致器材內部組件短路而引起火災或觸電事件,甚至可能會因此造成整個系統的崩潰。

  3. 為了避免可能發生的電擊事件,請勿在雷雨天期間連接或斷開系統的任何電纜,也不要嘗試對系統的器材進行帶電維修和安裝。

  4. 本系統的大部分器材都經過了嚴格的電磁輻射(EMC)或類似的安全驗證,一般情況不會對其它電子產品產生干擾,但在系統需要增加電子器材設備時,請注意您選擇的產品有無通過類似的測試驗證,以免對現有的系統產生干擾。

  5. 斷開所有電纜連接時,請針對不同的電纜連接頭方式,捂緊連接器進行拔插,請勿使用蠻力強拉電纜。連接電纜之前,請確認兩個連接頭的朝向正確並對齊。

  6. 系統或器材在關閉之後,請勿嘗試即時重啟,投影機必須要等待散熱風扇完全停止運行才能重啟,散熱時間視乎運行的狀態而定(一般建議不低於30分鍾)。其它電子器材重啟間隔時間建議不少於3分鍾。

  7. 投影機啟動時間大約60秒(按下Stby鍵後),30秒後才會打開光柵,有強光投射於屏幕,此過程請不要朝鏡頭內看,以免光柵打開灼傷眼睛。

  8. 保持電子系統運行的基本清潔環境,做到無煙霧、無灰塵,因為煙霧和灰塵對投影機以及所有電子器材的損害較大,雖然投影機擁有密封、防塵、防煙的DMD?晶元。

  9. 其它安全說明或詳細的注意事項請參考附件的產品說明書。

以上內容參考網路-監控

4. linux怎麼添加ntp伺服器

執行ntpdate xxx.xxx.xxx.xxx(ntp伺服器地址)。
Linux下配置NTP伺服器
配置方法:
1、ntp服務安裝
NTP服務在RHEL5.x中式默認安裝的軟體包,可用rpm -qa |grep
ntp檢查是否安裝,如果未安裝可使用如下命令安裝與刪除NTP伺服器軟體包
#使用rpm方式安裝
rpm -ivh ntp-4.2.2p1-8.el5.i386.rmp
#使用yum方式安裝
yum -y install ntp.i*
#使用rpm方式刪除
rpm -e ntp-4.2.2pl-8.el5.i386.rpm
#使用yum方式刪除
yum -y remove ntp.i*
2、ntp服務配置
在ntp服務安裝完成後,需要修改ntp服務配置文件。ntp服務主配置文件/etc/ntp.conf
2.1 ntp服務的啟動、暫停
NTP屬於system
V服務,其啟動、暫停相關命令如下:
#啟動
service ntpd
start
#停止
Service ntpd
stop
#重新載入
service ntpd
reload
#查看當前啟動狀態
service ntpd
status
2.2 ntp服務自動載入
設置ntp服務下一次開機運行狀態可通過命令配置

#在運行級別2、3、4、5上設置為自動運行
chkconfig
ntpd on
#在運行級別2、3、4、5上設置為不自動運行
chkconfig
ntpd off
#在運行級別3、5上設置為自動運行
chkconfig
ntpd --level 35 on
#在運行級別3、5上設置為不自動運行
chkconfig
ntpd --level 35 off
2.3 配置信息
配置ntp,將Internet上的時間伺服器作為內部標准時間來源,過程如下
1)修改/etc/ntp.conf文件
restrict default kod nomodify notrap nopeer noquery
restrict 127.0.0.1
restrict -6::1
restrict 192.168.0.0 mask 255.255.255.0 nomodify notrap
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
#指定Internet上的時間伺服器
restrict 207.46.232.182 mask 255.255.255.255 nomodify notrap noquery
server 207.46.232.182
server 127.127.1.0
fudge 127.127.1.0 stratum 10
keys /etc/ntp/keys
#指定NTP伺服器日誌文件
logfile /var/log/ntp

2)修改/etc/ntp/stpe-tickers文件,內容如下(當ntpd服務啟動時,會自動與該文件中記錄的上層NTP服務進行時間校對)
207.46.232.182
127.127.1.0
3)修改/etc/sysconfig/ntpd文件,內容如下:

#允許BIOS與系統時間同步,也可以通過hwclock -w 命令

SYNC_HWCLOCK=yes

4)在配置完成並重新啟動服務後,可通過ntpstat
命令顯示本機上一次與上層ntp伺服器同步時間的情況,也可以使用ntpq -p 查看本機與上層ntp伺服器通信情況,
2.4 圖形界面配置NTP

圖形界面下直接用system-config-date, 在「Network Time Protocol」選項頁指定NTP伺服器後勾選「Synchronize system clock before startingservice」,將ntpd服務設置為自動運行即可。
2.5 客戶端訪問
1)Linux客戶端可通過圖形界面進行配置,也可以通過ntpdate命令立即與NTP伺服器及行時間校對。
ntpdate 192.168.0.10
2)Windows客戶端,只需雙擊任務欄右下角的時鍾,選擇「Internet時間」選項頁,輸入NTP服務IP地址或FQDN,並勾選「自動與Internet時間伺服器同步」即可。
Windows默認7天自動更新一次,可通過修改注冊表HKEY_LOCAL_MACHINE\SYSTEM
\CurrentControlSet\services\W32Time\TimeProviders\NtpClient\SpecialPollInterval 默認單位為妙,修改後重新啟動即可生效。

5. NTP伺服器的配置和使用

為了避免Linux系統的主機,在長時間運行下所導致的時間偏差。因此我們需要對時間進行時間同步(synchronize)。我們一般使用ntp服務來同步不同機器的時間。NTP 是網路時間協議(Network Time Protocol)的簡稱,他是通過UDP協議,對時間進行同步的。

編輯NTP Server的主要配置文件為/etc/ntp.conf ,如下:

配置含義:

配置完畢,重啟NTP服務,使配置更改生效。

查看NTP服務和上級連通狀態

內網其他設備作為NTP的客戶端配置,相對就比較簡單,而且所有設備的配置都相同。
首先需要安裝NTP服務(與NTP-Server完全一樣)。然後找其中一台配置/etc/ntp.conf文件,配置完成驗證通過後,拷貝到其他客戶端機器,直接使用即可。
注釋掉之前的上層服務,以下幾行

添加本地的NTP伺服器即可完成配置

可以用date命令查看時區
如果時區是EST需要改成CST

選擇亞洲 /中國 /北京 /然後確認
改完後執行如下復制語句

使用

172.17.30.100為你的NTP伺服器的ip地址,顯示adjust time server 192.168.1.135 offset 0.004882 sec
這里有可能出現同步失敗,一般情況下原因都是本地的NTPD伺服器還沒有正常啟動起來,一般需要幾分鍾時間後才能開始同步。
也有報錯 no server suitable for synchronization found,這種問題由一下兩種情況造成:
Server dropped: strata too high:
並且顯示「stratum 16」。而正常情況下stratum這個值得范圍是「0~15」。
這種問題往往是由ntp服務啟動後還沒有和上層服務同步完成,可以等五分鍾再次查看。
Server dropped: strata no data:
這種問題一般是因為訪問不到NTP服務,需要檢查NTP服務是否啟動成功,或者是否是被防火牆攔截。
啟動NTP_Client

啟動後,查看同步情況

由於是內網,NTP服務很快會同步上,可以使用下面命令查看時間是否和伺服器時間相同

本機客戶端配置完成後,需要同步的客戶端機器使用SCP拷貝/etc/ntp.conf,命令如下,啟動NTP服務即可。

Linux的NTP配置總結
NTP服務及時間同步問題

6. Linux系統下的NTP配置

第一步,選擇最好的NTP服務地址

具體命令為ntpdate -q IP地址或域名

廣東地區NTP優選結果如下:

①time4.cloud.tencent.com

②server time.asia.apple.com

③server cn.ntp.org.cn

④server ntp.aliyun.com

⑤server cn.pool.ntp.org

檢查BIOS主板時間的命令

hwclock -r

NTP服務啟停命令

sudo systemctl start/stop ntpd

檢查查看ntp伺服器有無和上層ntp連通

ntpstat

查看ntp伺服器與上層ntp的狀態

ntpq -pn

===server選項格式===

server host  [ key n ] [ version n ] [ prefer ] [ mode n ] [ minpoll n ] [ maxpoll n ] [ iburst ]

其中host是上層NTP伺服器的IP地址或域名,隨後所跟的參數解釋如下所示:

◆ key: 表示所有發往伺服器的報文包含有秘鑰加密的認證信息,n是32位的整數,表示秘鑰號。

◆ version: 表示發往上層伺服器的報文使用的版本號,n默認是3,可以是1或者2。

◆ prefer: 如果有多個server選項,具有該參數的伺服器優先使用。

◆ mode: 指定數據報文mode欄位的值。

◆ minpoll: 指定與查詢該伺服器的最小時間間隔為2的n次方秒,n默認為6,范圍為4-14。

◆ maxpoll:  指定與查詢該伺服器的最大時間間隔為2的n次方秒,n默認為10,范圍為4-14。

◆ iburst: 當初始同步請求時,採用突發方式接連發送8個報文,時間間隔為2秒。

===同步硬體時鍾===

ntp服務,默認只會同步系統時間。

如果想要讓ntp同時同步硬體時間,可以設置/etc/sysconfig/ntpd文件,

在/etc/sysconfig/ntpd文件中,添加【SYNC_HWCLOCK=yes】這樣,就可以讓硬體時間與系統時間一起同步。

允許BIOS與系統時間同步,也可以通過hwclock -w 命令。

hwclock命令用來查詢和設置硬體時鍾。

hwclock -r 讀取並列印硬體時鍾

hwclock -s 將硬體時鍾同步到系統時鍾

hwclock -w  將系統時鍾同步到硬體時鍾

系統時鍾與硬體時鍾

在Linux中有硬體時鍾與系統時鍾等兩種時鍾。硬體時鍾是指主機板上的時鍾設備,也就是通常可在BIOS畫面設定的時鍾。系統時鍾則是指kernel中的時鍾。當Linux啟動時,系統時鍾會去讀取硬體時鍾的設定,之後系統時鍾即獨立運作。所有Linux相關指令與函數都是讀取系統時鍾的設定。

參考文檔:

Linux伺服器NTP客戶端配置——https://www.cnblogs.com/paul8339/p/10059364.html

NTP服務、客戶端配置詳解——https://blog.51cto.com/u_11392081/1784080

7. 如何在linux 上配置NTP 時間同步

一:NTP是網路時間同步協議,就是用來同步網路中各個計算機的時間的協議

二:NTP服務端配置

2.1、檢查系統是否安裝了NTP包(linux系統一般自帶NTP4.2),沒有安裝我們直接使用yum命令在線安裝: yum install ntp

2.2、NTP服務端配置文件編輯: vim /etc/ntp.conf

結果:

restrict 控制相關許可權。

語法為: restrict IP地址 mask 子網掩碼 參數

其中IP地址也可以是default ,default 就是指所有的IP

參數有以下幾個:

ignore :關閉所有的 NTP 聯機服務

nomodify:客戶端不能更改服務端的時間參數,但是客戶端可以通過服務端進行網路校時。

notrust :客戶端除非通過認證,否則該客戶端來源將被視為不信任子網

noquery :不提供客戶端的時間查詢:用戶端不能使用ntpq,ntpc等命令來查詢ntp伺服器

notrap :不提供trap遠端登陸:拒絕為匹配的主機提供模式 6 控制消息陷阱服務。陷阱服務是 ntpdq 控制消息協議的子系統,用於遠程事件日誌記錄程序。

nopeer :用於阻止主機嘗試與伺服器對等,並允許欺詐性伺服器控制時鍾

kod : 訪問違規時發送 KoD 包。

restrict -6 表示IPV6地址的許可權設置。

root@www ~]#vim /etc/ntp.conf# 1. 先處理許可權方面的問題,包括放行上層伺服器以及開放區網用戶來源:restrict default kod nomodify notrap nopeer noquery <==拒絕 IPv4 的用戶restrict -6 default kod nomodify notrap nopeer noquery <==拒絕 IPv6 的用戶restrict 220.130.158.71 <==放行 tock.stdtime.gov.tw 進入本 NTP 伺服器restrict 59.124.196.83 <==放行 tick.stdtime.gov.tw 進入本 NTP 伺服器restrict 59.124.196.84 <==放行 time.stdtime.gov.tw 進入本 NTP 伺服器restrict 127.0.0.1 <==底下兩個是預設值,放行本機來源restrict -6 ::1restrict 192.168.100.0 mask 255.255.255.0 nomodify <==放行區網來源# 2. 設定主機來源,請先將原本的 [0|1|2].centos.pool.ntp.org 的設定註解掉:server 220.130.158.71 prefer <==以這部主機為最優先server 59.124.196.83server 59.124.196.84# 3.預設時間差異分析檔案與暫不用到的 keys 等,不需要更動它:driftfile /var/lib/ntp/driftkeys /etc/ntp/keys

ntpd、ntpdate的區別

下面是網上關於ntpd與ntpdate區別的相關資料。如下所示所示:

使用之前得弄清楚一個問題,ntpd與ntpdate在更新時間時有什麼區別。ntpd不僅僅是時間同步伺服器,它還可以做客戶端與標准時間伺服器進行同步時間,而且是平滑同步,並非ntpdate立即同步,在生產環境中慎用ntpdate,也正如此兩者不可同時運行。

時鍾的躍變,對於某些程序會導致很嚴重的問題。許多應用程序依賴連續的時鍾——畢竟,這是一項常見的假定,即,取得的時間是線性的,一些操作,例如資料庫事務,通常會地依賴這樣的事實:時間不會往回跳躍。不幸的是,ntpdate調整時間的方式就是我們所說的」躍變「:在獲得一個時間之後,ntpdate使用settimeofday(2)設置系統時間,這有幾個非常明顯的問題:

第一,這樣做不安全。ntpdate的設置依賴於ntp伺服器的安全性,攻擊者可以利用一些軟體設計上的缺陷,拿下ntp伺服器並令與其同步的伺服器執行某些消耗性的任務。由於ntpdate採用的方式是跳變,跟隨它的伺服器無法知道是否發生了異常(時間不一樣的時候,唯一的辦法是以伺服器為准)。

第二,這樣做不精確。一旦ntp伺服器宕機,跟隨它的伺服器也就會無法同步時間。與此不同,ntpd不僅能夠校準計算機的時間,而且能夠校準計算機的時鍾。

第三,這樣做不夠優雅。由於是跳變,而不是使時間變快或變慢,依賴時序的程序會出錯(例如,如果ntpdate發現你的時間快了,則可能會經歷兩個相同的時刻,對某些應用而言,這是致命的)。因而,唯一一個可以令時間發生跳變的點,是計算機剛剛啟動,但還沒有啟動很多服務的那個時候。其餘的時候,理想的做法是使用ntpd來校準時鍾,而不是調整計算機時鍾上的時間。

NTPD 在和時間伺服器的同步過程中,會把 BIOS 計時器的振盪頻率偏差——或者說 Local Clock 的自然漂移(drift)——記錄下來。這樣即使網路有問題,本機仍然能維持一個相當精確的走時。

8. AD域控制器NTP服務設置

1)首先確認虛擬化底層的時間是否准確,因為所有虛擬機會自動同步虛擬主機的時間。

2)在所有AD伺服器上開啟時間同步功能

一、找到適合的NTP伺服器

首先需要找一個適合自己網路環境的NTP伺服器,因為不同的網路會有不同的NTP伺服器起作用,檢測NTP伺服器的方法為在AD上運行 w32tm /stripchart /computer:NTP伺服器域名或IP ,如 w32tm /stripchart /computer:182.92.12.11 ,若是可以使用會顯示如下圖

找到適合自己網路的可用NTP伺服器後,假設找到182.92.12.11為可用NTP伺服器,在AD伺服器上開啟時間同步,運行如下命令

三、設置主域控制器與國家授時中心伺服器時間同步,同步周期為1天。

1、 添加時間伺服器

在右邊窗口點右鍵新建「字元串值」,將此「字元串值」命名為0。雙擊此新建的「字元串值」,輸入: 182.92.12.11 ,保存。將「默認」(即第一個「字元串值」)修改為0即可,刪除其他所有的值只保留如圖所示的值

2、 指定時間源

修改鍵NtpServer的值為 182.92.12.11

3、 設置校時周期

修改鍵SpecialPollInterval的值為十進制的604800(即為604800秒,1天)

四、設置權威伺服器

1、 設置權威伺服器

在域控伺服器上打開注冊表,找到鍵值

修改鍵AnnounceFlags的值為十進制的10。

2、 啟用 NTPServer

修改鍵Enabled的值為十進制的1

五、配置組策略,設置時間同步

1、 打開組策略管理

2、 在「Default Domain Policy」上右鍵,編輯。

3、 計算機配置—管理模板—系統—Windows時間服務,雙擊「全局配置設置」,選擇「已啟用」。

修改MaxNegPhaseCorrection的值為3600(即為3600秒,1小時)

修改MaxPosPhaseCorrection的值為3600(即為3600秒,1小時)

修改AnnounceFlags的值為5

點「應用」,「確定」。

4、 計算機配置—管理模板—系統—Windows時間服務—時間提供程序,「啟用Windows NTP客戶端」,選擇「已啟用」。

「配置Windows NTP客戶端」,選擇「已啟用」。

修改NtpSever的值為 182.92.11

修改Type的值為NTP

修改SpecialPollInterval的值為1800(30分鍾)

5、cmd命令在域控和客戶端完成檢測

域控上運行下面三條命令檢測,返回成功執行了命令即為成功。若是返回此計算機沒有重新同步,因為沒有可用的時間數據。請排查上述文檔中一步時間伺服器是否可用,和五-4步伺服器是否正確,看w32tm /query /source命令返回的結果是否正確。

域內的客戶端想要同主域時間同步,執行下面的命令,返回成功執行了命令即為成功

注意時間若想成功同步,時間不能跟標准時間差別太大,在范圍內的才能成功同步。

1、系統時間比標准時間系統時間晚14小時59分鍾之內

2、系統時間比標准時間早30分鍾之內

3)對於有些客戶端Windows Times服務會自動停止,可以嘗試重新注冊一下此服務項

1.首先,運行如下命令刪除時間服務:

2.然後,再運行如下命令載入默認時間配置服務:

9. 【NTP】NTP(Network Time Protocol)配置詳解

設置NTP伺服器不難,但是NTP本身是一個很復雜的協議. 這里我們只是簡要地介紹一下實踐方法。

如果有人問你說現在幾點? 你看了看錶回答他說晚上8點了. 這樣回答看上去沒有什麼問題,但是如果問你的這個人在歐洲的話那麼你的回答就會讓他很疑惑,因為他那裡還太陽當空呢。

這里就有產生了一個如何定義時間的問題. 因為在地球環繞太陽旋轉的24個小時中,世界各地日出日落的時間是不一樣的.所以我們才有劃分時區(timezone) 的必要,也就是把全球劃分成24個不同的時區. 所以我們可以把時間的定義理解為一個時間的值加上所在地的時區(注意這個所在地可以精確到城市)。

地理課上我們都學過格林威治時間(GMT), 它也就是0時區時間. 但是我們在計算機中經常看到的是UTC. 它是Coordinated Universal Time的簡寫. 雖然可以認為UTC和GMT的值相等(誤差相當之小),但是UTC已經被認定為是國際標准,所以我們都應該遵守標准只使用UTC。

那麼假如現在中國當地的時間是晚上8點的話,我們可以有下面兩種表示方式:

20:00 CST

12:00 UTC

這里的CST是Chinese Standard Time,也就是我們通常所說的北京時間了. 因為中國處在UTC+8時區,依次類推那麼也就是12:00 UTC了。

為什麼要說這些呢?

第一,不管通過任何渠道我們想要同步系統的時間,通常提供方只會給出UTC+0的時間值而不會提供時區(因為它不知道你在哪裡).所以當我們設置系統時間的時候,設置好時區是首先要做的工作。

第二,很多國家都有夏令時,那就是在一年當中的某一天時鍾撥快一小時(比如從UTC+8一下變成UTC+9了),那麼同理到時候還要再撥慢回來.如果我們設置了正確的時區,當需要改變時間的時候系統就會自動替我們調整。

現在我們就來看一下如何在Linux下設置時區,也就是time zone

在Linux下glibc提供了我們事先編譯好的許多timezone文件, 他們就放在/usr/share/zoneinfo這個目錄下,這里基本涵蓋了大部分的國家和城市

 # ls -F /usr/share/zoneinfo

在這裡面我們就可以找到自己所在城市的time zone文件. 那麼如果我們想查看對於每個time zone當前的時間我們可以用zmp命令

# zmp  Shanghai

Shanghai  Mon Apr 23 17:54:12 2018 Shanghai

那麼我們又怎麼來告訴系統我們所在time zone是哪個呢? 

方法有很多,這里舉出兩種:

第一個就是修改/etc/localtime這個文件,這個文件定義了我么所在的local time zone.

我們可以在/usr/share/zoneinfo下找到我們的time zone文件然後軟鏈接去到/etc/localtimezone

#  ln  -sf /usr/share/zoneinfo/Asia/Shanghai      /etc/localtime

第二種方法也就設置TZ環境變數的值. 許多程序和命令都會用到這個變數的值. TZ的值可以有多種格式,最簡單的設置方法就是使用tzselect命令

#  tzselect 

# TZ='Asia/Shanghai'; export TZ

You can make this change permanent for yourself by appending the line

TZ='Asia/Shanghai'; export TZ

to the file '.profile' in your home directory; then log out and log in again.

Here is that TZ value again, this time on standard output so that you

can use the /usr/bin/tzselect command in shell scripts:

Asia/Shanghai

通過這兩個例子我們也可以發現TZ變數的值會override /etc/localtime. 也就是說當TZ變數沒有定義的時候系統才使用/etc/localtime來確定time zone. 所以你想永久修改time zone的話那麼可以把TZ變數的設置寫入/etc/profile里!

說道設置時間這里還要明確另外一個概念就是在一台計算機上我們有兩個時鍾:

一個稱之為硬體時間時鍾(RTC),還有一個稱之為系統時鍾(System Clock)

硬體時鍾是指嵌在主板上的特殊的電路, 它的存在就是平時我們關機之後還可以計算時間的原因

系統時鍾就是操作系統的kernel所用來計算時間的時鍾. 它從1970年1月1日00:00:00 UTC時間到目前為止秒數總和的值

在Linux下系統時間在開機的時候會和硬體時間同步(synchronization),之後也就各自獨立運行了

那麼既然兩個時鍾獨自運行,那麼時間久了必然就會產生誤差了,下面我們來看一個例子:

# date

Fri Jul  6 00:27:13 BST 2007

# hwclock --show

Fri 06 Jul 2007 12:27:17 AM BST  -0.968931 seconds

通過hwclock --show 命令我們可以查看機器上的硬體時間(always in local time zone), 我們可以看到它和系統時間還是有一定的誤差的, 那麼我們就需要把他們同步。

如果我們想要把硬體時間設置成系統時間我們可以運行以下命令

# hwclock --hctosys

反之,我們也可以把系統時間設置成硬體時間

# hwclock --systohc

那麼如果想設置硬體時間我們可以開機的時候在BIOS里設定.也可以用hwclock命令

# hwclock --set --date="mm/dd/yy hh:mm:ss"

如果想要修改系統時間那麼用date命令就最簡單了

# date -s "dd/mm/yyyy hh:mm:ss"  

現在我們知道了如何設置系統和硬體的時間. 但問題是如果這兩個時間都不準確了怎麼辦? 

那麼我們就需要在互聯網上找到一個可以提供我們准確時間的伺服器然後通過一種協議來同步我們的系統時間,那麼這個協議就是NTP了. 注意接下去我們所要說的同步就都是指系統時間和網路伺服器之間的同步了!

其實這個標題應該改為設置"NTP Relay Server"前的准備更加合適. 因為不論我們的計算機配置多好運行時間久了都會產生誤差,所以不足以給互聯網上的其他伺服器做NTP Server. 真正能夠精確地測算時間的還是原子鍾. 但由於原子鍾十分的昂貴,只有少部分組織擁有, 他們連接到計算機之後就成了一台真正的NTP Server. 而我們所要做的就是連接到這些伺服器上同步我們系統的時間,然後把我們自己的伺服器做成NTP Relay Server再給互聯網或者是區域網內的用戶提供同步服務。

#  yum -y install ntp

那麼第一步我們就要找到在互聯網上給我們提供同步服務的NTP Server

http://www.pool.ntp.org 是NTP的官方網站,在這上面我們可以找到離我們城市最近的NTP Server. 

NTP建議我們為了保障時間的准確性,最少找兩個個NTP Server

那麼比如在英國的話就可以選擇下面兩個伺服器

0.uk.pool.ntp.org

1.uk.pool.ntp.org

它的一般格式都是 number.country.pool.ntp.org

第二步要做的就是在打開NTP伺服器之前先和這些伺服器做一個同步,使得我們機器的時間盡量接近標准時間.

這里我們可以用ntpdate命令手動更新時間

# ntpdate 0.uk.pool.ntp.org

6 Jul 01:21:49 ntpdate[4528]: step time server 213.222.193.35 offset -38908.575181 sec

# ntpdate 0.pool.ntp.org

6 Jul 01:21:56 ntpdate[4530]: adjust time server 213.222.193.35 offset -0.000065 sec

假如你的時間差的很離譜的話第一次會看到調整的幅度比較大,所以保險起見可以運行兩次. 那麼為什麼在打開NTP服務之前先要手動運行同步呢?

1. 因為根據NTP的設置,如果你的系統時間比正確時間要快的話那麼NTP是不會幫你調整的,所以要麼你把時間設置回去,要麼先做一個手動同步

2. 當你的時間設置和NTP伺服器的時間相差很大的時候,NTP會花上較長一段時間進行調整.所以手動同步可以減少這段時間

現在我們就來創建NTP的配置文件了, 它就是/etc/ntp.conf. 我們只需要加入上面的NTP Server和一個driftfile就可以了

# vi /etc/ntp.conf

#############################

server 210.72.145.44     #中國國家授時中心的IP

server 0.uk.pool.ntp.org

server 1.uk.pool.ntp.org

fudge 127.127.1.0 stratum 0 

這行是時間伺服器的層次。設為0則為頂級,如果要向別的NTP伺服器更新時間,請不要把它設為0

driftfile /var/lib/ntp/ntp.drift 

##############################

我們就啟動NTP Server,並且設置其在開機後自動運行

# systemctl  start  ntpd

# systemctl  enable  ntpd

現在我們已經啟動了NTP的服務,但是我們的系統時間到底和伺服器同步了沒有呢? 

為此NTP提供了一個很好的查看工具: ntpq (NTP query)

我建議大家在打開NTP伺服器後就可以運行ntpq命令來監測伺服器的運行.

這里我們可以使用watch命令來查看一段時間內伺服器各項數值的變化

# watch ntpq -p

Every 2.0s: ntpq -p                                  Sat Jul  7 00:41:45 2007

remote           refid      st t when poll reach   delay   offset  jitter

===========================================================

+193.60.199.75   193.62.22.98     2 u   52   64  377    8.578   10.203 289.032

*mozart.musicbox 192.5.41.41      2 u   54   64  377   19.301  -60.218 292.411

現在我就來解釋一下其中的含義

remote: 它指的就是本地機器所連接的遠程NTP伺服器

refid: 它指的是給遠程伺服器(e.g. 193.60.199.75)提供時間同步的伺服器

st: 遠程伺服器的層級別(stratum). 由於NTP是層型結構,有頂端的伺服器,多層的Relay Server再到客戶端. 所以伺服器從高到低級別可以設定為1-16. 為了減緩負荷和網路堵塞,原則上應該避免直接連接到級別為1的伺服器的.

when: 我個人把它理解為一個計時器用來告訴我們還有多久本地機器就需要和遠程伺服器進行一次時間同步

poll: 本地機和遠程伺服器多少時間進行一次同步(單位為秒). 在一開始運行NTP的時候這個poll值會比較小,那樣和伺服器同步的頻率也就增加了,可以盡快調整到正確的時間范圍.之後poll值會逐漸增大,同步的頻率也就會相應減小

reach: 這是一個八進制值,用來測試能否和伺服器連接.每成功連接一次它的值就會增加

delay: 從本地機發送同步要求到伺服器的round trip time

offset: 這是個最關鍵的值, 它告訴了我們本地機和伺服器之間的時間差別. offset越接近於0,我們就和伺服器的時間越接近

jitter: 這是一個用來做統計的值. 它統計了在特定個連續的連接數里offset的分布情況. 簡單地說這個數值的絕對值越小我們和伺服器的時間就越精確

那麼大家細心的話就會發現兩個問題: 第一我們連接的是0.uk.pool.ntp.org為什麼和remote server不一樣? 第二那個最前面的+和*都是什麼意思呢?

第一個問題不難理解,因為NTP提供給我們的是一個cluster server所以每次連接的得到的伺服器都有可能是不一樣.

同樣這也告訴我們了在指定NTP Server的時候應該使用hostname而不是IP

第二個問題和第一個相關,既然有這么多的伺服器就是為了在發生問題的時候其他的伺服器還可以正常地給我們提供服務.那麼如何知道這些伺服器的狀態呢? 這就是第一個記號會告訴我們的信息

* 它告訴我們遠端的伺服器已經被確認為我們的主NTP Server,我們系統的時間將由這台機器所提供

+ 它將作為輔助的NTP Server和帶有*號的伺服器一起為我們提供同步服務. 當*號伺服器不可用時它就可以接管

- 遠程伺服器被 clustering algorithm  認為是不合格的NTP Server

x 遠程伺服器不可用

了解這些之後我們就可以實時監測我們系統的時間同步狀況了!

運行一個NTP Server不需要佔用很多的系統資源,所以也不用專門配置獨立的伺服器,就可以給許多client提供時間同步服務, 但是一些基本的安全設置還是很有必要的

那麼這里一個很簡單的思路就是第一我們只允許區域網內一部分的用戶連接到我們的伺服器. 第二個就是這些client不能修改我們伺服器上的時間

關於許可權設定部分

許可權的設定主要以 restrict 這個參數來設定,主要的語法為:

restrict IP地址 mask 子網掩碼 參數

其中 IP 可以是IP地址,也可以是 default ,default 就是指所有的IP

參數有以下幾個:

ignore:關閉所有的 NTP 聯機服務

nomodify:客戶端不能更改服務端的時間參數,但是客戶端可以通過服務端進行網路校時。

notrust :客戶端除非通過認證,否則該客戶端來源將被視為不信任子網

noquery :不提供客戶端的時間查詢

注意:如果參數沒有設定,那就表示該 IP (或子網)沒有任何限制!

在/etc/ntp.conf文件中我們可以用restrict關鍵字來配置上面的要求

首先我們對於默認的client拒絕所有的操作

restrict default kod nomodify notrap nopeer noquery

然後允許本機地址一切的操作

restrict 127.0.0.1

最後我們允許區域網內所有client連接到這台伺服器同步時間.但是拒絕讓他們修改伺服器上的時間

restrict 192.168.1.0 mask 255.255.255.0 nomodify

把這三條加入到/etc/ntp.conf中就完成了我們的簡單配置. NTP還可以用key來做authentication,這里就不詳細介紹了。

做到這里我們已經有了一台自己的Relay Server.如果我們想讓區域網內的其他client都進行時間同步的話那麼我們就都應該照樣再搭建一台Relay Server,然後把所有的client都指向這兩台伺服器(注意不要把所有的client都指向Internet上的伺服器). 只要在client的/etc/ntp.conf加上這你自己的伺服器就可以了。

server ntp1.leonard.com

server ntp2.leonard.com

1. 配置文件中的driftfile是什麼?

我們每一個system clock的頻率都有小小的誤差,這個就是為什麼機器運行一段時間後會不精確. NTP會自動來監測我們時鍾的誤差值並予以調整.但問題是這是一個冗長的過程,所以它會把記錄下來的誤差先寫入driftfile.這樣即使你重新開機以後之前的計算結果也就不會丟失了。

2. 如何同步硬體時鍾?

NTP一般只會同步system clock. 但是如果我們也要同步RTC(hwclock)的話那麼只需要把下面的選項打開就可以了

# vi /etc/sysconfig/ntpd

SYNC_HWCLOCK=yes

3、利用crontab讓LINUX NTP定時更新時間

註:讓linux運行ntpdate更新時間時,linux不能開啟NTP服務,否則會提示埠被佔用:

# ntpdate 1.rhel.pool.ntp.org

20 May 09:34:14 ntpdate[6747]: the NTP socket is in use, exiting

crontab文件配置簡要說明

命令格式的前一部分是對時間的設定,後面一部分是要執行的命令。時間的設定我們有一定的約定,前面五個*號代表五個數字,數字的取值范圍和含義如下:

分鍾(0-59)

小時(0-23)

日期(1-31)

月份(1-12)

星期(0-6)//0代表星期天

除了數字還有幾個個特殊的符號就是「*」、「/」和「-」、「,」,「*」代表所有的取值范圍內的數字,「/」代表每的意思,「*/5」表示每5個單位,「-」代表從某個數字到某個數字,「,」分開幾個離散的數字。

以下舉幾個例子說明問題:

每天早上6點:

0 6 * * *  command

每兩個小時:

0 */2 * * *  command

晚上11點到早上8點之間每兩個小時,早上八點:

0 23-7/2,8 * * * command

每個月的4號和每個禮拜的禮拜一到禮拜三的早上11點:

0 11 4 * 1-3 command

1月1日早上4點:

0 4 1 1 * command

3.3、設置開機自動啟動服務

運行setup或其它服務設置工具,將crond服務勾選上

# systemctl  enable crond.service

一、LINUX做為客戶端自動同步時間

如果想定時進行時間校準,可以使用crond服務來定時執行。

編輯 /etc/crontab 文件

加入下面一行:

30 8 * * * root /usr/sbin/ntpdate 192.168.0.1; /sbin/hwclock -w 

#192.168.0.1是NTP伺服器的IP地址

然後重啟crond服務   service crond restart

這樣,每天 8:30 Linux 系統就會自動的進行網路時間校準。

二、WINDOWS 需要打開windows time服務和RPC的二個服務

如果在打開windows time 服務,時報 錯誤1058,進行下面操作

1.運行 cmd 進入命令行,然後鍵入

w32tm /register  進行注冊

正確的響應為:W32Time 成功注冊。

2.如果上一步正確,用 net start "windows time" 或 net start w32time 啟動服務。

1、客戶端的日期必須要設置正確,不能超出正常時間24小時,不然會因為安全原因被拒絕更新。其次客戶端的時區必須要設置好,以確保不會更新成其它時區的時間。

2、fudge 127.127.1.0 stratum 10 

如果是LINUX做為NTP伺服器,stratum(層級)的值不能太大,如果要向上級NTP更新可以設成 2

3、LINUX的NTP伺服器必須記得將從上級NTP更新的時間從系統時間寫到硬體里去 hwclock --systohc

NTP一般只會同步system clock. 但是如果我們也要同步RTC(hwclock)的話那麼只需要把下面的選項打開就可以了

# vi /etc/sysconfig/ntpd

SYNC_HWCLOCK=yes

4、Linux如果開啟了NTP服務,則不能手動運行ntpdate更新時間(會報埠被佔用),它只能根據/etc/ntp.conf 里server 欄位後的伺服器地址按一定時間間隔自動向上級NTP伺服器更新時間。可以運行命令 ntpstat 查看每次更新間隔如:

# ntpstat

synchronised to NTP server (210.72.145.44) at stratum 2

#本NTP伺服器層次為2,已向210.72.145.44 NTP同步過

time correct to within 93 ms                                              

#時間校正到相差93ms之內 polling server every 1024 s   

#每1024秒會向上級NTP輪詢更新一次時間 

這些問題主要涉及到NTP的層(stratum)的概念,頂層是1,值為0時表示層數不明,層的值是累加的,比如NTP授時方向是A-〉B-〉C,假設A的stratum值是3,那麼B從A獲取到時間,B的stratum置為4,C從B獲取到時間,C的值被置為5。一般只有整個NTP系統最頂層的伺服器stratum才設為1。

NTP同步的方向是從stratum值較小的節點向較大的節點傳播,如果某個NTP客戶端接收到stratum比自己還要大,那麼NTP客戶端認為自己的時間比接受到的時間更為精確,不會進行時間的更新。

對於大部分NTP軟體系統來說,服務啟動後,stratum值初始是0,一旦NTP服務獲取到了時間,NTP層次就設置為上級伺服器stratum+1。對於具備衛星時鍾、原子鍾的專業NTP設備,一般stratum值初始是1。

NTPD啟動後,stratum值初始是0,此時NTPD接收到NTP請求,回復stratum欄位為0的NTP包,客戶端接收後,發現stratum欄位無效,拒絕更新時間,造成時間更新失敗。

幾分鍾後,NTPD從上級伺服器獲取到了更新,設置了正確的stratum,回復stratum欄位為n+1的NTP包,客戶端接收後,確認stratum有效,成功進行時間更新。

在NTPD上級伺服器不可用的情況下,NTPD將本機時鍾服務模擬為一個上級NTP伺服器,地址使用環回127.127.1.0,服務啟動幾分鍾後,NTPD從127.127.1.0更新了時鍾,設置了有效的stratum,客戶端接收後,成功進行時間更新。

對應的/etc/ntp.conf配置項如下:

server 127.127.1.0

fudge  127.127.1.0 stratum  1

# NTPD把本地主機的時鍾也看作外部時鍾源來處理,分配的地址是127.127.1.0

# 設置本地時鍾源的層次為1,這樣如果NTPD服務從本地時鍾源獲取時間的話,NTPD對外宣布的時間層次為2。

https://blog.csdn.net/iloli/article/details/6431757

http://blog.163.com/little_yang@126/blog/static/2317559620091019104019991/

10. NTP伺服器未聯網,怎麼配置

二、配置ntp伺服器端
restrict 0.0.0.0 mask 0.0.0.0 nomodify notrap noquery

restrict 192.168.166.0 mask 255.255.255.0 nomodify

restrict 127.0.0.1

server 210.72.145.44 prefer

server 127.127.1.0

fudge 127.127.1.0 stratum 8

driftfile /var/lib/ntp/drift

keys /etc/ntp/keys

說明:關於許可權設定部分
許可權的設定主要以 restrict 這個參數來設定,主要的語法為:
restrict IP地址 mask 子網掩碼 參數
其中 IP 可以是IP地址,也可以是 default ,default 就是指所有的IP
參數有以下幾個:
ignore:關閉所有的 NTP 聯機服務
nomodify:客戶端不能更改服務端的時間參數,但是客戶端可以通過服務端進行網路校時。
notrust :客戶端除非通過認證,否則該客戶端來源將被視為不信任子網
noquery :不提供客戶端的時間查詢
注意:如果參數沒有設定,那就表示該 IP (或子網)沒有任何限制!

三、查看NTP服務的運行狀況
#watch ntpq -p

參數說明:
remote: 它指的就是本地機器所連接的遠程NTP伺服器
refid: 它指的是給遠程伺服器(e.g. 193.60.199.75)提供時間同步的伺服器
st: 遠程伺服器的層級別(stratum). 由於NTP是層型結構,有頂端的伺服器,多層的Relay Server再到客戶端. 所以伺服器從高到低級別可以設定為1-16. 為了減緩負荷和網路堵塞,原則上應該避免直接連接到級別為1的伺服器的.
t: 這個.....我也不知道啥意思^_^
when: 我個人把它理解為一個計時器用來告訴我們還有多久本地機器就需要和遠程伺服器進行一次時間同步
poll: 本地機和遠程伺服器多少時間進行一次同步(單位為秒). 在一開始運行NTP的時候這個poll值會比較小,那樣和伺服器同步的頻率也就增加了,可以盡快調整到正確的時間范圍.之後poll值會逐漸增大,同步的頻率也就會相應減小
reach: 這是一個八進制值,用來測試能否和伺服器連接.每成功連接一次它的值就會增加
delay: 從本地機發送同步要求到伺服器的round trip time
offset: 這是個最關鍵的值, 它告訴了我們本地機和伺服器之間的時間差別. offset越接近於0,我們就和伺服器的時間越接近
jitter: 這是一個用來做統計的值. 它統計了在特定個連續的連接數里offset的分布情況. 簡單地說這個數值的絕對值越小我們和伺服器的時間就越精確

四、客戶端配置
ntpdate 192.168.166.100
LINUX做為客戶端自動同步時間
如果想定時進行時間校準,可以使用crond服務來定時執行。
編輯 /etc/crontab 文件
加入下面一行:
30 8 * * * root /usr/sbin/ntpdate 192.168.166.100; /sbin/hwclock -w #192.168.0.1是NTP伺服器的IP地址
然後重啟crond服務
service crond restart
這樣,每天 8:30 Linux 系統就會自動的進行網路時間校準。
WINDOWS 需要打開windows time服務和RPC的二個服務
如果在打開windows time 服務,時報 錯誤1058,進行下面操作
1.運行 cmd 進入命令行,然後鍵入
w32tm /register 進行注冊
正確的響應為:W32Time 成功注冊。
2.如果上一步正確,用 net start "windows time" 或 net start w32time 啟動服務。

五、報錯說明
當用ntpdate -d 來查詢時會發現導致 no server suitable for synchronization found 的錯誤的信息有以下2個:

錯誤1.Server dropped: Strata too high
在ntp客戶端運行ntpdate serverIP,出現no server suitable for synchronization found的錯誤。
在ntp客戶端用ntpdate –d serverIP查看,發現有「Server dropped: strata too high」的錯誤,並且顯示「stratum 16」。而正常情況下stratum這個值得范圍是「0~15」。
這是因為NTP server還沒有和其自身或者它的server同步上。
以下的定義是讓NTP Server和其自身保持同步,如果在/ntp.conf中定義的server都不可用時,將使用local時間作為ntp服務提供給ntp客戶端。
server 127.127.1.0 fudge

127.127.1.0 stratum 8

在ntp server上重新啟動ntp服務後,ntp server自身或者與其server的同步的需要一個時間段,這個過程可能是5分鍾,在這個時間之內在客戶端運行ntpdate命令時會產生no server suitable for synchronization found的錯誤。
那麼如何知道何時ntp server完成了和自身同步的過程呢?
在ntp server上使用命令:

# watch ntpq -p

出現畫面:

Every 2.0s: ntpq -p Thu Jul 10 02:28:32 2008
remote refid st t when poll reach delay offset jitter
==============================================================================
192.168.30.22 LOCAL(0) 8 u 22 64 1 2.113 179133. 0.001
LOCAL(0) LOCAL(0) 10 l 21 64 1 0.000 0.000 0.001

注意LOCAL的這個就是與自身同步的ntp server。
注意reach這個值,在啟動ntp server服務後,這個值就從0開始不斷增加,當增加到17的時候,從0到17是5次的變更,每一次是poll的值的秒數,是64秒*5=320秒的時間。
如果之後從ntp客戶端同步ntp server還失敗的話,用ntpdate –d來查詢詳細錯誤信息,再做判斷。

錯誤2.Server dropped: no data
從客戶端執行netdate –d時有錯誤信息如下:
transmit(192.168.30.22)
transmit(192.168.30.22)
transmit(192.168.30.22)
transmit(192.168.30.22)
transmit(192.168.30.22)
192.168.30.22: Server dropped: no data
server 192.168.30.22, port 123
.....
28 Jul 17:42:24 ntpdate[14148]: no server suitable for synchronization found
出現這個問題的原因可能有2:

1.檢查ntp的版本,如果你使用的是ntp4.2(包括4.2)之後的版本,在restrict的定義中使用了notrust的話,會導致以上錯誤。
使用以下命令檢查ntp的版本:
# ntpq -c version

下面是來自ntp官方網站的說明:
The behavior of notrust changed between versions 4.1 and 4.2.
In 4.1 (and earlier) notrust meant "Don't trust this host/subnet for time".
In 4.2 (and later) notrust means "Ignore all NTP packets that are not cryptographically authenticated." This forces remote time servers to authenticate themselves to your (client) ntpd
解決:
把notrust去掉。

2.檢查ntp server的防火牆。可能是server的防火牆屏蔽了upd 123埠。
可以用命令
#iptables INPUT -p udp -m udp --dport 123 -j ACCEPT
如果覺得麻煩就直接把防火牆停掉
#service iptables stop

來關掉iptables服務後再嘗試從ntp客戶端的同步,如果成功,證明是防火牆的問題,需要更改iptables的設置。

熱點內容
財務信息伺服器搭建 發布:2025-01-11 04:48:09 瀏覽:875
演算法實現過程 發布:2025-01-11 04:43:45 瀏覽:457
瞄準下載ftp 發布:2025-01-11 04:43:44 瀏覽:573
校園電影腳本 發布:2025-01-11 04:32:08 瀏覽:437
現在手機配置最高是什麼 發布:2025-01-11 04:30:37 瀏覽:549
學信網默認密碼是多少 發布:2025-01-11 04:25:45 瀏覽:530
jdbctemplate調用存儲過程 發布:2025-01-11 04:25:41 瀏覽:256
我的世界怎麼不用錢創建伺服器 發布:2025-01-11 04:25:39 瀏覽:283
打卡機資料庫 發布:2025-01-11 04:18:36 瀏覽:916
製作產業項目視頻腳本 發布:2025-01-11 04:10:14 瀏覽:186