نصب و پیکربندی سرور time ntp در لینوکس. پیکربندی همگام سازی زمان NTP با استفاده از Group Policy ntp پروتکل همگام سازی زمان

در سیستم عامل های ویندوز ، Windows Time Service یا همان w32time مسئول هماهنگی زمان است. این سرویس کار سرور و قطعات سرویس گیرنده را فراهم می کند. به عبارت دیگر ، همان رایانه می تواند همزمان به عنوان سرور و سرویس گیرنده عمل کند.

Windows Time Service فاقد رابط گرافیکی است. پیکربندی از طریق CMD با استفاده از ابزار w32tm ، ویرایش دستی رجیستری یا از طریق سیاست های گروه انجام می شود.

ابزار w32tm پارامترهای بخش را تغییر می دهد

HKLM \ SYSTEM \ CurrentControlSet \ Services \ W32Time

خط مشی های گروه بخشی را در

HKLM \ SOFTWARE \ Politics \ Microsoft \ W32Time

تنظیمات ایجاد شده توسط Group Policy بر تنظیمات پیش فرض اولویت دارند.

محتویات زیرمجموعه پارامترهای یک کامپیوتر واقع در یک گروه کاری را در نظر بگیرید

و برای کامپیوتر دامنه

کلید NtpServer لیستی از سرورهای زمانی را که باید با آنها همگام سازی شود ، تعریف می کند. آدرس پیش فرض time.windows.com ، 0x9 است. هنگام تعیین بیش از یک سرور زمانی ، آدرس ها باید با فاصله از هم جدا شوند.

پارامتر 0x9 حاصل جمع 0x1 و 0x8 است.

0x1 - SpecialInterval ، استفاده از یک فاصله خاص نظرسنجی.
0x2 - حالت UseAsFallbackOnly.
0x4 - حالت فعال متقارن SymmetricActive ، متقارن.
0x8 - مشتری ، درخواست را در حالت مشتری ارسال می کند.

فاصله ویژه نظرسنجی در کلید نشان داده شده است

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ W32Time \ TimeProviders \ NtpClient \ SpecialPollInterval

و 3600 ثانیه است. یعنی همگام سازی هر ساعت اتفاق می افتد.

کلید Type نوع همگام سازی را تعریف می کند و دارای معانی زیر است:

NoSync - سرویس زمان با منابع دیگر هماهنگ نیست.
NTP Time Service با سرورهای مشخص شده در قسمت رجیستری NtpServer هماهنگ می شود.
NT5DS Time Service همگام سازی را بر اساس سلسله مراتب دامنه انجام می دهد.
AllSync - سرویس زمان از همه مکانیسم های همگام سازی موجود استفاده می کند.

در مورد رایانه از یک گروه کاری ، از نوع NTP استفاده می شود ، یعنی زمان با سرور time.windows.com مشخص شده در کلید NtpServer هماهنگ می شود.

کامپیوتر دامنه از نوع NT5DS استفاده می کند. در این حالت ، همگام سازی زمان با کنترل کننده دامنه ای که رایانه بر روی آن مجاز است ، رخ می دهد. کنترل کننده ها زمان خود را با کنترل کننده ای که نقش PDC Emulator را دارد هماهنگ می کنند. صاحب نقش شبیه ساز PDC همچنین از نوع NT5DS استفاده می کند و زمان خود را با ساعت محلی دریافت شده از مدار CMOS واقع در مادربرد هماهنگ می کند. نکته منفی این است که زمان دریافت شده از مدار CMOS نسبت به زمان واقعی دائماً "خارج" می شود. برای جلوگیری از این اتفاق ، در کنترل کننده ریشه با نقش شبیه ساز PDC ، نوع را به NTP تغییر دهید و لیستی از سرورهای زمان خارجی را در NtpServer مشخص کنید.

در کنترل کننده دامنه ریشه ، با نقش شبیه ساز PDC ، CMD را باز کرده و دستور را اجرا کنید

C: \> w32tm / config /manualpeerlist:"0.ru.pool.ntp.org،0x9 1.ru.pool.ntp.org ، 0x9 2.ru.pool.ntp.org ، 0x9 3.ru.pool. ntp.org ، 0x9 "/ syncfromflags: MANUAL / به روز رسانی

/ manualpeerlist - لیستی از آدرسهای منبع زمان را مشخص می کند. این لیست به مقدار کلید NtpServer از قبل شناخته شده اضافه خواهد شد.

/ syncfromflags - منبع همگام سازی را مشخص می کند. این پارامتر مقدار کلید Type را تغییر می دهد. گزینه های احتمالی:

MANUAL - همگام سازی با گره ها از یک لیست مشخص شده دستی. همان NTP است.
DOMHIER - هماهنگ سازی با کنترل کننده دامنه Active Directory در سلسله مراتب دامنه. همان NT5DS است.
نه - همگام سازی وجود ندارد. همان NoSync.
ALL - همگام سازی با گره های دستی و گره های دامنه. همان AllSync است.

/ update - به سرویس زمان اعلام می کند که پیکربندی برای اعمال تغییرات تغییر کرده است.

اینکه آیا کامپیوتر می تواند به عنوان سرور زمان عمل کند ، با کلید زیر تعیین می شود

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ W32Time \ TimeProviders \ NtpServer \ Enabled

برای کنترل کننده ، این کلید برای کامپیوتر دارای مقدار 1 است. به عبارت دیگر ، هر کنترل کننده دامنه به عنوان یک سرور زمان عمل می کند.

کلید مسئول چگونگی تنظیم زمان سرویس بر روی مشتری است.

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ W32Time \ Config \ MaxAllowedPhaseOffset

برای یک کامپیوتر در یک گروه کاری ، مقدار کلید MaxAllowedPhaseOffset برابر با 1 ثانیه است. کامپیوتر دامنه 300 ثانیه زمان دارد. اگر اختلاف زمان بین کلاینت و سرور زمان از مقدار کلید MaxAllowedPhaseOffset بیشتر باشد ، در این صورت سرویس زمان بلافاصله زمان کارخواه را به زمان تعیین شده در سرور زمان تغییر می دهد. اگر اختلاف زمان کمتر باشد ، ساعت به تدریج تنظیم می شود. این امر برای جلوگیری از قطع خدمات حساس به زمان است. از طرف دیگر ، 300 ثانیه برای پروتکل Kerberos 5 دقیقه یا حداکثر اختلاف زمانی مجاز است.

برای تغییر تنظیمات سرویس زمان از طریق خط مشی های گروه ، باید یک فیلتر WMI ایجاد کنید تا خط مشی را با کنترل کننده دامنه ریشه ، با نقش شبیه ساز PDC هدف قرار دهید. برای این کار ، Snap-in Group Policy Management را باز کنید ، روی بخش WMI Filters کلیک راست کرده و New را انتخاب کنید. در نام فیلد باید نام فیلتر را بنویسید ، به عنوان مثال "PDC Emulator". در مرحله بعدی ، باید روی دکمه "افزودن" کلیک کنید و یک پرس و جو WMI وارد کنید

* از Win32_ComputerSystem که DomainRole = 5 است را انتخاب کنید

بیایید یک خط مشی ایجاد کنیم ، روی قسمت "Domain Controllers" کلیک راست کرده و "Create Group Policy Object ..." را انتخاب کنیم ، بگذارید نام آن را "PDC Emulator Time Sources" بگذاریم. بر روی شی created ایجاد شده کلیک راست کرده و "اصلاح" را انتخاب کنید. بیایید بخش "پیکربندی رایانه -> خط مشی ها -> الگوهای مدیریتی -> سیستم -> Windows Time Service-> ارائه دهندگان زمان" را باز کنیم. بیایید گزینه "پیکربندی Windows NTP مشتری" را انتخاب کنیم. در قسمت NtpServer ، آدرس های سرورهای زمانی را وارد کنید

0.ru.pool.ntp.org ، 0x9 1.ru.pool.ntp.org ، 0x9 2.ru.pool.ntp.org ، 0x9 3.ru.pool.ntp.org ، 0x9

در قسمت Type ، مقدار "NTP" را انتخاب کنید ، سپس "OK" را کلیک کنید و پنجره "Group Policy Management Editor" را ببندید.

پس از آن ، شما باید سیاست ایجاد شده "PDC Emulator Time Sources" و در قسمت "فیلتر WMI" فیلتر "PDC Emulator" قبلا ایجاد شده را انتخاب کنید

عیب یابی

می توانید هماهنگ سازی زمان را با دستور مجبور کنید

C: \> w32tm / همگام سازی مجدد

با دستور می توانید منبع زمان فعلی را مشاهده کنید

C: \> w32tm / کوئری / منبع

این دستور منبع زمان فعلی ، زمان همگام سازی و سایر اطلاعات را نشان می دهد.

C: \> w32tm / query / status

این دستور داده ها را برای تمام منابع زمانی نشان می دهد

C: \> w32tm / کوئری / همتا

اختلاف زمان بین رایانه و منبع زمان را می توان با دستور مشاهده کرد

C: \> w32tm / مانیتور

برای مشاهده پیکربندی فعلی ، از دستور استفاده کنید

C: \> w32tm / کوئری / پیکربندی

با دستور می توانید سرویس زمان را دوباره راه اندازی کنید

C: \> خالص توقف w32time && خالص شروع w32time

اگر مشکلی پیش آمد ، می توانید سرویس زمان را دوباره ثبت کنید. با این کار کل شعبه رجیستری مربوط به سرویس زمان ایجاد می شود.

C: \> net stop w32time c: \> w32tm / لغو ثبت نام c: \> w32tm / ثبت نام c: \> شروع خالص w32time

برای همگام سازی سریع زمان با یک میزبان خاص ، می توانید از این دستور استفاده کنید

C: \> NET TIME \\ DC1.4SKILL.LOC / SET / Y

اگر بدون تعیین میزبانی که می خواهید زمان را با آن همگام کنید ، دستور را روی رایانه دامنه اجرا کنید ، همگام سازی با سرور زمان دامنه انجام می شود.

در اینترنت می توانید دریایی کامل از کتابچه های راهنما برای راه اندازی سرور time - ntpd پیدا کنید ، اما طنز این است که 95٪ از آنها یا کاملاً درست نیستند و نویسندگان حتی این موضوع را متوجه نشده اند ، یا نمی دانند اطلاعات لازم را ارائه دهید. در مرحله بعدی ، من به شما می گویم که چگونه یک سرور NTP تحت لینوکس در یک شبکه محلی سازماندهی کنید ، که باعث هماهنگ شدن زمان آن با سرورهای موجود در اینترنت می شود و دستگاه های موجود در شبکه محلی از قبل زمان را با آن هماهنگ می کنند.

کمی قبل از تاریخ. همانطور که انتظار می رفت ، همه چیز به طور غیر منتظره ای شروع شد ، سروری که شب قبل راه اندازی کردم ، دفعه بعدی که بارگیری شد ، یخ زد. من "هوشمندانه" فکر کردم و وارد لاگ ها شدم ... در نتیجه ، سرور در سرویس ntpd مقصر بود ، که به دلیل تنظیمات نادرست شبکه ، نمی توانست برای هماهنگ سازی با سرور خارجی تماس بگیرد. پس از بررسی اسکریپت راه اندازی ، با یک مطلب جالب روبرو شدم:

start () (readconf؛ if [-n "$ dostep"]؛ سپس gprintf $ "زمان همگام سازی برای ntpd:" # سخت تلاش کنید ، برخی از شبکه ها / ماشین های کند / ... کمی طول می کشد تا DNS محلی تلاش کند = 7 در حالی که [$ tryleft -gt 0]؛ do / usr / sbin / ntpdate -s -b $ NTPDATE_OPT $ tickers RETVAL = $؟ [$ RETVAL -eq 0] && break tryleft = $ (($ tryleft-1)) خواب 1 انجام شده است بازنشانی tryleft [$ RETVAL -eq 0] && موفقیت || شکست echo if [$ RETVAL -eq 0]؛ سپس ["$ SYNC_HWCLOCK" = "بله"] && sync_hwclock else OPTIONS = "$ OPTIONS -g" fi other # - g می تواند grep را برای سرورهای زمانی # جایگزین کند زیرا به ntpd اجازه می دهد یکبار محدودیت 1000 خود را نقض کند. OPTIONS = "$ OPTIONS -g" fi # شروع daemons. gprintf $ "Starting $ prog:" daemon ntpd $ OPTIONS RETVAL = $؟ echo [$ RETVAL -eq 0] && touch / var / lock / subsys / ntpd Return $ RETVAL)

و اکنون به خط با شماره 8 توجه کنید. این آغاز چرخه ای است که در آن تا 7 برابر زمان هماهنگی اولیه و درشت تلاش می شود. همه چیز خوب است ، اما اگر شبکه یا DNS شما به درستی پیکربندی نشده باشد ، باعث می شود که سرور به مدت 7 * ثانیه (1 + زمان بررسی در دسترس بودن DNS ، حدود 5 ثانیه) ثانیه یخ بزند. به طور کلی ، انتظار یک دقیقه به وضوح مناسب من نبود ، بنابراین بیایید شروع کنیم.

تنظیم همگام سازی اولیه و درشت

در پرونده شگفت انگیز پرونده / etc / ntp / step ، نام سرورهایی که با آنها تنظیمات اولیه ، خشن (صدها میلی ثانیه) انجام می شود ، ذخیره می شود. اگر مطمئن هستید که همیشه به اینترنت دسترسی خواهید داشت ، می توانید نام سرورها را در آن لیست کنید ، به عنوان مثال:

اما اگر در زمان بارگیری اولیه سرور ارتباطی به اینترنت ندارید ، در شرایط خاص ، این امر باعث یخ زدن کنسول برای مدت زمان طولانی می شود. به همین دلیل تمام سوابق را از آنجا پاک کردم. در پایان ، می توانم بصورت دستی زمان را تنظیم کنم. همچنین گزینه ای برای بازی با گزینه ها و نیشگون گرفتن و کشیدن اسکریپت راه اندازی وجود دارد ، اما این روش من نیست. بنابراین ، ما مستقیماً به راه اندازی یک سرور NTP کامل ادامه می دهیم که زمان آن را با سرورهای عمومی در اینترنت همگام سازی کرده و در صورت لزوم آن را در اختیار شرکت کنندگان در شبکه محلی قرار دهید.

یک وظیفه:یک سرور NTP در شبکه محلی سازماندهی کنید ، که زمان آن را با اینترنت همگام سازی می کند و دستگاه های موجود در شبکه محلی از قبل زمان را با آن هماهنگ می کنند.
توزیع: Mandriva 2010.2 رایگان نسخه Ntpd: 4.2.4p8

پیکربندی NTPD

دنیای لینوکس بسیار عالی است ، تمام تنظیمات موجود در آن ویرایش ساده پرونده های پیکربندی است. ntpd از این نظر مستثنی نیست. بنابراین اگر هنوز سرور ntpd ندارید ، آن را نصب کنید:

کسانی که مایل هستند می توانند از منبع کامپایل یا آن را به روش دیگری نصب کنند ، موارد پرداخت شده من شامل نشان دادن چگونگی تنظیم این معجزه است ، زیرا شما می توانید دریایی کامل از کتابچه های راهنما در مورد راه اندازی ntpd در اینترنت پیدا کنید ، اما طنز این است که 95٪ از آنها یا کاملاً درست نیستند (و نویسندگان حتی هنگام تماس با وضعیت ها نیز متوجه این موضوع نمی شوند) یا اطلاعات لازم را ارائه نمی دهند. بنابراین فایل پیکربندی در /etc/ntp.conf ذخیره می شود ، حداقل تنظیمات چیزی شبیه به این است:

سرور 0.ru.pool.ntp.org سرور 1.ru.pool.ntp.org سرور 2.ru.pool.ntp.org سرور 3.ru.pool.ntp.org

هر خط به یک سرور اشاره می کند (لیست سرورها را می توان در اینجا یافت http://www.pool.ntp.org) که هماهنگی با آنها انجام می شود. چهار خط از سرور ، به ترتیب ، چهار سرور. اگرچه در حقیقت ، در این مثال ، این کاملاً درست نیست. هر ورودی به یک مجموعه (گروه) از سرورها اشاره دارد. هنگام تماس ، مثلاً با آدرس 2.ru.pool.ntp.org ، 1 آدرس IP سرور انتخاب می شود که همگام سازی با آن انجام می شود. انطباق 1 بار در ساعت به روز می شود. حالا برای یک مثال ساده تر. در کل 4 جعبه تماشا داریم. ما از هر جعبه 1 ساعت می گیریم و به طور تصادفی خارج می کنیم ، در کل 4 ساعت وقت می گیریم که با این کار زمان خود را بررسی خواهیم کرد. در عرض یک ساعت ، هر زمان که زمان را بررسی می کنیم ، همان ساعت را می گیریم. یک ساعت دیگر ، اگر دوباره به این جعبه ها برگردیم ، ساعت دیگری را بیرون می آوریم. بنابراین ، زمان ما به طور مداوم در برابر ساعت های مختلف بررسی می شود ، و اگر معلوم شود که بعضی از آنها کار نمی کنند ، پس هیچ چیز وحشتناکی اتفاق نمی افتد ، زیرا در 1 ساعت ، ساعت های محلی ما خیلی همگام نیستند. خوب ، بله حواسمان پرت است ، ادامه خواهیم داد. قبل از شروع سرور ntpd ، باید تنظیمات اولیه و خشن را انجام دهید. به راحتی می توانید زمان را با دستان خود تنظیم کنید یا می توانید دستور را اجرا کنید (البته اگر اتصال ما به اینترنت درست انجام شود):

پس از همگام سازی تقریباً زمان ، می توانید سرویس اصلی را شروع کنید (در هر صورت ، آن را مجدداً راه اندازی کنید):

سپس دستور را اجرا می کنیم:

در نتیجه ، شما باید چیزی شبیه به این را ببینید:

هنگامی که نظرسنجی به تأخیر می افتد ، جبران خنثی را تغییر می دهد ======================================= ================================================== ===== mx.kr-pro.ru 62.149.0.30 2 u 26 64 1 22.416 77.711 0.001 phobos.bsys-net 192.36.143.151 2 u 25 64 1 32.994 64.937 0.001 webhost.mitht.r 77.105.134.138 3 u 25 64 1 68.134 37.119 0.001 hornet.itconnec 77.233.172.7 3 u 24 64 1 58.604 38.047 0.001

کمی توضیح در مورد اینکه چیست چیست. از راه دور - FQDN یا آدرس IP سرور ؛ refid - آدرس IP سرور که در حال حاضر سرور با آن از ستون راه دور همگام سازی می شود. st - قشر سرور ؛ t - حالت عملکرد سرور: "u" - unicast ، "m" - چندپخشی ، "b" - پخش شده ، "-" - manycast؛ چه زمانی - از آخرین پاسخ سرور در چند ثانیه گذشته است ، یا "-" اگر سرور هنوز پاسخی نداده است (به احتمال زیاد "از بین رفته است" و زمان آن فرا رسیده است که اطلاعات مربوط به آن را از پرونده پیکربندی حذف کنید) ؛ نظرسنجی - فاصله نظرسنجی سرور در چند ثانیه (پس از شروع مقدار کمی برای همگام سازی سریع تر ، مقدار با گذشت زمان افزایش می یابد) ؛ رسیدن - وضعیت هشت تلاش گذشته برای درخواست زمان از سرور در نمایش هشت (در صورت تلاش موفقیت آمیز ، بیت مربوطه تنظیم می شود) ؛ تأخیر - تأخیر پاسخ سرور در چند ثانیه ؛ جبران - مهمترین مقدار - تفاوت بین زمان محلی و زمان در سرور (با گذشت زمان ، مقدار کاهش می یابد ، زیرا زمان دقیق تر می شود) ؛ jitter - واریانس ، jitter فاز (مقادیر پایین تر هماهنگ سازی دقیق تری را ایجاد می کنند). ما 10 دقیقه منتظریم دستور را تکرار می کنیم و می بینیم:

هنگامی که نظرسنجی به تأخیر می افتد ، جبران خنثی را تغییر می دهد ======================================= ===================================== * mx.kr-pro.ru 62.117.76.142 2 u 5 64 377 20.558 38.662 19.060 + phobos.bsys-net 192.36.143.151 2 u 6 64 377 17.726 38.447 15.132 -webhost.mitht.r 77.105.134.138 3 u 4 64 377 66.744 13.451 16.257 + hornet.itconn7 77.233.172. 377 57.291 43.556 13.327

بله ، اینجاست ، انواع نمادهای اضافی ظاهر شده اند و معنی آنها این است: "*" - سروری که همگام سازی در حال حاضر با آن انجام می شود ، "#" - سرور برای هماهنگی انتخاب شده است ، اما فاصله تا آن بیش از حداکثر ممکن است ، "؟" - سرور برای همگام سازی انتخاب شده است و از سیگنال PPS استفاده می کند ، "+" - سرور به لیست سرورهای انتخاب شده برای همگام سازی اضافه شده است ، "x" - سرور از الگوریتم نادرستی استفاده می کند ، "." - سرور از انتهای لیست سرورهای انتخاب شده برای همگام سازی انتخاب شده است ، "-" - سرور توسط الگوریتم گروه بندی رد شد ، یک فضای - سرور لایه بسیار بالایی دارد و / یا قابل تأیید نیست ؛ اکنون ، به روشی ساده ، اگر "+" ، "-" ، "*" را مشاهده کنیم ، همگام سازی آغاز شده است. جبران - انحراف از زمان ما و زمان سرور از راه دور ، اگر مقدار ، مثلاً بیش از 100 باشد ، در واقع همگام سازی اتفاق نیفتاده است. در برخی منابع ، تصویر زیر را مشاهده می کنید:

هنگامی که نظرسنجی به تأخیر می افتد ، جبران خنثی را تغییر می دهد ======================================= ==================================== 172.22.128.8 93.185.187.89 3 u 142 256 377 3.906 -450.41 61.937 195.200.2.216.16 .INIT. 16 u - 64 0 0.000 0.000 0.000 ams1.x31.com .INIT. 16 u - 64 0 0.000 0.000 0.000 0.000 mail2.mgts.by .INIT. 16 شما - 64 0 0.000 0.000 0.000 * محلی (1). LOCL. 3 لیتر 13 64 377 0.000 0.000 3.906

می بینیم که نیمی از سرورها (2 ، 3 ، 4) به هیچ وجه کار نمی کنند و در واقع با سرور محلی و از 172.22.128.8 کار می کنند. ما به مقدار افست نگاه می کنیم ، که می گوید اصلاً هماهنگی وجود ندارد! از لیست ، فقط می توان نتیجه گرفت که سرور با خودش هماهنگ است و زمان آن ارتباط چندانی با سرور واقعی ندارد. مراقب باشید ، نگذارید نای ... شما را فریب دهد :) ما می توانیم در این مورد متوقف شویم ، اما اکنون ، همانطور که آنها می گویند ، ما کار را پیچیده می کنیم. ما به سرور خود نیاز داریم تا منبع زمان شبکه محلی باشد ، اما در عین حال هیچ کس نمی تواند با سرور شما اشتباه کند. مشکل چیه؟ واقعیت این است که برای همگام سازی عادی ، حتی اگر قصد ندارید به کسی بخواهید زمان را با شما همگام سازی کند ، باید 123 پورت باز داشته باشید. پس از مطالعه بسیاری از کتابچه های راهنما و یک روز اتلاف وقت ، این همان چیزی است که من وارد /etc/ntp.conf شد:

01 # سرورهای NPS عمومی ، از زمان 02 سرور 0.ru.pool.ntp.org 03 سرور 1.ru.pool.ntp.org 04 سرور 2.ru.pool.ntp.org 05 سرور 3.ru.pool استفاده می کنیم .ntp.org 06 server 0.europe.pool.ntp.org 07 server 1.europe.pool.ntp.org 08 09 # برای سایر دسترسی های دیگر 10 رد شده است به طور پیش فرض نادیده بگیرید 11 12 # سرورهای NPS عمومی نمی توانند محلی ما را کنترل کنند سرور 13 محدود کردن 0.ru.pool.ntp.org nomodify notrap 14 محدود کردن 1.ru.pool.ntp.org nomodify notrap 15 محدود كردن 2.ru.pool.ntp.org nomomify notrap 16 محدود كردن 3.ru.pool.ntp. org nomodify notrap 17 limit 0.europe.pool.ntp.org nomodify notrap 18 limit 1.europe.pool.ntp.org nomodify notrap 19 20 # سرور ما سرویس NTP را برای شبکه محلی ارائه می دهد ، 21 # و مشتریان نمی توانند ما را کنترل کنند سرور محلی 22 محدود کردن 192.168.0.0 ماسک 255.255.0.0 nomodify notrap nopeer 23 24 # نیاز به همگام سازی loopback ، بدون آن کار نمی کند 25 محدود کردن 127.0.0.1 notomify notrap

ما با دقت به آن می پردازیم. سرور ما با 6 استخر سرور خارجی ، خطوط 02 تا 07 هماهنگ شده است. خط 10 ، ما هرکسی را از انجام کاری با سرور خود منع می کنیم. اکنون ما باید برای سرورهایی که سرور ما با آنها همگام سازی می شود ، خطوط 13 تا 18 را استثنا کنیم. در عین حال ، پارامترهای notop notomified نشان می دهد که تغییر وضعیت سرور ما و ارسال پیام های استثنا به سرورهای خارجی ممنوع است. ، یعنی به طوری که هیچ یک از این سرورها کاری انجام نداده اند. خط 22 ، ما به شرکت کنندگان شبکه محلی اجازه می دهیم تا زمان را با سرور ما هماهنگ کنند ، اما در عین حال محدودیتی را نیز به شما معرفی می کنیم. اکنون مهمترین خط 25 است ، فرض خواهیم کرد که این یک حلقه محلی است. بدون آن کار نمی کند. در نتیجه ، سرور ما با سرورهای خارجی همگام سازی می شود ، در حالی که خودش یک سرور است ، اما فقط برای شبکه محلی ما دسترسی به همه افراد محروم است. سرویس را دوباره راه اندازی کنید:

بیایید برویم یک دود بخوریم ، چای ، قهوه بنوشیم (موارد لازم را زیر خط بکشیم) ، و سپس دستور را اجرا کنیم:

هنگامی که نظرسنجی به تأخیر می افتد ، جبران خنثی را تغییر می دهد ======================================= ===================================== * mx.kr-pro.ru 62.117.76.142 2 شما 5 64 377 20.558 38.662 19.060 + phobos.bsys-net 192.36.143.151 2 u 6 64 377 17.726 38.447 15.132 -webhost.mitht.r 77.105.134.138 3 u 4 64 377 66.744 13.451 16.257 + hornet.itconnec 77.2 1117 64 377 57.291 43.556 13.327 + sinister.wzw.tu 129.69.1.153 2 u 1 64 377 80.064 48.067 14.367 + time.sunrise.ne 193.192.225.90 3 u 3 64 377 72.448 22.575 14.584

می بینیم که سرور ما همزمان است ، انحراف از 50 میلی ثانیه بیشتر نیست. تنظیمات NTPD برای همه سیستم های Xnix تقریباً یکسان است و فقط در نحوه شروع تفاوت اساسی دارد. من به همه توصیه می کنم مقاله ای را که در آن گزینه پیکربندی FreeBSD شرح داده شده است نیز مطالعه کنند. http://www.sergeysl.ru/freebsd-ntpd/ همین.

روز خوب ، مهمانان و خوانندگان عادی. به تدریج از مبانی اساسی به سمت مطالعه عمیق تر لینوکس حرکت می کنم. امروز می خواهم در نظر بگیرم عملکرد پروتکل ntp، و همچنین تنظیمات سرورهای زمانی در Linux(سرور ntp)... بنابراین بیایید با تئوری شروع کنیم.

پروتکل NTP

پروتکل زمان شبکه (NTP)- یک پروتکل شبکه برای همگام سازی ساعت داخلی رایانه با استفاده از شبکه هایی با تأخیر متغیر ("عرض کانال" / کیفیت را بخوانید).

NTP برای کار خود استفاده می کند پروتکل UDP و پورت 123.

نسخه فعلی پروتکل است NTP 4. NTPاز یک سیستم سلسله مراتبی استفاده می کند "سطح ساعتی"(به آنها نیز گفته می شود قشر). سطح 0 (یا لایه 0)- اینها معمولاً دستگاههایی هستند که ساعتهای اتمی (مولکولی ، کوانتومی) ، ساعتهای GPS یا ساعتهای رادیویی هستند. این دستگاه ها معمولاً در شبکه جهانی منتشر نمی شوند ، اما مستقیماً به آن متصل می شوند سرورهای زمانی سطح 1از طریق پروتکل RS-232 (با فلش های زرد در تصویر نشان داده شده است). سطح 1با ساعتهای با دقت بالا هماهنگ شده است سطح 0معمولاً به عنوان منبع سرورها کار می کنند سطح 2. سطح 2هماهنگ شده با یکی از ماشین آلات سطح 1، و همچنین همگام سازی ممکن با سرورهای سطح آن. سطح 3مشابه دوم کار می کند. معمولاً سرورهای سطح دوم و پایین در شبکه منتشر می شوند. پروتکل NTPتا 256 سطح را پشتیبانی می کند. همچنین می خواهم یادآوری کنم که سرورهای سطح 1 و 2 و حتی حتی 3 همیشه برای دسترسی عموم آزاد نیستند. گاهی اوقات ، برای همگام سازی با آنها ، باید درخواست را از طریق پست الکترونیکی - برای مدیران دامنه ارسال کنید.

هدف از محدود کردن دسترسی به سرورها چیست؟ با انتقال به هر سطح ، خطای مربوط به سرور اصلی کمی افزایش می یابد ، اما از طرف دیگر تعداد کل سرورها در حال افزایش استو بنابراین.

اختصاص یک سرور NTP در یک شبکه محلی

چرا به سرور NTP نیاز داریم؟به عنوان مثال ، سرویس هایی روی سیستم عامل وجود دارد که می تواند به زمان هماهنگ بستگی داشته باشد. برجسته ترین نمونه اینگونه خدمات پروتکل احراز هویت Kerberos است. برای کار کردن ، لازم است که در رایانه هایی که با استفاده از این پروتکل قابل دسترسی هستند ، زمان سیستم بیش از 5 دقیقه متفاوت باشد. علاوه بر این ، زمان دقیق در همه رایانه ها تجزیه و تحلیل گزارش های امنیتی هنگام بررسی حوادث در شبکه محلی را بسیار آسان می کند.

حالت های عملکرد سرور / سرویس گیرنده NTP

مشتری / سرور

این حالت بیشترین استفاده را در اینترنت می کند. طرح کار کلاسیک است. مشتری درخواستی را ارسال می کند که سرور برای مدتی پاسخی به آن ارسال می کند. سرویس گیرنده با استفاده از دستورالعمل سرور در پرونده پیکربندی ، جایی که نام DNS سرور زمان مشخص شده است ، پیکربندی شده است.

متقارن حالت فعال / غیرفعال

این حالت زمانی استفاده می شود که همگام سازی زمان بین تعداد زیادی ماشین برابر انجام شود. علاوه بر این واقعیت که هر دستگاه با یک منبع خارجی هماهنگ شده است ، همچنین با همتایان خود همگام سازی می شود ، به عنوان مشتری و سرور زمان برای آنها عمل می کند. بنابراین ، حتی اگر دستگاه منبع خارجی خود را "از دست بدهد" ، باز هم می تواند زمان دقیق را از همسایگان خود بگیرد. همسایگان می توانند در دو حالت فعال و منفعل کار کنند. ماشین در حالت فعال فعال می کند و وقت خود را به تمام ماشین های همسایه که در بخش peers پرونده پیکربندی ntp.conf ذکر شده منتقل می کند. اگر همسایگان در این بخش مشخص نشده باشند ، دستگاه در حالت غیرفعال در نظر گرفته می شود. برای جلوگیری از به خطر انداختن مهاجم با ماشین های دیگر ، به عنوان یک منبع فعال ، استفاده از احراز هویت ضروری است.

حالت پخش

این حالت برای مواردی توصیه می شود که تعداد کمی از سرورها به تعداد زیادی مشتری سرویس می دهند. در این حالت ، سرور به صورت دوره ای بسته ها را با استفاده از آدرس زیر شبکه پخش می کند. سرویس گیرنده پیکربندی شده برای همگام سازی از این طریق بسته پخش سرور را دریافت کرده و با سرور همگام سازی می کند. ویژگی این حالت این است که زمان در یک زیر شبکه تحویل داده می شود (محدودیت بسته پخش). علاوه بر این ، باید از احراز هویت برای محافظت در برابر متجاوزان استفاده شود.

حالت چندپخشی

این حالت شباهت زیادی به پخش دارد. تفاوت در این است که آدرس های چندپخشی شبکه های کلاس D در فضای آدرس IP برای تحویل بسته ها استفاده می شود. برای کلاینت ها و سرورها ، آدرس گروه چندپخشی تنظیم شده است که از آنها برای همگام سازی زمان استفاده می کنند. این امکان همگام سازی گروه های ماشین آلات مستقر در زیرشبکه های مختلف را فراهم می کند ، به شرطی که روترهای متصل به آنها از IGMP پشتیبانی کرده و برای انتقال ترافیک چندپخشی پیکربندی شوند.

حالت Manycast

این حالت در نسخه چهارم پروتکل NTP جدید است. این بدان معنی است که مشتری سرورهای بسیاری را در میان همسایگان شبکه خود جستجو می کند ، از هر یک از آنها نمونه های زمانی را دریافت می کند (با استفاده از رمزنگاری) و بر اساس این داده ها ، سه "بهترین" سرور زیادی را انتخاب می کند که مشتری با آنها همگام سازی می شود. در صورت خرابی یکی از سرورها ، مشتری به طور خودکار لیست خود را به روز می کند.

برای انتقال نمونه های زمانی ، کلاینت ها و سرورهایی که در حالت بسیاری پخش کار می کنند از آدرس گروه های چندپخشی (شبکه های کلاس D) استفاده می کنند. مشتری ها و سرورهایی که از همان آدرس استفاده می کنند ارتباط یکسانی دارند. تعداد ارتباطات با تعداد آدرسهای چندپخشی استفاده شده تعیین می شود.

زمان در لینوکس

من به طور خلاصه به شما می گویم که چه زمانی در Linux وجود دارد و چگونه آن را تنظیم کنید. در لینوکس ، و همچنین در سیستم عامل دیگر ، 2 بار وجود دارد. اولین - سخت افزار گاهی اوقات نامیده می شود ساعت واقعی، به اختصار ( RTC) (آنها ساعت BIOS نیز هستند) معمولاً با کریستال کوارتز نوسانی همراه هستند که دقت آن تا چند ثانیه در روز است. دقت به نوسانات مختلفی مانند درجه حرارت محیط بستگی دارد. ساعت دوم داخلی است ساعت برنامه که به طور مداوم اجرا می شوند ، از جمله در هنگام قطع عملکرد سیستم. آنها به دلیل بار زیاد سیستم و تأخیر قطع ، مستعد نوسان هستند. با این حال ، سیستم معمولاً ساعت سخت افزاری را در زمان بوت شدن می خواند و سپس از ساعت سیستم استفاده می کند.

تاریخ و ساعت سیستم عاملبر اساس مقدار بوت تنظیم می شود ساعت سخت افزاری، همچنین تنظیمات منطقه زمانی... تنظیمات منطقه زمانی از پرونده گرفته شده است / و غیره / محلی... این فایل پیوندی است (اما بیشتر اوقات - کپی) یکی از فایلهای موجود در ساختار دایرکتوری / usr / share / zoneinfo /.

ساعت سخت افزاری لینوکس می تواند زمان را در قالب ذخیره کند UTC(آنالوگ GMT) ، یا ساعت محلی فعلی. توصیه کلی در مورد زمان نصب (؟) به شرح زیر است: اگر چندین سیستم عامل بر روی کامپیوتر نصب شده و یکی از آنها ویندوز باشد ، استفاده از زمان فعلی ضروری است (از آنجا که ویندوز از BIOS / CMOS زمان می برد و آن را محلی می داند). اگر فقط از سیستم عامل های UNIX خانواده استفاده می شود ، بهتر است زمان را در BIOS با فرمت UTC ذخیره کنید.

پس از بارگیری سیستم عامل ، ساعت سیستم عامل و BIOS کاملاً مستقل هستند. هسته سیستم هر 11 ثانیه ساعت سیستم را با ساعت سخت افزاری هماهنگ می کند.

بعد از مدتی ممکن است بین ساعت سخت افزار و ساعت نرم افزار چند ثانیه تفاوت وجود داشته باشد. کدام ساعت شامل زمان درست است؟ نه یکی و نه دیگری تا زمانی که ما تنظیم کنیم همگام سازی زمان

توجه داشته باشید:

هسته لینوکس همیشه با گذشت تعداد ثانیه های گذشته از نیمه شب ، زمان را ذخیره و محاسبه می کند 1 ژانویه 1970 از سال، صرف نظر از اینکه ساعت شما روی زمان محلی تنظیم شده باشد یا زمان جهانی. تبدیل به زمان محلی در طی مراحل درخواست انجام می شود.

از آنجا که تعداد ثانیه ها از 1 ژانویه 1970 UTC به عنوان یک عدد صحیح 32 بیتی امضا شده ذخیره می شود (این برای سیستم های لینوکس / اینتل صادق است) ، ساعت شما در جایی از سال 2038 متوقف می شود. لینوکس مشکل Y2K ندارد ، اما مشکل Y2K دارد. خوشبختانه ، تا آن زمان تمام لینوکس ها روی سیستم های 64 بیتی کار خواهند کرد. عدد صحیح 64 بیتی ساعت ما را تا حدود 292،271 میلیون سال نگه می دارد.

سرور NTP لینوکس

معرفی

پیاده سازی های بسیاری برای همگام سازی زمان برای سیستم عامل لینوکس وجود دارد. مشهورترین آنها Xntpd (NTP نسخه 3) ، ntpd (NTP نسخه 4) ، Crony و ClockSpeed ​​است. در مثال ما ، از سرور ntp ntpd استفاده خواهیم کرد.

ntpd daemon هم سرور زمان و هم سرویس گیرنده است ، بسته به تنظیمات موجود در پرونده پیکربندی /etc/ntpd.conf (گاهی اوقات /etc/ntp.conf) ، daemon هم می تواند زمان را از سرورهای راه دور "دریافت" کند و هم "توزیع کند "وقت به میزبانهای دیگر.

عمومی مدار همگام سازی زماندر شبکه محلی به شرح زیر است: شما باید 1 یا 2 سرور با دسترسی به شبکه جهانی داشته باشید که از اینترنت وقت دریافت می کنند. همه رایانه های شبکه محلی را با سرورهای مشخص شده که از اینترنت زمان می گیرند همگام سازی کنید.

نصب ntpd

در حقیقت، نصب دیوبه نصب بسته های زیر می رسد: ntp(بسته شامل خود شیطان) ، ntpdate(ابزار برای همگام سازی زمان دستی منسوخ شده است) ، ntp-doc(مستندات بسته) ، در برخی از توزیع ها نصب همان مورد ضروری است ntp-utils(ابزارهای تشخیصی) ، برخی از آنها در بسته ntp گنجانده شده است. نحوه نصب برنامه ها در لینوکس ، من در آن توضیح دادم. پس از نصب بسته ، در بیشتر توزیع ها ، daemon قبلاً به عنوان سرویس گیرنده ntp پیکربندی می شود (به عنوان مثال ، در دبیان اینگونه بود). بر این اساس ، پرونده های اصلی پیکربندی به طور خودکار ایجاد شدند: /etc/ntp.conf و /var/lib/ntp/ntp.drift و daemon به طور خودکار شروع شد.

قبل از پیکربندی daemon برای همگام سازی با جهان خارج ، من به شما توصیه می کنم که تاریخ سیستم فعلی را روی مقداری تنظیم کنید که تا حد ممکن به زمان واقعی نزدیک باشد. تنظیم تاریخ در Linuxتولید شده توسط دستور: تاریخ MMDDhhmmCCYY.ss ،جایی که MM - ماه ، DD - روز ماه ، ساعت - ساعت ، میلی متر - دقیقه ، CCYY - 4 رقم سال ، ثانیه - ثانیه. علاوه بر این ، ارزش ها CCYY.ssلازم نیست مشخص شود.

همانطور که مشاهده می کنید ، دستور مشخص شده تاریخ و زمان فعلی را به تاریخ 27 دسامبر 2010 ، 20:06:30 تنظیم می کند. دستور تاریخبدون پارامتر ، زمان سیستم فعلی را نمایش دهید. این دستور یک دسته پارامتر دارد که در تاریخ man یافت می شود.

همچنین ، لازم است که ساعت و منطقه زمانی سخت افزار را به درستی پیکربندی کنید. همانطور که در بالا ذکر شد ، منطقه زمانی با کپی کردن فایل منطقه مورد نیاز از فهرست پیکربندی می شود / usr / share / zoneinfo /تشکیل پرونده / و غیره / محلی:

سرور Ntp: ~ # cp / usr / share / zoneinfo / اروپا / مسکو / و غیره / محلی

سخت افزار ساعت را روی UTC تنظیم کردم:

# گربه / و غیره / sysconfig / ساعت | grep UTC # UTC = true نشان می دهد که ساعت روی UTC تنظیم شده است. UTC = سرور واقعی ntp2: ~ # cat / etc / default / rcS | grep UTC UTC = بله

در مثال اول ، یک فایل پیکربندی مشخص شده است که استفاده از UTC را برای RH تعیین می کند ، مورد دوم - برای توزیع های Deb.

علاوه بر تنظیم تنظیمات استفاده از زمان UTC ، باید تنظیم کنید زمان سخت افزار... (در بیشتر موارد این ضروری نیست ، زیرا زمان سیستم داده شده به ناچار توسط سخت افزار با سخت افزار هماهنگ می شود). اما هنوز هم اگر تمایل به انجام این کار دارید ... دستور Hwclockساعت سخت افزاری را بر اساس پارامترهای منتقل شده به آن می خواند و تنظیم می کند. گزینه های موجود در صفحه راهنمای دستور شرح داده شده است. در اینجا چند نمونه از استفاده از hwclock آورده شده است:

Ntp-server # hwclock # ساعت را از ساعت سخت افزاری می خواند ntp-server # hwclock --systohc --utc # ساعت سخت افزار را بر اساس زمان سیستم ntp-server # hwclock --systohc را روی # UTC تنظیم می کند # به محلی براساس سیستم زمان ntp-server # hwclock --set --date "22 مارس 2002 13:17" # زمان ساعت سخت افزاری را # به رشته مشخص شده تنظیم می کند

گزینه دیگر برای تغییر زمان در ساعت سخت افزاری ، دسترسی به BIOS هنگام راه اندازی سیستم است. از آنجا که زمان سیستم عامل از ساعت سخت افزاری مستقل است ، در هنگام راه اندازی بعدی ، هرگونه تغییر در BIOS مورد توجه قرار می گیرد.

اکنون که همه چیز آماده و نصب شده است ، بیایید ادامه دهیم در محل ساخت.

مدیریت daemon ntpd

کنترل daemon ntpdهیچ تفاوتی با کنترل شیاطین دیگر ندارد. سرویس ntpd را شروع یا راه اندازی مجدد کنید:

# / etc / init.d / ntp start # / etc / init.d / ntp راه اندازی مجدد

متوقف کردن:

# / etc / init.d / ntp توقف

# / bin / kill `cat / var / run / ntpd.pid`

daemon گزینه های راه اندازی زیر را دارد:

P - پرونده PID ،
-g - انتقال به یک جهش بزرگ در زمان را فعال کنید
-c - فایل پیکربندی
-q - همگام سازی دستی اجباری

راه اندازی سرور ntpd

اول از همه ، من به شما توصیه می کنم پارامترهای راه اندازی daemon را در فایل پیکربندی زیر تغییر دهید:

سرور Ntp: # cat / etc / default / ntp NTPD_OPTS = "- g"

# cat / etc / sysconfig / ntpd # پارامترهای شبح NTP. # برای جزئیات بیشتر به ntpd (8) مراجعه کنید. .... # پارامترهای اضافی را برای ntpd مشخص می کند. NTPD_ARGS = "- گرم"

این پارامتر به شما امکان می دهد تا ساعت را همگام سازی کنید ، حتی اگر اختلاف زمانی بسیار زیادی وجود داشته باشد.

بنابراین ، همانطور که قبلاً گفتم ، اطلاعات پیکربندی daemon ntpdدر پرونده نهفته است /etc/ntp.conf.نحو پرونده مانند بسیاری از تنظیمات دیگر استاندارد است: خطوط و خطوط خالی که با کاراکتر "#" شروع می شوند نادیده گرفته می شوند. در اینجا یک مثال ساده آورده شده است:

سرور Ntp: server # cat /etc/ntp.conf سرور ntplocal.example.com ترجیح می دهد سرور timeserver.example.org سرور ntp2a.example.net driftfile /var/db/ntp.drift

پارامتر سرورمشخص می کند که از کدام سرورها برای همگام سازی استفاده کنید ، یکی در هر خط. اگر سرور با آرگومان مشخص شده باشد ترجیح می دهند، مانند ntplocal.example.com، سپس به این سرور نسبت به بقیه ارجحیت داده می شود. اگر یک پاسخ از سرور ارجح تفاوت داشته باشد ، اگر با پاسخ سایر سرورها تفاوت چشمگیری داشته باشد ، از بین می رود ، در غیر این صورت بدون توجه به پاسخ های دیگر استفاده می شود. بحث و جدل ترجیح می دهندمعمولاً برای سرورهای NTP که بسیار دقیق شناخته شده اند استفاده می شود ، مانند استفاده از تجهیزات زمان بندی اختصاصی.

پارامتر دریفتفایلی را که برای ذخیره جبران فرکانس ساعت سیستم استفاده می شود ، مشخص می کند. تا آنجا که من فهمیدم ، این پرونده مقداری مقدار را ذخیره می کند ، که براساس تجزیه و تحلیل تنظیمات زمان گذشته تشکیل می شود ، و اگر منابع زمان خارجی در دسترس نباشند ، زمان با مقدار از پرونده تنظیم می شود رانشبا هیچ فرآیند دیگری نباید تغییر کند. و قبل از مشخص کردن این فایل در پیکربندی ، پرونده باید ایجاد شود.

به طور پیش فرض ، سرور NTP برای همه میزبانان در اینترنت در دسترس خواهد بود. پارامتر محدود کردندر پرونده /etc/ntp.confبه شما امکان می دهد تا کنترل کنید کدام دستگاه ها می توانند به سرور شما دسترسی پیدا کنند. اگر شما می خواهید از دسترسی همه ماشین ها به سرور NTP شما جلوگیری کنید، خط زیر را به پرونده اضافه کنید /etc/ntp.conf:

محدود کردن پیش فرض نادیده گرفتن

اگر شما می خواهید اجازهساعت خود را فقط با سرور خود همگام سازی کنید ماشین های موجود در شبکه شما، ولی ممنوع کردنآنها پیکربندی سروریا در هماهنگ سازی زمان به عنوان شرکت کنندگان برابر باشید ، سپس به جای یک مورد مشخص شده ، خط را اضافه کنید:

ماسک 192.168.1.0 را محدود کنید 255.255.255.0 notop را notrap کنید

که در آن 192.168.1.0 آدرس IP شبکه شما و 255.255.255.0 شبکه ماسک آن است. /etc/ntp.confممکن است شامل چندین دستورالعمل محدود کننده باشد.

برای کار صحیح و دقیق تر daemon ، توصیه می شود سرورهای سطح را انتخاب کنید - از لایه 2 (البته شما می توانید لایه 1 را داشته باشید ، اما باید به دنبال چنین سروری باشید زمان را از بین ببرید) و از طبقه 2 انتخاب شده برای که حداقل "فاصله" است. به طور معمول ، این سرویس دهنده ها می توانند توسط ISP شما تهیه شوند. تعداد سرورهای انتخابی مطلوب است - بیش از 2 3 ، هرچه بیشتر ، بهتر است ، اما در حد معقول. اگر بیش از حد تنبل هستید که بهترین سرورها را انتخاب کنید ، می توانید از اینجا لیستی از سرورهای سطح دوم باز کنید: http://support.ntp.org/bin/view/Servers/StratumTwoTimeServers.

انتخاب لیستی از سرورهای NTP مرجع

ما به آدرس مشخص شده (http://support.ntp.org/bin/view/Servers/StratumTwoTimeServers) می رویم و لیستی از سرورهای شروع را انتخاب می کنیم. با تجزیه و تحلیل خروجی دستور ، از این لیست ، سرورهای مورد نیاز ما را انتخاب کنید ntpdate... هنگام اجرای یک دستور ، نحو زیر اعمال می شود:

پارامترهای ntpdate space_servers

برای اینکه درخواست ما تغییری در سیستم ایجاد نکند ، لازم است از پارامتر -q استفاده کنید ، که نشانگر استفاده از درخواست بدون ایجاد تغییر است. همچنین می توان از سوئیچ -d استفاده کرد ، که نشان می دهد این دستور در حالت اشکال زدایی ، با خروجی اطلاعات اضافی ، بدون ایجاد هیچ گونه تغییر واقعی اجرا می شود (با این سوئیچ ، یک دسته از زباله های دیگر نمایش داده می شود :) ، که فعلاً نیازی به آن نداریم). بقیه پارامترها را می توان در man 8 ntpdate یافت. از لینک مشخص شده ، من همه سرورهای Open Access واقع در روسیه (RU) + مورد ارائه شده توسط ارائه دهنده را انتخاب کردم و دستور را اجرا کردم ، چیزی شبیه به موارد زیر ظاهر شد:

Ntp-server: ~ # ntpdate -q ntp2.ntp-servers.net ntp1.vniiftri.ru ntp2.vniiftri.ru ntp4.vniiftri.ru ntp0.ntp-servers.net ntp1.ntp-servers.net ntp3.vniiftri.ru سرور ntp.corbina.net 88.147.255.85 ، لایه 1 ، افست 0.006494 ، تأخیر 0.09918 سرور 62.117.76.142 ، طبقه 1 ، افست 0.002552 ، تأخیر 0.06920 سرور 62.117.76.141 ، لایه 1 ، افست 0.003147 ، تأخیر 0.06918 سرور 62.117.76.140 ، تأخیر 0.06918 سرور 62.117.76.140 1 ، افست 0.004823 ، تأخیر 0.07350 سرور 88.147.254.228 ، طبقه 1 ، افست -0.002355 ، تأخیر 0.12030 سرور 88.147.254.229 ، لایه 1 ، افست -0.000922 ، تأخیر 0.10577 سرور 62.117.76.138 ، طبقه 1 ، افست 0.005331 ، تأخیر 0.014 .40.141 ، لایه 2 ، جبران 0.002846 ، تأخیر 0.07188 13 ژانویه 19:14:09 ntpdate: تنظیم زمان سرور 62.117.76.141 جبران 0.003147 ثانیه

در مثال ، سرورهای ما سطح stratum1 را با موفقیت منتشر کردند ، که خبر خوبی است (به جز سرور ارائه دهنده) ، جبران اختلاف زمان با این سرور در چند ثانیه است ، تأخیر تأخیر همگام سازی در ثانیه است. معمولاً ، ب ایبهترین دقت با استفاده از سرورهایی که تأخیر کمی برای انتقال بسته از طریق شبکه دارند بدست می آید. برای شناسایی این ، امکان استفاده وجود دارد. بر این اساس ، ابتدا کسانی را انتخاب کنید که زمان پاسخ کوتاه تری دارند و از بین آنها - کسانی که هاپ کمتری دارند. به منظور اتلاف وقت ، از همه سرورهای مشخص شده استفاده کرده و آنها را در پرونده پیکربندی می نویسم. در مجموع ، با دانستن همه موارد فوق ، پرونده حاصل را شرح خواهم داد /etc/ntp.conf:

سرور Ntp: ~ # cat /etc/ntp.conf # سرورهای شبکه محلی (توضیح داده شده ، استفاده نشده است - یک سرور در شبکه وجود دارد) # سرور 192.168.0.2 # سرور 192.168.0.5 # سرور سرور اینترنت ntp2. سرور ntp-servers.net سرور ntp1.vniiftri.ru ntp2.vniiftri.ru سرور ntp4.vniiftri.ru سرور ntp0.ntp-servers.net سرور ntp1.ntp-servers.net سرور ntp3.vniiftri.ru سرور ntp.corbina. خالص # پرونده های سرور driftfile /var/lib/ntp/ntp.drift logfile / var / log / ntpstats # محدود کردن دسترسی به سرور: # به طور پیش فرض ما همه چیز را نادیده می گیریم محدودیت پیش فرض را نادیده بگیرید # localhost بدون پارامتر به معنی همه چیز مجاز است. پارامترها فقط برای منع استفاده می شوند. 127.0.0.1 را محدود کنید # # زیر سرورهایی را که با آنها در شبکه محلی همگام سازی می کنیم توصیف می کند. # به آنها اجازه دهید همه موارد به غیر از تله ها و درخواست های ما محدود کردن 192.168.0.2 عدم دسترسی noquery محدود کردن 192.168.0.5 noquery notrap # برای LAN ما همچنین به همه موارد اجازه می دهیم به غیر از دام و تغییرات محدود کردن ماسک 192.168.0.1 255.255.255.0 nomodify notrap nopeer # اجازه دسترسی به منابع زمان خارجی : ntp2.ntp-servers.net را محدود کنید ntp1.vniiftri.ru را محدود کنید ntp2.vniiftri.ru را محدود کنید ntp4.vniiftri.ru را محدود کنید ntp0.ntp-servers.net را محدود کنید ntp1.ntp-servers.net را محدود کنید ntp3.vniiftri.ru را محدود کنید ntp.corbina.net # و این هک ، میزان اعتماد به سرور (اقشار) را برابر با 3 # به طور خلاصه تنظیم می کند ، هرچه سطح بالاتر باشد ، عدد کمتر خواهد بود. 0 یک ساعت اتمی است ، شماره 1 با آن هماهنگ شده است ، 2 با اولین بار است و غیره. سرور 127.127.1.1 fudge 127.127.1.1 طبقه 3

برای درک و پیکربندی بیشتر سرور ، برخی از پارامترهای پیکربندی ntpd را که ذکر نکردم شرح می دهم:

  • فعال غیرفعال auth / monitor / pll / pps / stats - روشن خاموش حالت عملیاتی:
    • تأیید- فقط در حالت احراز هویت با همسایگان ذکر نشده ارتباط برقرار کنید.
    • مانیتور- نظارت بر درخواست ها را فعال کنید
    • pll- تنظیم فرکانس ساعت محلی از طریق NTP ؛
    • آمار- جمع آوری آمار را فعال کنید
  • آمارloopstats- با هر تغییر ساعت محلی ، یک خط را به یک فایل می نویسد loopstats;
  • آمارپرستات- هر ارتباط با همسایه در سیاهههای مربوط به پرونده ذخیره می شود پرستات;
  • آمارساعت مچی- هر پیام از درایور ساعت محلی در سیاهههای مربوط به ذخیره شده در یک فایل نوشته می شود ساعت مچی;
  • statsdir(نام کاتالوگ با آمار)- نام دایرکتوری را تنظیم می کند که در آن پرونده ها با آمار سرور قرار می گیرند.
  • filegen - الگوریتم تولید نام پرونده را تعریف می کند که شامل موارد زیر است:
    • پیشوند- قسمت ثابت نام فایل ، تنظیم شده در هنگام تدوین یا با دستورات خاص پیکربندی ؛
    • نام فایل- بدون بریدگی به پیشوند اضافه شده ، دو نقطه ممنوع است ، می توانید با کلید پرونده تغییر دهید.
    • پسوند- بسته به نوع تایپ تولید می شود.
  • محدود کردنآدرس عددی- محدودیت دسترسی را تنظیم می کند: بسته ها مرتب شده و پوشانده می شوند ، آدرس منبع گرفته می شود و به ترتیب مقایسه می شود ، پرچم از آخرین مقایسه موفق گرفته می شود دسترسی:
    • بدون پرچم- دسترسی بدهید
    • چشم پوشی- همه بسته ها را نادیده بگیرید
    • پرسش و پاسخ- بسته های NTP 6 و 7 را نادیده بگیرید (درخواست و اصلاح حالت)
    • نامگذاری کردن- بسته های NTP 6 و 7 را نادیده بگیرید (تغییر حالت).
    • محدود- فقط تعداد محدودی مشتری از یک شبکه مشخص سرویس دهی کنید.
    • نه- به میزبان خدمت کنید ، اما با آن همگام نشوید ؛
  • محدودیت مشتریحد- برای پرچم محدودحداکثر تعداد مشتریانی را که خدمت می کنند تعیین می کند (به طور پیش فرض 3).

بنابراین ntpd-server دریافت کردیم، که با دنیای خارج هماهنگ شده است ، به شما امکان می دهد از شبکه محلی 192.168.0.1 با ماسک 255.255.255.0 برای مشتری وقت بگیرید و همچنین می توانید با سرور محلی همگام سازی کنید (اگر چند خط را لغو نکنید). این برای ما باقی مانده است که کلاینت ها را پیکربندی کرده و نحوه نظارت بر سرور خود را بیابیم.

نظارت بر سرور ntpd و هماهنگ سازی

وقتی همه چیز را تنظیم کنید. NTP زمان را همزمان نگه می دارد. این فرآیند با استفاده از دستور NTP Query (ntpq) مشاهده می شود:

Ntp-server: ~ # ntpq -p از راه دور مجدداً در هنگام رأی گیری نظرسنجی جبران خنثی ================================= = ============================================= -n3. time1 .d6.hsd .PPS. 1 u 34 64 177 70.162 2.375 8.618 + ntp1.vniiftri.r. PPS. 1 u 33 64 177 43.479 -0.020 10.198 * ntp2.vniiftri.r. PPS. 1 u 6 64 177 43.616 -0.192 0.688 + ntp4.vniiftri.r. PPS. 1 u 4 64 177 43.623 0.440 0.546 -n1.time1.d6.hsd .PPS. 1 u 53 64 77 92.865 -11.358 38.346 -ns1.hsdn.org .GPS. 1 u 40 64 177 78.057 -3.292 35.083 -ntp3.vniiftri.r. PPS. 1 u 44 64 77 47.667 2.292 2.611 -scylla-l0.msk.c 192.43.244.18 2 u 62 64 77 41.565 -1.564 28.914

این دستور با سوئیچ -p لیستی از منابع زمان با مشخصات آنها را برای خروجی استاندارد چاپ می کند (بقیه پارامترهای دستور در man ntpq هستند). معنی هر ستون به شرح زیر است:

نام سرور NTP از راه دور. اگر سوئیچ -n را مشخص کنید ، به جای نام ، آدرس IP سرورها را دریافت می کنید.

نشان می دهد که هر سرور در حال حاضر از کجا وقت می گیرد. این می تواند یک نام میزبان یا چیزی مانند .GPS باشد. منبع سیستم موقعیت یابی جهانی را نشان می دهد.

Stratum (سطح) عددی از 1 تا 16 است که نشان دهنده دقت سرور است. یکی به معنای حداکثر دقت ، 16 به این معنی است که سرور در دسترس نیست. سطح شما برابر با سطح کمترین سرور از راه دور به علاوه 1 خواهد بود.

فاصله بین نظرسنجی ها (در چند ثانیه). مقدار بین حداقل و حداکثر میزان نظرسنجی تغییر خواهد کرد. در ابتدا ، فاصله کم خواهد بود تا همگام سازی به سرعت انجام شود. پس از همگام سازی ساعت ها ، فاصله برای افزایش ترافیک و بارگذاری در سرورهای محبوب زمانی شروع به افزایش می کند.

نمایشی هشت ضلعی از یک آرایه 8 بیتی که نتایج هشت تلاش اخیر برای اتصال به سرور را نشان می دهد. اگر سرور از راه دور پاسخ دهد ، بیت تنظیم می شود.

مقدار زمان (در ثانیه) برای دریافت پاسخ به "ساعت چند است؟"

مهمترین رشته. تفاوت زمانی بین سرورهای محلی و از راه دور. هنگام همگام سازی ، این مقدار باید کاهش یابد (نزدیک به صفر) ، این نشان می دهد که ساعت ماشین محلی دقیق تر می شود.

واریانس (Jitter) معیاری برای انحراف آماری از مقدار جبران (فیلد جبران) از چندین جفت موفقیت آمیز درخواست و پاسخ است. مقدار واریانس پایین ترجیح داده می شود زیرا امکان هماهنگی دقیق تر زمان را فراهم می کند.

معنی نویسه ها در مقابل نام سرور

x - منبع جعلی با توجه به الگوریتم تقاطع ؛
... - به دلیل مسافت طولانی از لیست نامزدها حذف شده است.
- - توسط الگوریتم خوشه بندی از لیست نامزدها حذف شده است.
+ - در لیست نهایی نامزدها موجود است.
# - برای هماهنگ سازی انتخاب شده است ، اما 6 بهترین نامزد وجود دارد.
* - برای هماهنگ سازی انتخاب شده است.
o - برای هماهنگ سازی انتخاب شده است ، اما PPS استفاده می شود.
فضا - سطح بسیار بالا ، حلقه یا خطای واضح ؛

سرویس Ntpd"هوشمند" است و خودش منابع زمانی را که خیلی فراتر از حد معقول است ، از بین می برد. مدتی پس از شروع ntpd مطمئن ترین منابع داده را انتخاب کرده و با آنها همگام سازی می شود. لیست سرورهای NTP مرجع ارائه شده توسط ما بطور منظم توسط سرویس بررسی می شود.

بررسی امکان همگام سازی به صورت محلی در سرور با دستور زیر امکان پذیر است:

سرور Ntp: server # ntpdate -q localhost server 127.0.0.1، طبقه 2، جبران -0.000053، تاخیر 0.02573 سرور :: 1، لایه 2، جبران -0.000048، تأخیر 0.02571 14 ژانویه 14:49:57 ntpdate: تنظیم زمان سرور :: 1 جبران -0.000048 ثانیه

از خروجی دستور می بینید که سرور ما قبلاً به سطح 2 تبدیل شده است. رسیدن به این سطح مدتی طول می کشد. شاید در 10-15 دقیقه اول سطح سرور بالاتر باشد.

عملکرد صحیح سرور ntp را می توان با گزارش های daemon ntpd نیز قضاوت کرد:

Ntp-server: ~ # cat / var / log / ntpstats / ntp 13 ژانویه 20:13:16 ntpd: گوش دادن در رابط شماره 5 eth0 ، fe80 :: a00: 27ff: fec1: 8059 # 123 فعال شده 13 ژانویه 20:13: 16 ntpd: گوش دادن در رابط شماره 6 eth0 ، 192.168.0.8 # 123 فعال شده 14 ژانویه 14:31:00 ntpd: هماهنگ شده با 62.117.76.142 ، طبقه 1 14 ژانویه 14:31:10 ntpd: تنظیم مجدد زمان +10.291312 s 14 ژانویه 14 : 31: 10 ntpd: تغییر همگام سازی زمان کرنل 0001 14 ژانویه 14:34:31 ntpd: همگام سازی شده با 88.147.255.85 ، طبقه 1 14 ژانویه 14:36:04 ntpd: هماهنگ شده با 62.117.76.141 ، طبقه 1 14 ژانویه 15: 04:36 ntpd: همگام سازی شده با 62.117.76.142 ، طبقه 1 14 ژانویه 15:10:58 ntpd: همگام سازی شده با 62.117.76.140 ، لایه 1 14 ژانویه 15:17:54 ntpd: هیچ سرور قابل دسترسی نیست 14 ژانویه 15:31:49 ntpd : هماهنگ شده با 62.117.76.140 ، طبقه 1 14 ژانویه 15:32:14 ntpd: تنظیم مجدد زمان +13.139105 ثانیه

راه اندازی Netfilter (iptables) برای سرور NTP

با پیکربندی سرور ، خوب است که از آن محافظت کنید. ما می دانیم که سرور روی پورت 123 / udp در حال اجرا است ، در حالی که درخواست ها نیز از پورت 123 / udp ارسال می شوند. پس از مطالعه مقاله و آشنایی با موارد کاربردی ، می توانید قوانینی را برای فیلتر کردن ترافیک شبکه ایجاد کنید:

Ntp ~ # iptables-save # iptables معمولی قوانین DNS * فیلتر: قطره ورودی: قطره رو به جلو: قطره خروجی-ورودی ورودی -i lo -j ACCEPT -A INPUT -m conntrack --ctstate مرتبط ، استقرار -j ACCEPT -A INPUT - m conntrack --ctstate INVALID -j DROP # اجازه دسترسی LAN به سرور NTP را می دهد: -A INPUT -s 192.168.1.1/24 -d 192.168.1.1/32 -p udp -m udp --dport 123 -m conntrack - - ctstate NEW -j ACCEPT -A OUTPUT -o lo -j ACCEPT -A OUTPUT -p icmp -j ACCEPT -A OUTPUT -p udp -m udp --sport 32768: 61000 -j ACCEPT -A OUTPUT -p tcp -m tcp --sport 32768: 61000 -j ACCEPT -A OUTPUT -m conntrack --ctstate RELATED، ESTABLISHED -j ACCEPT # امکان دسترسی به سرور NTP را برای درخواست های خروجی فراهم می کند -A OUTPUT -p udp -m udp --sport 123 --dport 123 -m conntrack --ctstate NEW -j ACCEPT COMMIT

این یک نمونه معمولی است! برای تنظیم قوانین iptables برای وظایف و پیکربندی شبکه ، باید با خواندن مقاله های بالا نحوه کار netfilter در Linux را درک کنید.

پیکربندی ماشین های مشتری

برای همگام سازی زمان در ماشین های UNIXشبکه محلی ، توصیه می شود از برنامه ntpdate استفاده کنید و آن را چندین بار در روز راه اندازی کنید ، به عنوان مثال هر ساعت. برای انجام این کار ، خط زیر را به موارد زیر اضافه کنید:

0 * * * * / usr / sbin / ntpdate -s

سوئیچ -s خروجی دستور را هدایت می کند. اگر دستگاه های کلاینت دو مگابایت RAM اضافی دارند ، می توانید daemon ntpd را مانند سرور با پیکربندی زیر شروع کنید:

سرور محدود کردن پیش فرض نادیده گرفتن محدود کردن noquery notrap محدود کردن 127.0.0.1 notomify notrap

من فکر می کنم همه چیز در این پیکربندی روشن است: منبع زمان (سرور) سرور محلی ntpd است ، دسترسی به همه را رد کنید ، فقط به سرور محلی ntpd اجازه دهید.

همچنین ، در کلاینت ها لازم است که به درستی نشان دهید که در کدام قالب زمان را ذخیره کرده و منطقه زمانی صحیح را انتخاب کنید.

برای پیکربندی سرویس گیرنده NTP ویندوز، باید دستورات زیر را در کنسول اجرا کنید:

C: \> زمان خالص / مجموعهntp: دستور با موفقیت انجام شد C: \> net stop w32time سرویس Windows Time در حال توقف است. سرویس Windows Time با موفقیت متوقف شد. C: \> net start w32time سرویس Windows Time در حال شروع است. سرویس Windows Time با موفقیت شروع شد. C: \> net time / querysntp مقدار SNTP فعلی: دستور با موفقیت انجام شد

نتیجه

خوب ، همین! حجم مقاله بسیار زیاد شد ... من حتی خودم هم انتظار نداشتم. من موارد بالا را به طور خلاصه بیان می کنم. امیدوارم در این مقاله برای ما روشن شود که سرور NTP چیست و چگونه کار می کند. ما با نحوه پیکربندی سرور و کلاینت ها در دستگاه های UNIX و Windows آشنا شدیم. در چند کلمه ، ساختار همگام سازی زمان در شبکه محلی به شرح زیر است: در شبکه محلی 1.2 یا بیشتر سرور وجود دارد ، آنها زمان خود را با منابع خارجی در شبکه جهانی هماهنگ می کنند. تنظیمات سرور و سرویس گیرنده بر اساس /etc/ntp.conf (پرونده اصلی پیکربندی daemon ntpd) ، / etc / localtime (پرونده منطقه فعلی منطقه) و همچنین / etc / sysconfig / ntp (برای RH) و / etc / default است / ntp (برای Deb) - پرونده های پارامترهای راه اندازی daemon. برای سرور محلی ntp ، فایل پیکربندی سرورهای خارجی را برای گرفتن زمان تعیین می کند و دسترسی به این سرورها با پارامتر محدود کردن ، و همچنین برای رایانه های موجود در شبکه محلی ، برای مشتریان منبع زمان مشخص شده است - سرورهای محلی در شبکه محلی ، و دسترسی به همه به جز منبع زمان در شبکه محلی ممنوع است. همه چيز. از توجه شما سپاسگزارم خیلی مایلم نظر شما را بشنوم!

  • (بایگانی مقاله) نحوه اتصال GPS به سرور برای سازماندهی سرور زمان سطح Stratum1 خود را توصیف می کند.
  • نحوه پیکربندی مجوز در سرور ntp را توصیف می کند.

مدیریت زمان یکی از جنبه های اصلی مدیریت سیستم است. به طور معمول ، همه سرورهای مشتری و ایستگاه های کاری زمان را با دامنه Active Directory هماهنگ می کنند ، اما زمان دقیق AD از کجا می آید؟ این به عوامل مختلفی بستگی دارد. در پیکربندی استاندارد ، زمان با سرورهای مایکروسافت همگام سازی می شود و ماشین های مجازی معمولاً داده ها را از سرور میزبان دریافت می کنند.

بهترین کار این است که یک منبع واحد از داده های دقیق زمان برای همه رایانه های موجود در شبکه سازمانی تنظیم کنید - یک سرور (یا چندین سرور) که تمام سیستم ها با آن همگام شوند. این می تواند یک منبع یا منبع منابع در اینترنت یا یک سرور محلی باشد. به هر ترتیب ، ارزش تصمیم گیری در مورد منبع زمان دقیق را از قبل دارد.

پروتکل شبکه وظیفه همگام سازی رایانه ها و سرورهای ویندوز را بر عهده دارد. پروتکل زمان شبکه (NTP) NTP از پورت UDP 123 پیش فرض برای کار خود استفاده می کند. برای پیکربندی بیشتر عملکرد این پروتکل شبکه ، باید بررسی کنید که آیا این پورت فایروال را مسدود کرده است.

روشهای تعیین سرور NTP.

1) تیم w32tmبه شما امکان می دهد لیستی از همتایان خود را که اطلاعاتی را درباره زمان دقیق دامنه ارائه می دهند ، مشخص کنید. برای اطلاعات بیشتر در مورد دستور w32tm ، دستور مشخص شده را در یک خط فرمان وارد کنید w32tm /؟
اولین کاری که باید انجام شود ، کشف وضعیت کنترل کننده های دامنه در دامنه است. برای انجام این کار ، دستور را در خط فرمان اجرا کنید (اگر حقوق مدیر دامنه دارید ، می توانید خط فرمان را در ایستگاه کاری خود اجرا کنید)
w32tm / مانیتور- این دستور به شما اجازه می دهد تا ببینید هماهنگی با کدام سرور (سرورها) / سرویس در حال انجام است و تفاوت زمانی با مرجع شمالی چیست.
w32tm / config /manualpeerlist:time.windows.com / syncfromflags: دستی / قابل اعتماد: بله / بروزرسانی- با این دستور ما نشان می دهیم که هماهنگی با کدام سرویس / سرور انجام می شود (در این مثال ، با time.windows.com).
این دستور یک بار روی یک کنترل کننده دامنه اجرا می شود و آدرس های مشخص شده را در رجیستری می نویسد (در طول مسیر) HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ W32Time \ Config \ Parametersدر پارامتر سرور NTPS time.windows.com باید نوشته شود). می توانید چندین سرور را همزمان با فاصله از هم جدا کنید.


2) روش دیگر برای اطلاع از کنترل کننده دامنه ، سروری که با آن همزمان می شود سیاست های محلی یا گروهی است. رجیستری را اجرا کنید - روی دکمه Start کلیک کنید ، دستور Run را انتخاب کنید ، در خط فرمان وارد شوید gpedit.mscو دکمه را فشار دهید خوب... به "پیکربندی رایانه - خط مشی ها - الگوهای اداری - سیستم - سرویس زمان Windows - ارائه دهندگان زمان" بروید و خط مشی را تنظیم کنید. در این مثال ، در مقدار NTPServer ، می نویسیم time.windows.com، در مقدار Type که نشان می دهیم NTP... Type- گره های نظیر به نظیر را نشان می دهد که همگام سازی انواع زیر را قبول می کنند:
NoSync- سرویس زمان با منابع دیگر هماهنگ نیست.
NTP-سرویس زمان با سرورهای مشخص شده در قسمت رجیستری NtpServer همگام سازی می شود.
NT5DS-سرویس زمان بر اساس سلسله مراتب دامنه هماهنگ سازی را انجام می دهد.
AllSync-سرویس زمان از تمام مکانیزم های همگام سازی موجود استفاده می کند.

معنی CrossSiteSyncFlagsانتخاب کنید 2

CrossSiteSyncFlags. تعیین می کند که آیا این سرویس می تواند شرکای همگام سازی را خارج از دامنه رایانه انتخاب کند یا خیر.
نه 0
Pdc فقط 1
همه 2

به معنی ResolvePeerBackoffMinutesتجویز 15

ResolvePeerBackoffMinutes - قبل از شروع جستجوی یک همکار برای همگام سازی ، فاصله اولیه برای انتظار (در چند دقیقه) را مشخص می کند. اگر سرویس Windows Time نتواند با موفقیت با منبع زمان هماهنگ شود ، با استفاده از مقادیر مشخص شده برای پارامترهای ResolvePeerBackoffMinutes و ResolvePeerBackoffMaxTimes مجدداً تلاش می کند.

به معنی ResolvePeerBackoffMaxTimes 7 را تجویز کنید

ResolvePeerBackoffMaxTimes - حداکثر تعداد بار را برای دو برابر کردن فاصله زمانی مشخص می کند در صورت عدم موفقیت در تلاشهای مکرر برای یافتن گره مشابه برای همگام سازی. یک مقدار صفر فرض می کند که فاصله انتظار همیشه همان مقدار اولیه است که در پارامتر ResolvePeerBackoffMinutes مشخص شده است.

به معنی SpecialPollInterval 3600 را تجویز کنید

SpecialPollInterval- فاصله خاص نظر سنجی (در چند ثانیه) را برای میزبانهای نظیر به نظیر دستی تنظیم می کند. اگر نظرسنجی سفارشی فعال باشد ، سرویس Windows Time به جای مقدار دینامیکی که با استفاده از الگوریتم های همگام سازی تعبیه شده در سرویس Windows Time ، از فاصله زمانی خود استفاده می کند.

اگر خط مشی ایجاد کرده اید ، باید آن را برای همه کنترل کننده های دامنه اعمال کنید.


سیستم عامل های خانواده Windows شامل سرویس زمان W32Time هستند. این سرویس برای همگام سازی زمان در یک سازمان طراحی شده است. W32Time وظیفه عملکرد هر دو سرویس گیرنده و سرور سرویس زمان را بر عهده دارد و یک کامپیوتر می تواند همزمان یک سرویس گیرنده و یک سرور NTP (NTP - شبکه زمان پروتکل) باشد.

به طور پیش فرض ، Windows Time Service به صورت زیر پیکربندی شده است:

هنگام نصب سیستم عامل ، ویندوز یک سرویس گیرنده NTP راه اندازی می کند که با یک منبع زمان خارجی هماهنگ می شود.

وقتی رایانه ای به دامنه اضافه می شود ، نوع همگام سازی تغییر می کند. همه رایانه های مشتری و سرورهای عضو در دامنه از یک کنترل کننده دامنه برای همگام سازی زمان خود استفاده می کنند.

هنگامی که یک سرور عضو به یک کنترل کننده دامنه ارتقا می یابد ، یک سرور NTP بر روی آن راه اندازی می شود ، که از یک کنترلر با نقش شبیه ساز PDC به عنوان منبع زمان استفاده می کند.

شبیه ساز PDC ، واقع در دامنه ریشه جنگل ، سرور اصلی برای کل سازمان است. در همان زمان ، او خودش نیز با یک منبع زمان خارجی هماهنگ شده است.

این طرح در بیشتر موارد کار می کند و نیازی به مداخله ندارد. با این حال ، ساختار سرویس زمان در ویندوز ممکن است از سلسله مراتب دامنه پیروی نکند و هر رایانه ای را می توان به عنوان منبع زمانی قابل اطمینان تعیین کرد.

به عنوان مثال ، بیایید نگاهی به راه اندازی یک سرور NTP در Windows Server 2008 R2 بیندازیم ، به طور مشابه ، می توانید یک سرور NTP در ویندوز 7 راه اندازی کنید.

راه اندازی سرور NTP

سرویس زمان در ویندوز سرور فاقد رابط کاربری گرافیکی استو از طریق خط فرمان یا با ویرایش مستقیم رجیستری سیستم قابل تنظیم است. بیایید راه دوم را در نظر بگیریم:

سرور NTP باید در حال اجرا باشد. شاخه رجیستری را باز کنید:

HKLM \ System \ CurrentControlSet \ services \ W32Time \ TimeProviders \ NtpServer.

برای فعال کردن سرور NTP ، باید پارامتر Enabled روی 1 تنظیم شود. سپس سرویس time را با دستور مجدداً راه اندازی می کنیم توقف خالص w32time && خالص شروع w32time.

پس از راه اندازی مجدد سرویس NTP ، سرور از قبل فعال است و می تواند به مشتریان سرویس دهی کند. با استفاده از دستور w32tm / query / configuration می توانید این موضوع را تأیید کنید. این دستور لیست کاملی از پارامترهای سرویس را نشان می دهد. اگر بخش NtpServer حاوی خط Enabled: 1 باشد ، همه چیز مرتب است ، سرور زمان در حال اجرا است.

برای اینکه سرور NTP بتواند به سرویس گیرنده ها سرویس دهد ، باید پورت UDP 123 را در فایروال برای ترافیک ورودی و خروجی باز کنید.

تنظیمات اصلی سرور NTP

شاخه رجیستری را باز کنید:

پارامترهای HKLM \ System \ CurrentControlSet \ services \ W32Time \.

NoSync - سرور NTP با هیچ منبع زمانی خارجی هماهنگ نیست. از ساعت سیستم تعبیه شده در تراشه CMOS خود سرور استفاده می شود (به نوبه خود ، این ساعت می تواند از طریق منبع NMEA از طریق RS-232 هماهنگ شود) ؛

NTP - سرور NTP با سرورهای زمانی خارجی که در پارامتر رجیستری NtpServer مشخص شده همگام سازی می شود.

NT5DS - سرور NTP هماهنگ سازی را با توجه به سلسله مراتب دامنه انجام می دهد.

AllSync - سرور NTP از همه منابع موجود برای همگام سازی استفاده می کند.

مقدار پیش فرض برای یک کامپیوتر عضو دامنه NT5DS است ، برای یک کامپیوتر مستقل NTP است.

پارامتر NtpServer سرورهای NTP را مشخص می کند که این سرور زمان را با آنها همگام سازی می کند. به طور پیش فرض ، این پارامتر شامل سرور NTP مایکروسافت (time.windows.com ، 0x1) است ؛ در صورت لزوم ، می توانید چندین سرور NTP دیگر را با وارد کردن نام های DNS یا آدرس های IP آنها با فاصله جدا کنید. در پایان هر نام ، می توانید یک پرچم (به عنوان مثال 0x1) اضافه کنید که حالت هماهنگی با سرور زمان را تعریف می کند.

مقادیر حالت زیر مجاز است:

0 × 1 - SpecialInterval ، با استفاده از فاصله زمانی نظر سنجی ؛

0 × 2 - حالت UseAsFallbackOnly ؛

0x4 - حالت فعال متقارن ، متقارن ؛

0x8 - مشتری ، درخواست را در حالت مشتری ارسال می کند.

یک پارامتر مهم دیگر ، AnnounceFlags ، در کلید رجیستری قرار دارد:

HKLM \ System \ CurrentControlSet \ services \ W32Time \ Config.

این مسئول نحوه ادعای سرور NTP است. برای اعلام سرور عضو (نه یک کنترل کننده دامنه) به عنوان منبع زمانی قابل اعتماد ، پرچم 5 لازم است.

اگر سرور پیکربندی شده ، به نوبه خود یک سرویس گیرنده NTP باشد (به عنوان مثال زمان را از گیرنده GPS از طریق NTP دریافت می کند) ، می توانید فاصله بین به روزرسانی ها را پیکربندی کنید. این پارامتر ممکن است برای رایانه های شخصی مشتری نیز مرتبط باشد. کلید SpecialPollInterval ، واقع در شاخه رجیستری ، مسئول زمان به روزرسانی است:

HKLM \ System \ CurrentControlSet \ services \ W32Time \ TimeProviders \ NtpClient.

در چند ثانیه تنظیم می شود و به طور پیش فرض مقدار آن 604800 است که 1 هفته است. بنابراین ، این بسیار است ارزش این است که مقدار SpecialPollInterval را به یک مقدار معقول - 1 ساعت (3600) کاهش دهید.

پس از تنظیم ، باید پیکربندی سرویس را به روز کنید. این کار را می توان با دستور w32tm / config / update انجام داد.


و چند دستور دیگر برای پیکربندی ، نظارت و تشخیص سرویس زمان:

w32tm / monitor - با استفاده از این گزینه می توانید دریابید که زمان سیستم این رایانه با زمان کنترل کننده دامنه یا رایانه های دیگر تفاوت دارد. مثلا: w32tm / مانیتور / کامپیوترها: time.nist.gov

w32tm / resync - با استفاده از این دستور می توانید کامپیوتر را مجبور کنید که با سرور زمانی که استفاده می کند همگام شود.

w32tm / stripchart - تفاوت زمانی بین رایانه فعلی و رایانه از راه دور را نشان می دهد. تیم w32tm / stripchart / computer:time.nist.gov / samples: 5 / dataonly 5 مقایسه با منبع مشخص شده انجام داده و نتیجه را به صورت متن باز می گرداند.


w32tm / config دستور اصلی است که برای پیکربندی سرویس NTP استفاده می شود. با کمک آن می توانید لیستی از سرورهای زمان استفاده شده ، نوع همگام سازی و موارد دیگر را تنظیم کنید. به عنوان مثال ، برای لغو مقادیر پیش فرض و پیکربندی همگام سازی زمان با یک منبع خارجی ، می توانید از دستور استفاده کنید w32tm / config / syncfromflags: manual /manualpeerlist:time.nist.gov / بروزرسانی


w32tm / query - تنظیمات فعلی سرویس را نشان می دهد. به عنوان مثال ، دستور w32tm / query / source منبع فعلی زمان را نشان می دهد ، و w32tm / query / configuration تمام پارامترهای سرویس را نشان می دهد.

net stop w32time - در صورت شروع سرویس زمان را متوقف می کند.

w32tm / لغو ثبت نام - سرویس زمان را از کامپیوتر حذف می کند.

w32tm / Register - سرویس زمان را در رایانه ثبت می کند. در این حالت ، کل شاخه پارامترهای موجود در رجیستری از نو ایجاد می شود.

شروع خالص w32time - سرویس را شروع می کند.

ویژگی های مشاهده شده در ویندوز 7 - سرویس Time با شروع ویندوز به طور خودکار شروع نمی شود. در SP1 برای ویندوز 7 رفع شد.