ntp如何确认与服务器偏差_怎么测试linux下搭建的ntp服务器
展開(kāi)全部
三、什么是NTP
為了實(shí)現(xiàn)時(shí)間同步,我們就需要用戶(hù)NTP(Network Time Protocol)這個(gè)協(xié)議32313133353236313431303231363533e78988e69d8331333337626234。如圖1所示。簡(jiǎn)單地說(shuō),NTP是用來(lái)使系統(tǒng)和一個(gè)精確的時(shí)間源保持時(shí)間同步的協(xié)議。筆者建議管理員最好在自己管理的網(wǎng)絡(luò)中建立至少一臺(tái)時(shí)間服務(wù)器來(lái)同步本地時(shí)間。
如 果在一個(gè)公司的局域網(wǎng)中,如果讓每個(gè)員工通過(guò)手動(dòng)的方式每隔一段時(shí)間去校準(zhǔn)時(shí)間,不但不利于管理,而且校準(zhǔn)目標(biāo)時(shí)間源也不一定準(zhǔn)確。公司局域網(wǎng)絡(luò)中不同計(jì) 算機(jī)的時(shí)間偏差尤其是客戶(hù)機(jī)/服務(wù)器之間的時(shí)間偏差,就會(huì)對(duì)一些要求時(shí)間同步的服務(wù)產(chǎn)生影響。比如,為了管理方便,服務(wù)器設(shè)置了一到下班時(shí)間便 賬號(hào)過(guò)期,用戶(hù)無(wú)法訪(fǎng)問(wèn)Internet網(wǎng)絡(luò)。而如果你的電腦時(shí)間與服務(wù)器的時(shí)間不同步,當(dāng)你為你下班時(shí)間未到,正準(zhǔn)備發(fā)送郵件時(shí),或許在服務(wù)器的時(shí)間 上,你的賬號(hào)便過(guò)期了,從而導(dǎo)到無(wú)法發(fā)送郵件。解決這種問(wèn)題的方法很簡(jiǎn)單,就是建立一個(gè)能提供精確時(shí)間的服務(wù)器,局域網(wǎng)內(nèi)的所有電腦統(tǒng)一通過(guò)這臺(tái)時(shí)間服務(wù) 器進(jìn)行時(shí)間同步、校準(zhǔn)。
四、NTP服務(wù)器安裝
現(xiàn)在,我們就來(lái)介紹一下,如何在Linux系統(tǒng)下,建立一個(gè)NTP服務(wù)器吧。在本文中,我們采用的是Fedora 2操作系統(tǒng)作為例子 (其它版本Linux也可以,系統(tǒng)的配置類(lèi)似)。
使用 RPM 安裝
首先輸入如下指令
rpm -q ntp
查詢(xún)本機(jī)是否安裝了NTP軟件包。如果沒(méi)有安裝的話(huà),找到您的 Linux 的安裝光盤(pán),mount 上后,查找以NTP開(kāi)頭的軟件包名,然后安裝上去,就可以了!
rpm –ivh ntp-4.1.2-5.i386.rpm
五、NTP服務(wù)的設(shè)置
1.NTP軟件包的結(jié)構(gòu)
NTP服務(wù)的配置文件:
/etc/ntp.conf :這個(gè)是 NTP 服務(wù)的主要配置文件,不同的Linux版本文件所在的目錄可能會(huì)不同!
與NTP服務(wù)有關(guān)的Linux 系統(tǒng)文件及目錄:
/usr/share/zoneinfo:這是個(gè)目錄,在這個(gè)目錄下是規(guī)定了各主要時(shí)區(qū)的時(shí)間設(shè)定文件,例如中國(guó)大陸地區(qū)的時(shí)區(qū)設(shè)置文件是 /usr/share/zoneinfo/Asia/Shanghai 。
/etc /sysconfig/clock:這個(gè)文件是Linux 的主要時(shí)區(qū)設(shè)定文件。每次啟動(dòng)后,Linux 會(huì)自動(dòng)讀取這個(gè)文件來(lái)設(shè)定系統(tǒng)預(yù)設(shè)要顯示的時(shí)間!比如這個(gè)文件內(nèi)容為“ZONE=Asia/Shanghai”,這表示我們的時(shí)間設(shè)定使用 /usr/share/zoneinfo/Asia/Shanghai 這個(gè)文件!
/etc/localtime:這個(gè)文件是本地系 統(tǒng)的時(shí)間設(shè)定文件! 假設(shè)clock 文件里面規(guī)定了使用的時(shí)間設(shè)定文件為 /usr/share/zoneinfo/Asia/Shanghai, Linux 系統(tǒng)就會(huì)將 Shanghai那個(gè)文件復(fù)制一份為 /etc/localtime ,所以系統(tǒng)的時(shí)間顯示就會(huì)以 Shanghai 那個(gè)時(shí)間設(shè)定文件為準(zhǔn)。假設(shè)這臺(tái)主機(jī)到了美國(guó)紐約,您只要將 /etc/sysconfig/clock 里面的ZONE 設(shè)定成為ZONE="America/New_York" 并且將/usr/share/zoneinfo/America/New_York復(fù)制成為 /etc/localtime ,其它什么設(shè)置都不需要改動(dòng),系統(tǒng)的顯示時(shí)間就是美國(guó)紐約當(dāng)?shù)氐臅r(shí)間了!
與 NTP 及系統(tǒng)時(shí)間有關(guān)的執(zhí)行文件:
/bin/date: Linux 系統(tǒng)上面的日期與時(shí)間修改及輸出命令。
/sbin /hwclock:因?yàn)橹鳈C(jī)的 BIOS 時(shí)間與 Linux 系統(tǒng)時(shí)間是分開(kāi)的,所以使用 date 這個(gè)指令調(diào)整了時(shí)間之后,只是調(diào)整了linux的系統(tǒng)時(shí)間,還需要使用 hwclock 才能將修改過(guò)后的時(shí)間寫(xiě)入 BIOS。這個(gè)命令必須root用戶(hù)才能執(zhí)行 。
/usr/sbin/ntpd:NTP服務(wù)的守護(hù)進(jìn)程文件,需要啟動(dòng)它才能提供NTP服務(wù)。
/usr/sbin/ntpdate:NTP客戶(hù)端用來(lái)連接NTP服務(wù)器命令文件。
2.NTP服務(wù)端的設(shè)置
編輯 /etc/ntp.conf 文件
關(guān)于權(quán)限設(shè)定部分
權(quán)限的設(shè)定主要以 restrict 這個(gè)參數(shù)來(lái)設(shè)定,主要的語(yǔ)法為:
restrict IP地址 mask 子網(wǎng)掩碼 參數(shù)
其中 IP 可以是IP地址,也可以是 default ,default 就是指所有的IP
參數(shù)有以下幾個(gè):
ignore :關(guān)閉所有的 NTP 聯(lián)機(jī)服務(wù)
nomodify:客戶(hù)端不能更改服務(wù)端的時(shí)間參數(shù),但是客戶(hù)端可以通過(guò)服務(wù)端進(jìn)行網(wǎng)絡(luò)校時(shí)。
notrust :客戶(hù)端除非通過(guò)認(rèn)證,否則該客戶(hù)端來(lái)源將被視為不信任子網(wǎng)
noquery :不提供客戶(hù)端的時(shí)間查詢(xún)
注意:如果參數(shù)沒(méi)有設(shè)定,那就表示該 IP (或子網(wǎng))沒(méi)有任何限制!
上級(jí)時(shí)間服務(wù)器的設(shè)定
由于我們配置的NTP 服務(wù)器需要網(wǎng)絡(luò)上面時(shí)間比較準(zhǔn)確的NTP服務(wù)器來(lái)更新自己的時(shí)間,所以在我們的 NTP 服務(wù)器上面要配置一部上級(jí)時(shí)間服務(wù)器來(lái)進(jìn)行校準(zhǔn)!在 Internet 上面提供了許多時(shí)間服務(wù)器,從下面地址找一個(gè)離你最近的
http://www.eecis.udel.edu/~mills/ntp/clock1a.html
用server這個(gè)參數(shù)設(shè)定上級(jí)時(shí)間服務(wù)器,語(yǔ)法為:
server IP地址或域名 [prefer]
IP地址或域名就是我們指定的上級(jí)時(shí)間服務(wù)器,如果 Server 參數(shù)最后加上 prefer,表示我們的 NTP 服務(wù)器主要以該部主機(jī)時(shí)間進(jìn)行校準(zhǔn)。
解決NTP服務(wù)器校準(zhǔn)時(shí)間時(shí)的傳送延遲
使用driftfile參數(shù)設(shè)置:
driftfile 文件名
在與上級(jí)時(shí)間服務(wù)器聯(lián)系時(shí)所花費(fèi)的時(shí)間,記錄在driftfile參數(shù)后面的文件內(nèi)。
注意: driftfile 后面接的文件需要使用完整的路徑文件名,不能是鏈接文件,并且文件的權(quán)限需要設(shè)定成 ntpd守護(hù)進(jìn)程可以寫(xiě)入。
ntp.conf文件舉例:
設(shè)置要求:不對(duì) Internet 提供服務(wù),僅對(duì)內(nèi)部子網(wǎng) 192.168.0.0/24 提供服務(wù),NTP 服務(wù)器的上級(jí)時(shí)間主機(jī)為:clock.nc.fukuoka-u.ac.jp和ntp.nasa.gov,內(nèi)部子網(wǎng)的客戶(hù)端不能修改NTP服務(wù)器的時(shí)間參數(shù)。
在ntp.conf中增加以下內(nèi)容:
restrict default ignore # 關(guān)閉所有的 NTP 要求封包
restrict 127.0.0.1 # 開(kāi)啟內(nèi)部遞歸網(wǎng)絡(luò)接口 lo
restrict 192.168.0.0 mask 255.255.255.0 nomodify #在內(nèi)部子網(wǎng)里面的客戶(hù)端可以 進(jìn)行網(wǎng)絡(luò)校時(shí),但不能修改NTP服務(wù)器的時(shí)間參數(shù)。
server 133.100.9.2 prefer #用133.100.9.2做上級(jí)時(shí)間服務(wù)器
server 198.123.30.132 #198.123.30.132作為上級(jí)時(shí)間服務(wù)器參考
restrict 133.100.9.2 #開(kāi)放server 訪(fǎng)問(wèn)我們ntp服務(wù)的權(quán)限
restrict 198.123.30.132
driftfile /var/lib/ntp/drift
保存退出后。啟動(dòng)NTP服務(wù)
service ntpd start
如果想每次系統(tǒng)啟動(dòng),NTP服務(wù)自動(dòng)啟動(dòng),請(qǐng)輸入下面命令: chkconfig -level 35 ntpd on 注意:
1.NTP服務(wù)的端口是123,使用的是udp協(xié)議,所以NTP服務(wù)器的防火墻必須對(duì)外開(kāi)放udp 123這個(gè)端口。
2.Ntpd啟動(dòng)的時(shí)候通常需要一段時(shí)間進(jìn)行時(shí)間同步,所以在ntpd剛剛啟動(dòng)的時(shí)候還不能正常提供時(shí)鐘服務(wù),最長(zhǎng)大概有5分鐘吧,如果超過(guò)了這個(gè)時(shí)間請(qǐng)檢查一下您的配置文件。
六、NTP客戶(hù)端的使用
Linux系統(tǒng)
在Linux 上面進(jìn)行網(wǎng)絡(luò)校時(shí)非常簡(jiǎn)單,執(zhí)行 ntpdate 即可:
ntpdate 192.168.0.1 #192.168.0.1是NTP服務(wù)器的IP
不要忘了使用hwclock命令,把時(shí)間寫(xiě)入bios
hwclock -w
如果想定時(shí)進(jìn)行時(shí)間校準(zhǔn),可以使用crond服務(wù)來(lái)定時(shí)執(zhí)行。
編輯 /etc/crontab 文件
加入下面一行:
30 8 * * * root /usr/sbin/ntpdate 192.168.0.1; /sbin/hwclock -w #192.168.0.1是NTP服務(wù)器的IP地址
然后重啟crond服務(wù)
service crond restart
這樣,每天 8:30 Linux 系統(tǒng)就會(huì)自動(dòng)的進(jìn)行網(wǎng)絡(luò)時(shí)間校準(zhǔn)。
Windows 系統(tǒng)
在 Windows XP上面使用NTP進(jìn)行時(shí)間校準(zhǔn)也很簡(jiǎn)單:
雙擊桌面任務(wù)欄上的時(shí)間,彈出“日期和時(shí)間”屬性窗口,如圖所示:
選擇Internet時(shí)間,在服務(wù)器中填入你的NTP服務(wù)器的IP地址或者域名,然后點(diǎn)擊立即更新,您的系統(tǒng)時(shí)間就會(huì)立即更新。如果想定時(shí)更新,把左上角的自動(dòng)與Internet時(shí)間服務(wù)器同步選中,然后點(diǎn)擊右下角的應(yīng)用即可。
yy-2-3.tif
如 果不是Windows XP系統(tǒng),但是NTP服務(wù)器同時(shí)也是samba服務(wù)器的話(huà),則對(duì)Windows來(lái)說(shuō),不需要安裝任何時(shí)間同步軟件,因?yàn)閃indows客戶(hù)端可以用net time\\時(shí)間服務(wù)器IP或服務(wù)器netbios名/set/yes來(lái)同步。可以把該命令放在開(kāi)始菜單的啟動(dòng)項(xiàng)中,啟動(dòng)windows時(shí)自動(dòng)同步。
由于net time命令是利用Netbios over TCP/IP協(xié)議來(lái)同步時(shí)間,所以NTP服務(wù)器不同時(shí)是samba 服務(wù)器的話(huà),就需要Windows客戶(hù)端安裝時(shí)間同步軟件。這方面的軟件很多,使用也很簡(jiǎn)單,讀者可以上網(wǎng)查找一下。
已贊過(guò)
已踩過(guò)<
你對(duì)這個(gè)回答的評(píng)價(jià)是?
評(píng)論
收起
總結(jié)
以上是生活随笔為你收集整理的ntp如何确认与服务器偏差_怎么测试linux下搭建的ntp服务器的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 如何向虚拟服务器传送文件,如何往虚拟机内
- 下一篇: linux开启514端口,查看linux