İçeriğe atla

Network Time Protocol

Zaman Protokolü ( NTP ) , paket anahtarlamalı , değişken gecikmeli veri ağları üzerinden bilgisayar sistemleri arasında saat senkronizasyonu için bir ağ protokolüdür . 1985'ten beri kullanımda olan NTP, şu anda kullanımda olan en eski İnternet protokollerinden biridir. NTP, Delaware Üniversitesi'nden David L. Mills tarafından tasarlanmıştır.[1]

NTP, hala kullanılan en eski Internet protokollerinden biridir. (1985'ten beri). İlk olarak gönüllü bir ekip ile bu konuda destek sağlamaya devam eden Delaware Üniversitesinden David L. Mills tarafından tasarımlanmıştır.

NTP, 123 no'lu port üzerinden, Kullanıcı Datagram Protokolü (UDP)'nü kullanır.

NTP ayarları hangi dağıtımın kullanıldığına bağlı olarak ya /etc/ntp.conf ya da /etc/xntp.conf dosyasından yapılır.

NTP, katılan tüm bilgisayarları Eşgüdümlü Evrensel Zaman'ın ( UTC) birkaç milisaniye içinde senkronize etmeyi amaçlamaktadır .  Doğru zaman sunucularını seçmek için Marzullo'nun algoritmasının değiştirilmiş bir versiyonu olan kesişme algoritmasını kullanır ve değişken ağ gecikmesinin etkilerini azaltmak için tasarlanmıştır. NTP genellikle halka açık İnternet üzerinden onlarca milisaniye içinde zaman tutabilir ve ideal koşullar altında yerel alan ağlarında bir milisaniyeden daha iyi doğruluk elde edebilir. Asimetrik rotalar ve ağ tıkanıklığı 100 ms veya daha fazla hatalara neden olabilir.

Protokol genellikle bir istemci-sunucu modeli olarak tanımlanır , ancak her iki eşin diğerini potansiyel bir zaman kaynağı olarak gördüğü eşler arası ilişkilerde de kolaylıkla kullanılabilir .  Uygulama, 123 numaralı bağlantı noktasında Kullanıcı Datagram Protokolü'nü (UDP) kullanarak zaman damgaları gönderir ve alır.  Ayrıca , istemcilerin bir ilk turdan sonra zaman güncellemelerini pasif olarak dinlediği yayın veya çoklu yayın kullanabilirler. -yol kalibrasyon değişimi.  NTP, yaklaşan herhangi bir artık saniye için bir uyarı sağlarayarı yapılır, ancak yerel saat dilimleri veya yaz saati uygulaması hakkında hiçbir bilgi iletilmez.

Geçerli protokol sürüm 4'tür (NTPv4),  , sürüm 3 ile geriye dönük uyumludur.

NTP konfigürasyon dosyaları

NTP konfigürasyon dosyası /ect/ntp.conf, xntpd “daemon” unun başlangıçta kullandığı şu bilgileri içerir:

  * Olası senkronizasyon sunucularının listesi
  * Hangi kriterlere göre senkronizasyon sunucunun seçileceği 
  * Sunucunun ana makineye bağlanırken içerdiği kısıtlamalar
  * NTP paketlerinin ağda yayınlanıp yayınlanmayacağı
  * Broadcast (tüme gönderim) NTP paketlerinin dinlenip dinlenmeyeceği
  * Multicast (çoğa gönderim) NTP paketlerinin dinlenip dinlenmeyeceği
  * Driftfile dosyasının yeri
  * NTP bağlantılarının görüntülenip görüntülenmeyeceği
  * Ana makineye konfigürasyon yenileme izninin verilip verilmeyeceği

İstemci modunda sunucu diğer sunuculara o anki zamanı almak için kontrol eder. Tüm sunucular kontrol edildikten sonra ana makine hangi sunucuya senkronize edileceğini seçer. Sunucuyu istemci modda yapılandırmak için NTP konfigürasyonunda kontrol edilecek sunucuların adının ve ip adresinin bulunduğu bir sunucu cümlesi olmalıdır.

NTP çalışma modları

Sistem xntpd “daemon” u ve aşağıdaki metotlar kullanılarak diğer sunucularla senkronize edilebilir:

  * İstemci modu
  * Broadcast ya da multicast istemci modu
  * Simetrik aktif mod

İstemci modu: Bu modda sunucu diğer sunuculardan o anki zamanı almak için kontrol yapar. Tüm sunucular kontrol edildikten sonra yerel ana makine hangi sunucuyla senkronize edileceğini seçer. Sunucuyu istemci modda yapılandırmak için NTP konfigürasyonunda kontrol edilecek adının ve ip adresinin bulunduğu bir sunucu cümlesi olmalıdır.

NTP referans uygulaması , protokolle birlikte 20 yılı aşkın bir süredir sürekli olarak geliştirilmiştir. Yeni özellikler eklendikçe geriye dönük uyumluluk sağlanmıştır. Farklı algoritmalar kullanan sunucularla senkronize edildiğinde yanlış davranabilen, özellikle saati disipline etmek için birkaç hassas algoritma içerir. Yazılım, kişisel bilgisayarlar da dahil olmak üzere hemen hemen her bilgi işlem platformuna taşınmıştır. Unix altında ntpd adlı bir arka plan programı olarak veya Windows altında bir hizmet olarak çalışır. Referans saatler desteklenir ve ofsetleri, genellikle daha sık sorgulanmalarına rağmen, uzak sunucularla aynı şekilde filtrelenir ve analiz edilir. Bu uygulama 2017'de denetlendi ve 14 olası güvenlik sorunu bulundu.

NTP, eski Zaman Protokolü kullanımının yerini aldığından , bazı kullanım durumları yine de tam protokolü çok karmaşık bulmaktadır. 1992 yılında, bu boşluğu doldurmak için Basit Ağ Zaman Protokolü ( SNTP ) tanımlandı. SNTPv3 standardı, NTPv3'ü kullanmanın bir yolunu açıklar, böylece uzun süreler boyunca durum depolaması gerekmez. Topoloji, yalnızca bir sunucu kullanıldığından, esas olarak Zaman Protokolü ile aynı hale gelir.  1995'te SNTP, o zamanlar geliştirilmekte olan NTPv4'ün bazı özellikleriyle SNTPv4 olarak güncellendi;  mevcut en son sürüm, SNTPv4'ün 2010 revizyonu olan ve onu ana NTPv4 standardıyla birleştiren RFC 5905'tir. SNTP, yeni bir protokol tanımlamadığından NTP ile tamamen birlikte çalışabilir.  Bununla birlikte, basit algoritmalar, azaltılmış doğruluk süreleri sağlar ve bu nedenle, bir SNTP kaynağından zamanın senkronize edilmesi tavsiye edilmez.

Windows Saati

Broadcast ve multicast modları: Bu modda sunucu yoklama yapmaz, yerel ağdaki tüme gönderim ve çoğa gönderim NTP paketlerini dinler. Bir sunucuyu bu modlardan birinde yapılandırmak için NTP konfigürasyon dosyasının “broadcast yes” ya da “multicast yes” cümleciğini içermesi gerekir. Yerel zaman sunucuları tüme gönderim modu tüme gönderim konfigürasyon cümleciğiyle yapılandırılmalıdır, çoğa gönderim modu ise çoğa gönderim konfigürasyon cümlesiyle yapılandırılmalıdır. Bir sunucunun NTP istemcisi olarak yapılandırılması için istemci yöneticisi kullanılabilir.

NTP paylaşılan bilgisayarlarda kimlik doğrulama

NTP paylaşılan bilgisayarlardan gelen senkronizasyon isteklerinde kimlik doğrulama için şu ayarlar yapılır:

1. Öncelikle kimlik doğrulama isteklerinde kullanılmak için bir grup anahtar yaratılmalıdır. Kimlik doğrulama tanımlaması yapılandırmak istediğimiz her sunucu için /etc/inet/ntp.conf dosyasına aşağıdaki satırlar eklenmelidir:

authenticate yes
keys /etc/inet/ntp.keys

2. Aşağıdaki satır /etc/ntp.conf dosyasına eklenir:

trustedkey ID1 ID2 ... IDn
Bu satır kimlik doğrulamada kullanılacak anahtarların listesidir.

3. ntpd'nin konfigürasyon dosyasını tekrar okuması için aşağıdakiler yapılmalıdır. Bu sayede yapılan değişiklikler geçerli olacaktır:

  • İşlem id'si ps komutuyla işlemlerden bulunduktan sonra kill komutuyla servisin çalışması kapatılır ve sonra tekrar başlatılır.
  • Çalışan konfigürasyon dosyasında izin verilmeyi bekleyen yeni bir anahtar varsa ntpd çalıştırılıp readkeys komutu çalıştırılır.

Driftfile

Driftfile (yığılım dosyası) /etc/ntp.conf içerisindedir ve bu ntpd’yi söyler ki bu saat yığılmasının yani sistem saatinin frekans hatasının nerede bulunabileceğini gösterir. Eğer dosya başlangıçta varsa, okunur ve bunun değeri ntpd nin frekans hatasının değerini başlatır. Saat başı ntpd tarafından güncellenir. Ntpd sunucusuna iyi bir şekilde bağlanması hesaplandığı için bir yığılım dosyası mutlaka olmalıdır.

Kaynakça

  1. ^ Baran, Paul (1964). On Distributed Communications: I. Introduction to Distributed Communications Networks (İngilizce). RAND Corporation. doi:10.7249/rm3420. 21 Kasım 2019 tarihinde kaynağından arşivlendi. Erişim tarihi: 21 Mayıs 2023. 

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">Sunucu (bilişim)</span> bilgisayar ağlarında, diğer ağ bileşenlerinin (kullanıcıların) erişebileceği, kullanımına ve/veya paylaşımına açık kaynakları barındıran bilgisayar birimi

Sunucu, bilişim alanında "istemci" denilen diğer program ve cihazlara çeşitli işlevler sunan bilgisayar donanımları veya yazılımlarıdır. Bu mimariye istemci-sunucu modeli denir. Sunucular, istemciler arasında veri veya kaynak paylaşımı, bir istemci için hesaplama yapma gibi çeşitli işlevleri yerine getirebilirler. Bu işlevlere genellikle "servis" veya "hizmet" denir. Tek bir sunucu çok sayıda istemciye hizmet verebilir, tek bir istemci de çok sayıda sunucudan hizmet alabilir. İstemci ve sunucu aynı cihaz üzerinde çalışabileceği gibi, istemci ağ üzerinden farklı bir cihazdaki sunucuya da bağlanabilir. Tipik sunucular arasında veritabanı sunucuları, dosya sunucuları, e-posta sunucuları, yazdırma sunucuları, web sunucuları, oyun sunucuları ve uygulama sunucuları sayılabilir.

<span class="mw-page-title-main">Dosya aktarım iletişim kuralı</span> Bilgisayarcılık terimi

Dosya aktarım iletişim kuralı,, bir veri yığınının - ASCII, EBCDIC ve binary- bir uç aygıttan diğerine iletimi için kullanılmaktadır.

<span class="mw-page-title-main">IPv6</span> İnternet protokolünün 6. versiyonu

Internet Protocol Version 6 kısaca IPv6, aslında 32 bitlik bir adres yapısına sahip olan IPv4'ün adreslemede artık yetersiz kalması ve ciddi sıkıntılar meydana getirmesi üzerine IETF tarafından geliştirilmiştir.

Ağ Dosya Sistemi, Network file system, yani ağ dosya sistemi diğer bilgisayarlardaki dosyalara erişilebilmesini sağlayan bir yerel ağ işletim sisteminin parçasıdır. Bilgisayarlarda kullanılan programların network makinalarında kullanılmasını sağlar. Sun Microsystems tarafından 1984 yılında geliştirilmiş, ağdaki bilgisayarların ortak bir dosya sistemine, yerel diskleri kadar kolay ulaşmasını sağlayan, RPC temelli dağıtık dosya sistemi yapısıdır.

<span class="mw-page-title-main">Sanal özel ağ</span> Uzaktan erişim yoluyla farklı ağlara bağlanmayı sağlayan internet teknolojisi

Sanal Özel Ağ, uzaktan erişim yoluyla farklı ağlara bağlanmayı sağlayan bir internet teknolojisidir. VPN, sanal bir ağ uzantısı oluşturarak, ağa bağlanan cihazların fiziksel olarak bağlıymış gibi veri alışverişinde bulunmasına olanak tanır. Basitçe, İnternet veya diğer açık ağlar üzerinden özel bir ağa bağlanmayı mümkün kılan bir bağlantı türüdür.

<span class="mw-page-title-main">DHCP</span>

DHCP, ağda bulunan her bir bilgisayarın IP adresi, alt ağ maskesi, varsayılan ağ geçidi ve DNS sunucuları gibi ağ bağlantısı ayarlarının otomatik olarak atamasını sağlar. Bu sayede ağ yöneticileri, ağdaki her bir bilgisayarın IP adresi ve diğer ağ bağlantısı ayarlarını elle girerek zaman kaybetmek yerine, DHCP sunucusu üzerinden bu bilgileri otomatik olarak atayarak daha verimli ve güvenilir bir ağ yönetimi yapabilirler. Bu sayede sistem yönetim işlemi de kolaylaşmış olur. Ayrıca UDP, TCP'ye dayalı herhangi bir iletişim protokolünün ve DNS, NTP gibi ağ hizmetlerinin kullanımına olanak sağlar.

<span class="mw-page-title-main">Vekil sunucu</span>

Vekil sunucu veya yetkili sunucu, İnternet'e erişim sırasında kullanılan bir ara sunucudur. Bu durumda, örneğin bir ağ sayfasına erişim sırasında doğrudan bağlantı yerine:

<span class="mw-page-title-main">İstemci-sunucu</span>

İstemci-sunucu, istemciyi sunucudan ayıran bir ağ mimarisidir. Her bir istemci yazılımı, sunucuya ya da uygulama sunucusuna isteklerini (request) gönderir.

<span class="mw-page-title-main">Transport Layer Security</span> Internet Şifreleme Protokolü

Taşıma Katmanı Güvenliği (TLS) ve onun öncülü/selefi olan Güvenli Soket Katmanı (SSL), bilgisayar ağı üzerinden güvenli haberleşmeyi sağlamak için tasarlanmış kriptolama protokolleridir. X.509 sertifikalarını kullanırlar ve bundan dolayı karşı tarafla iletişime geçeceklerin kimlik doğrulaması asimetrik şifreleme ile yapılır ve bir simetrik anahtar üzerinde anlaşılır. Bu oturum anahtarı daha sonra taraflar arasındaki veri akışını şifrelemek için kullanılır. Bu, mesaj/veri gizliliğine ve mesaj kimlik doğrulama kodları için mesaj bütünlüğüne izin verir. Protokollerin birçok versiyonu ağ tarama, elektronik mail, İnternet üzerinden faks, anlık mesajlaşma ve İnternet üzerinden sesli iletişim gibi uygulamalarda yaygın olarak kullanılmaktadır. Bu durumda/içerikte/bağlamda en önemli özellik iletme gizliliğidir. Bundan dolayı kısa süreli oturum anahtarı, uzun süreli gizli simetrik anahtardan türetilememelidir.

Trivial File Transfer Protocol (TFTP) 1980 yılında tanımlanmış, FTP' nin temel fonksiyonel şekli olarak ifade edilen basit bir dosya transfer protokolüdür.

Datagram Congestion Control Protocol (DCCP), mesaj tabanlı bir Ulaşım katmanı protokolüdür.

<span class="mw-page-title-main">IPTV</span>

IPTV, İnternet protokolü üzerinden görüntü ve ses aktarımı.

Bilgisayar ağları konusunda geçen Önyükleme Protokolü veya BOOTP, bir yapılandırma sunucusundan bir IP adresi almak için bir ağ istemcisi tarafından kullanılan bir ağ protokolüdür. BOOTP protokolü ilk olarak RFC 951 içerisinde tanımlanmıştı.

Uzak yordam çağrısı (ya da uzak prosedür çağrısı; İngilizce: Remote Procedure Call , bir diğer adres uzayı üzerinde programcı açıkça bu uzaktan etkileşim detayları kodlama olmadan çalıştırmak için bir alt yordam veya prosedürü sağlayan bilgisayar programına izin veren süreçler arası iletişim teknolojisidir. Sunucu üzerindeki servisleri kontrol ettiğimizde karşımıza çıkan RPC, arka plânda birçok şeyi gerçekleştiren bir servistir. RPC, temelde istemci ve sunucu arasında yapılan işlemlerin iletişimi için tasarlandı. Bir işlemin gerçekleşmesi için bir gönderici ve bir de istemci vardır.. Yani programcı, alt prosedür ister çalışan programın yerelinde ister uzağında olsun, temelde aynı kodu yazar. Bu bir tür istemci-sunucu etkileşimidir ve tipik olarak bir istek-yanıt mesaj geçirme sistemi aracılığıyla uygulanır. Nesne yönelimli programlama modelinde, RPC'ler uzaktan yöntem çağırma ile temsil edilir. RPC modeli bir konum şeffaflığı seviyesini ifade eder, yani çağrı prosedürleri yerel ya da uzak olsun büyük ölçüde aynıdır, ancak genellikle aynı değildirler, bu nedenle yerel çağrılar uzak çağrılardan ayırt edilebilir. Uzak çağrılar genellikle yerel çağrılardan çok daha yavaş ve daha az güvenilirdir, bu nedenle bunları ayırt etmek önemlidir.

Yayın adresi, ağlar arası iletişimde, gönderilen bilgi paketinin çoklu erişime bağlı tüm cihazlar tarafından alınmasının istendiğini belirten özel bir adrestir. Bilgisayarların yayın adresine gönderilen mesaj spesifik olarak tek bir bilgisayar tarafından alınmaz, mesaj ağa bağlı tüm bilgisayarlar tarafından alınır.

SYN çerezleri, SYN saldırılarına karşı korunmak için kullanılan bir tekniğin en önemli unsurudur. İlk olarak Daniel J. Bernstein tarafından bulunmuştur, bu kişi "TCP sunucuları tarafından TCP sıra numaraları başlangıç değerlerinin belirli seçenekleridir" diyerek SYN cookies tanımlaması yapmıştır. Özellikle, SYN cookies kullanımı, SYN kuyruğu üste doldururken bağlantıların düşmesini engellemek için bir sunucu kabul eder. Bu sunucu istemciye uygun SYN+ACK cevabı geri döner fakat SYN kuyruk girişi atılır. Eğer sunucuya istemciden altsıralı ACK cevabı ulaşırsa sunucu TCP sıra numarasındaki şifrelenmiş bilgiyi kullanarak SYN kuyruk girişini tekrar yapılandırabilir.

Tünel protokolü, bir ağ protokolü farklı bir yük-taşıma protokolü içerdiğinde bilgisayar ağ bağlantısı, bir tünel protokolü kullanır. Tünel protokolü kullanılarak, uyumsuz olan bir iletim protokolü üzerinde bir yük-taşıma taşınabilir ya da güvenilmeyen ağlarda güvenli bir yol oluşumu sağlanabilir.

<span class="mw-page-title-main">Windows Server 2016</span>

Windows Server 2016, Windows 10 ile eş zamanlı olarak geliştirilen, Windows NT işletim sistemleri ailesinin bir parçası olarak Microsoft tarafından geliştirilen bir sunucu işletim sistemidir. İlk erken önizleme sürümü, Microsoft Servers ilk teknik önizleme ile birlikte 1 Ekim 2014 tarihinde mevcut oldu. İstemci işletim sistemi ile eş zamanlı olarak yayımlanmış olan önceki Windows Server sürümlerinin aksine, Windows Server 2016 Ekim 2016 için planlanan genel durumu ile Microsoft Ignite toplantısında 26 Eylül 2016 tarihinde serbest bırakıldı.

Güvenli kabuk,, ağ hizmetlerinin güvenli olmayan bir ağ üzerinde güvenli şekilde çalıştırılması için kullanılan bir kriptografik ağ protokolüdür. En iyi bilinen örnek uygulaması bilgisayar sistemlerine uzaktan oturum açmak için olandır.

<span class="mw-page-title-main">Zeroshell</span>

Zeroshell, ağ hizmetleri sağlamayı amaçlayan sunucular ve gömülü sistemler için küçük bir açık kaynaklı Linux dağıtımıdır. Yönetimi web tabanlı bir grafik arayüze dayanır; yönetmek ve yapılandırmak için kabuk gerekmez. Zeroshell, Canlı CD, CompactFlash görüntüleri ve VMware sanal makineleri olarak mevcuttur.