İSMET AKTAR ANADOLU TEKNİK LİSESİ - Bilişim Teknolojileri –
AĞ TEMELLERİ Durhan GABRALI
Şafak KOCABIYIK
1
Ağ Temelleri II.Dönem Modül Adı : TCP/IP ve IP Adresleme TCP/IP ‘ye Giriş * 1960’ların sonu, 1970’lerin başı : Amerikan Savunma Bakanlığına (Pentagon) bağlı İleri Araştırma Projeleri Ajansı tarafından Paket Anahtarlamalı ağ deneyleri üzerinde çalışılıyor. ARPA -> Advanced Research Project Agensy2
Amaç: ABD’deki stratejik bilgisayarların bir fela – ket anında ayakta kalabilmesi , birbirleriyle ileti– şimin devam etmesi
Bu çalışmaların neticesinde ARPANET adında Paket Anahtarlamalı Ağ oluşmaya başladı. Bu ağ, ABD’deki üniversite ve araştırma kuruluşlarının deği3 şik tipteki bilgisayarlarını da içererek büyüdü.
* TCP/IP’nin kökleri ARPA ve ARPANET’e dayanır. ARPANET daha sonraları genişleyerek günümüzde INTERNET haline gelmiştir. * TCP/IP’nin tarihi aynı zamanda INTERNET’in de tarihidir. TCP/IP , INTERNET’in temelidir. * INTERNET’in belirli bir sahibi yoktur, fakat INTERNET ve TCP/P’yi düzenleyen gönüllü kuruluşlar vardır. Bunlar: - ISOC ( Internet Society : İnternet Derneği ) 1992’de oluşturulmuştur. İnternet’te kullanılan teknolojileri , uygulamaları , kuralları belirler. 4 Her ülkede yerel ISOC’lar bulunur.
IAB ( Internet Architecture Board) ISOC içinde teknik kuralları öneren kuruldur. Bu Kurulun altında üç kurul bulunur. Internet’i düzenleyenler de aslında bunlardır. - Internet Engineering Task Force (Internet Mühendislik Görev Gücü) Internet standartlarını oluşturur, teknik sorunlara çözüm üretir. - Internet Assigned Number Autority (Internet Nu – mara Atama Merkezi) Internet’te kullanılan protokolleri belirler ve gelecek için planlama yapar. - Internet Research Task Force (Internet Araştırma Görev Gücü) 5 TCP/IP ile ilgili araştırma projelerinden sorumludur.
RFC (Reguest for Comment) Internet standartları RFC dokümanları ile tanımlanır. Her Internet protokolü veya mekanizması için bunları tanımlayan bir RFC vardır. Ör:) TCP (Transmission Control Protocol ) RFC 793 Telnet RFC 854 HTTP 1.0 RFC 1945 SMTP RFC 821 tanımlanmışlardır. 6
Neden TCP/IP Protokolü? Bir ağ ortamında bilgisayarların birbirleriyle haberleşebilmesi için ağ protokolleri kullanılır.Kullanılabilecek bir çok ağ protokolü vardır. Günümüzde yaygın olarak kullanılan ağ protokollerinden bazıları şunlardır: - NetBEUI - IPX/SPX - TCP/IP Bu protokollerden kurulması en kolay olanı ve en hız – lısı NetBEUI , en zoru ve en yavaşı ise TCP/IP’dir. IPX/SPX ise iki bakımdan da ortadadır. O halde neden TCP/IP Internet’in protokolüdür? 7
NetBEUI’nin iki temel sorunu var. Birincisi firmaya özel olması. Bu protokolü Microsoft ve IBM kendi bilgisayarları için geliştirmişlerdir. İkinci temel sorun NetBEUI’nin Yönlendirilebilir (routable) olmaması. IPX/SPX hem yönlendirilebilir bir protokoldür hem de TCP/IP’ye göre daha hızlıdır, yapılandırılması da daha kolaydır. Ama bu protokolün bir sahibi vardır. (Novell firması). Bu protokol kullanıldığında sahibine para ödenmesi gerekir. TCP/IP hız olarak yavaş olmasına ve zor yapılandırıl masına rağmen şu andaki tek seçenektir. Çünkü TCP/IP Internet’in kullandığı protokoldür ve çok yaygınlaşmıştır. Üstelik sahibi yoktur ve herkese açıktır. 8
TCP/IP : Internet’in Protokolü Transsmision Control Protokol / Internet Protocol (İletimi Denetleme Protokolü / Internet Protokolü) TCP/IP tek bir protokol değildir. Herbiri değişik işler yapan bir yığın protokolden oluşur. TCP/IP ile kurulan bir bilgisayar ağında bir bilgisayarı üç parametre ile tanımlanır: * Bilgisayarın adı * IP adresi * MAC adresi 9
Bilgisayarın ismi kullanıcılar tarafından işletim sistemi yüklenirken bilgisayara verilen addır. ( MUHASEBE , AHMETPC , PC1 , BTSERVER gibi…) IP adresi ise 131.108.3.101 gibi dört bölümden oluşan bir adrestir. Nokta ile bir diğerlerinden ayrılan bu bölümlerin herbiri 0 ile 255 arasında bir değer alabilir. MAC adresi 0020AFF8E771 örneğinde olduğu gibi onaltılık düzende rakamlardan oluşur. 48 bitlik bu adrese donanım adresi yada fiziksel adres de denir. Ağ üzerinde iletişim aslında MAC adresleri ile gerçekleşir. Çünkü IP adresleri TCP/IP protokolüne özeldir. Başka bir protokolde , örneğin NetBEUI protokolünde IP 10 adresi diyene bir şey yoktur.
Bilgisayarların adları ise sistemden sisteme değişiklik gösterir. Örneğin Microsoft işletim sistemine sahip bilgisayarların adları 15 karakter iken , Internet ortamında adlar 255 karaktere kadar çıkabilir. Bütün protokollerde değişmeden kalan tek MAC adresidir. Ethernet yada Token Ring teknolojileri yanlızca fiziksel adres olan MAC adresini kullanabilirler. IP adresi ise, TCP/IP protokolünün bir parçasıdır. NetBEUI yada IPX/SPX’de böyle bir adres yoktur. TCP/IP’de bulunulan ağ par – çasını parçasını saptama ve alt ağlara ayırma işlemi için IP adreslerine gerek duyulur. Bilgisayar ağlarında IP adreslerini MAC adreslerine çeviren protokol ARP (Adress Resolution Protocol) dir. ARP , TCP/IP protokol kümesinin bir üyesidir. 11
Bir ağda iletişime geçeceği bilgisayarın IP adresini bilen bir bilgisayar ARP protokolü ile bir mesaj oluşturur ve bunu Broadcast yapar. Yani ağdaki tüm bilgisayarlara gönderir. Bu mesaj “Bu IP adresi kiminse bana MAC adresini bildirsin” şeklindedir. Bu IP adresinin sahibi olan bilgisayar kendi MAC adresini ilgili bilgisayara bildirir. Bundan sonra iki bilgisayar arasında doğrudan haberleşme gerçekleşebilir. Bir Bilgisayar IP adresini nasıl alır? Bunun iki yolu vardır: * IP adresinin kullanıcılar tarafından elle girilmesi * Belli bir IP havuzundan otomatik olarak alınması IP adreslerini otomatik olarak dağıtan servisin ismi DHCP’dir. DHCP Dynamic Host Configuration Protocol ( Dinamik yapılandırma Protokolü) 12
Bilgisayar adları IP adreslerine nasıl çevriliyor? Bilgisayar dünyasında bilgisayarların iki tane adı vardır. Birincisi en çok 15 karakter olabilen NetBIOS adı. Bu ada örnek olarak “MUHASEBE” , “PC1” , “BTSERVER” verebiliriz. Diğeri ise 255 karakter olabilen Internet ortamındaki “host” adıdır. Host adına örnek olarak “muhasebe.altinadam.com.tr” Bilgisayar adları iki tane olunca ad / IP eşleştirme (çözümleme) mekanizmaları da iki tane olur. Micrsoft , NetBIOS adlarını IP ad – reslerine çevirme konusunda WINS kullanır. WINS “Windows Internet Name Service) Host adlarını IP’ye çevirme konusunda ise hem Microsoft, hem de Internet dünyası DNS mekanizmasını kullanır. DNS Domain Name System 13 ( Domain Adı Sistemi)
Eğer bir ağda WINS sunucusu varsa, ağdaki bilgisayarlar adlarını ve IP adreslerini buna bildiriyorlar. Böylece WINS üzerinde ortamdaki bilgisayarların adları ve IP adreslerine ilişkin bir veritabanı oluşur. Bir bilgisayar NetBIOS adını bildiği bilgisayarın IP adresini bulmak için Broadcast yapmak yerine WINS sunucusuna başvurur. Bilgisayarlar ortamda WINS sunucusunun var olup olmadığını nasıl anlarlar? * Birincisi WINS sunucu adresi elle girilebilir. * Diğer seçenek ise WINS sunucu adresinin otomatik alınması. DHCP Servisinden otomatik IP adresi alan bilgisayarlar ortamdaki WINS sunucusunun adresini de öğreniyorlar ve gidip WINS sunucusuna kendilerini kaydettiriyorlar. 14
Aynı yapı DNS’te de geçerlidir. Yani DNS sunucusunun adresi ya elle girilir yada DHCP sunu – cusundan otomatik olarak alınabilir. • • • • • •
ÖZET TCP/IP bir protokoller kümesidir. TCP/IP Internetin protokolüdür TCP/IP son yıllarda Internet’in yanı sıra Yerel Bilgisayar Ağlarının da da hızla yaygınlaşmıştır. TCP/IP içindeki DHCP, bilgisayarlara otomatik olarak IP yapılandırması sağlamak için kullanılır. ARP , IP adresini MAC adresine çevirir. WINS, NetBIOS adlarını IP adresine çevirir. DNS, Host adlarını IP adresine çevirir.
15
TCP / IP ‘nin Yapısı : * OSI ve TCP/IP modelinin mukayesesi TCP/IP
Uygulam a Taşıma Internet Ağ erişim
OSI
Uygulam a Sunum Oturum Taşıma Ağ Veri bağı Fiziksel
16
OSI Katmanlarında Protokoller: 7
Uygulama
6
Sunum
5
Oturum
4
Taşıma
3
Ağ
2
Veri bağı
1
Fiziksel
FTP,TFTP,HTTP,SMTP,DNS,TELNET,SNMP
TCP (Internet)
IP (Internet)
Ethernet (En popüler LAN teknolojisi)
17
18
TCP/IP referans modelinin katmanları: TCP/IP
Uygulama
Application layer
Taşıma
Transport layer
Internet
Internet layer
Ağ erişim
Network access
19
TCP/IP protokol grafiği: Uygulam a
Windows Sockets
Net BIOS
Taşıma Internet
ICMP
ARP
IGMP
Ağ erişim Ethernet , Token-Ring , FDDI , Frame Realy , X-25 SLIP , PPP
20
TCP / IP Modelinde Katmanlar ve İşlevleri Ağ Erişim Katmanı (Network Access Layer) Bilgisayarda fiziksel olarak bulunan ağ kartı , hub’lar, switch’ler , kabloları v.b. elemanlardan oluşur. Veri paketlerinin ağada elektriksel olarak iletilmesinden ve ağadan çekilmesinden bu katman sorumludur. İnternet Katmanı (Internet Layer) Bu katmanda veri paketleri IP’ye göre düzenlenir.İletim Katmanından gelen veriler burada İnternet Paketleri haline geliyor. Paketlerin yönlendirilmesi ile ilgili işlemler de burada yapılıyor.Bu katmanda 4 adet protokol bulunur: * ARP: IP adreslerini MAC adresine çeviriyor. * ICMP : Kontrol mesajları gönderip karşılığında gitti – gitmedi bilgisi sağlıyor. Örnek:) PING komutu bu protokolü21 kullanır.
* IGMP : Multicast grupları belirlemek içn kullanılır. Not: Bir ağda mesajlar üç şekilde gönderilir. - Broadcast : Mesaj bütün makinelere gider. - Multicast : Mesaj belirli bir gruba gider. - Unicast yada Directed :Mesaj doğrudan bir makineye gider. * IP : Paketlerin adresleme ve yönlendirme işlemini yapar. Bağlantısız (connectionless) bir protokoldür. İletim Katmanı (Transport Layer) Bilgisayarlar arası iletişim için oturumlar düzenlenir. Burada iki seçenek söz konusudur. * TCP: Bağlantılı (connection-oriented) ve güvenilir bir iletişim sağlar. Buradaki bağlantı mantıksal bir bağlantıdır. İki bilgisayarın karşılıklı olarak iletişim kuralları için anlaşması demektir. Gönderilen paketler için bir onay mesajı 22 beklenilir. Belli bir süre içinde onay mesajı gelmez ise
paket tekrar gönderilir. Buda iletimin güvenli olması anlamına gelir. * UDP : Bağlantısız ve güvenilir olmayan bir iletişim sunar. Karşı tarafla iletim için bir anlaşma gerekmez ve giden mesajların yerine ulaşıp ulaşmadığı kontrol edilmez. Buda daha hızlı bir veri iletişimi sağlar. Verinin çok hızlı şekilde karşı tarafa iletilmesi istenilen durumlarda bu protokol kullanılır. Uygulama Katmanı ( Application Layer): Ağ üzerinde iş yapacak uygulamaların bulunduğu katmandır. FTP, DNS , WINS gibi uygulamalar, PING benzeri komutlar bu katmanda bulunur. 23
Windows Sockets (WinSock) Ağ işlevleri içeren bir uygulama geliştirebilmek için kullanılabilecek iki tane yapı yada arabirim vardır. - NetBIOS Spesifikasyonu - Windows Sockets Spesifikasyonu Bir programı NetBIOS Spesifikasyonu ile yazarsanız bu program Microsoft işletim sistemleri altında çalışır, diğer işletim sistemlerinde çalışmaz. Eğer ağ üzerinde çalışan programlar Windows Sockets Spesifikasyonları ile yazılırsa her işletim sisteminde çalışır. WinSock , Sockets yapısının Windows uyarlamasıdır. Sockets TCP/IP ortamında uygulama geliştirebilmek için kullanılabilecek bir programlama arabirimidir. 24
Bir Socket Uygulaması üç şey ile tanımlanır. - Bilgisayarın IP Adresi - Hizmet Tipi (TCP yada UDP) - Kullanılan port Bir socket programı bulunduğu bilgisayarda kendisini port numarasıyla belirlemek zorundadır ve karşı taraf da bir port numarasıyla ilişkiye geçmek zorundadır. Port numaraları 0 ile 65535 arasında yer alır. 0 ile 1023 arasındakiler iyi bilinen port numaralarıdır. Bunlar internet ortamında standart hizmetler tarafından kullanılır. Ör) DNS hizmeti 53 nolu portu, HTTP ise 80 nolu portu kullanır \ windows \ system32 \ drivers \ etc klasöründe bulunan services 25 dosyasında bunlar
# Copyright (c) 1993-1999 Microsoft Corp. # # This file contains port numbers for well-known services defined by IANA # # Format: # # <service name> <port number>/<protocol> [aliases...] [#] # echo echo discard discard systat systat daytime daytime qotd qotd chargen
7/tcp 7/udp 9/tcp 9/udp 11/tcp 11/tcp 13/tcp 13/udp 17/tcp 17/udp 19/tcp
sink null sink null users users
#Active users #Active users
quote quote ttytst source
#Quote of the day #Quote of the day #Character generator
26
* TCP / IP protokolüne uygun olarak kullanıcılar tarafından yazılan diğer programlar da birer port numarası kullanmalıdırlar. * Bu programların port numaraları 1024 ile 65536 arasında yer almaktadır.
TCP (Transmission Control Protokol) TCP , bağlantılı (connection-oriented) ve güvenilir (reliable) bir iletişim sağlar. Buradaki bağlantılı ifadesi şu anlama gelir: Bilgisayarlar iletişime geçmeden önce aralarında bir oturum (session) açarlar. Güvenilir iletişim ise bir bilgiyi karşı tarafa gönderdiğinizde, karşı tarafın eline ulaştığından emin olmaktır. Bu da bir onay mesajı ile mümkün olur. (ACK – Acknowledge ) 27
TCP/IP kümesi içinde kritik işler yapan protokoller ve hizmetler verilerini TCP ile iletirler. Örnek:) 21 FTP , 80 HTTP Ağ İzleyicisi programı ile TCP iletişimini gözlemlemek:
Yukarıdaki şekilde görüldüğü gibi bir TCP oturumu açılırken ilk Olarak 3 adet veri çerçevesi (frame) gidip-gelir. 28
* Gelip-giden bu üç çerçevenin amacı veri paketlerinin geliş ve gidişi senkronize etmek, karşı tarafa tampon bellek miktarı hakkında bilgi vermek ve TCP bağlantısını kurmaktır. * Daha sonra dosya paylaşımı yapmak üzere SMB (Server Message Block) oturumu açılıyor. * TCP/IP iletişiminde iletilmek istenilen veriler segment ‘ lere ayrılır. Her segmente bir sıra numarası verilir. * Segmentler yani çerçeveler teker-teker değil belli bir sayıda topluca gönderilir. Örneğin onar-onar. Bu belirli sayıya Window (pencere) denir. * Alıcı bilgisayar çerçeveler kendisine ulaştıkça bunları kendi tampon belleğine yerleştirir. İki ardışık çerçeve tampon belleğe yerleştirilince alıcı bilgisayar aldığı en son çerçeve için bir onay mesajını gönderici bilgisayara gönderir. 29
Soru:) Diyelim ki pencere büyüklüğü 10. İki bilgisayar arasındaki bir iletişimde 17. Segmentte hata olursa ne olur? TCP/IP Segment Yapısı
30
Bir TCP/IP Segmenti iki kısımdan oluşur: - Başlık (Header) - Veri (Data) * TCP Başlığı 20 byte uzunluktadır. Şu alanlardan oluşur: - Kaynak Portu (Source Port) : Gönderici bilgisayarın kullandığı port numarası. 16 bitliktir. - Hedef Portu ( Destination Port) : Alıcı bilgisayarın TCP portu 16 bitlik. - Sıra Numarası ( Sequence Number) : Segmentlere verilen numara. (Çerçevelerin sıra numarası). 32 bitlik. - Onay Numarası (Acknowledgement Number) : İstenilen bir sonraki paketin numarası. 32 bitlik. - Başlık Uzunluğu ( Header Length) :TCP segmentinin uzunluğu 4 bit. - Reserve (Saklı) : Gelecekte kullanılmak üzere saklı tutulmuş 6 bit. 31
- Kod Bitleri ( Bayraklar – Flags) : Segment’in içeriğine dair bilgi 6 bit. - Pencere (Window) : TCP penceresinde ne kadar yer kalmış olduğunu gösterir. 16 bit. - Kontrol Toplamı (Checksum) : Başlık kısmının bozulup bozulmadığını gösteren kontrol bitleri. 16 bit. - Acil Veri Göstericisi (Urgent Pointer): Bayrak kısmında belirtilen acil bir verinin iletilmek istendiğini gösterir. 16 bit. UDP (User Datagram Protocol): * Bağlantısız ve güvensiz bir protokoldür. UDP’nin avantajı verilerin hızlı bir şekilde iletilmesidir. * UDP’nin sağlayamadığı güvenirliği daha yukarılarda bulunan uygulama programları sağlayabilir. * UDP’yi kullanan programlara örnek : 161 nolu SNMP (Simple Network Management Protocol ) , 53 nolu DNS . 32
UDP Paket Formatı:
- Kaynak Portu (Source Port) : Gönderici bilgisayarın UDP portu - Hedef Portu (Destination Port) : Alıcı bilgisayarın UDP portu - Mesaj Uzunluğu (Message Length) : UDP mesajının uzunluğu - Kontrol Toplamı ( Checksum) : Başlık kısmının bozulup bozulmadığını gösteren kod. 33
ARP (Address Resolution Protokol) * IP adresi bilinen bir makinenin MAC adresini bulmak için kullanılır. * ARP ile elde edilen MAC adresi bilgisi ARP Kaşesi denilen bir bölgede saklanır. * ARP Kaşesinde iki tür bilgi bulunur:Statik ve Dinamik - Dinamik kayıtlar Broadcast yayını ile bulunanlardır. Dinamik kayıtlar ARP kaşesinde devamlı durmazlar. Kullanılmadıklarında belirli bir süre sonra silinirler. - Statik kayıtlar ARP kaşesine elle girilir ve bilgisayar kapatılıncaya kadar saklanır. Kapatılıp açılma gerekmeden de statik kayıtlar elle silinebilir. 34
ARP.EXE programı ile Komut İsteminden ARP işlemleri yapılabilir: c:\> arp -g : Kaşede yer alan kayıtları görüntüler. c:\> arp -s IP_adresi Mac_adresi : Kaşeye statik kayıt ekler ör) c:\> arp -s 192.168.0.5 00-e0-06-09-78-87 c:\> arp -d ör) c:\> arp -d
IP_adresi : Kaşeden kayıt silmek için kullanılır. 192.168.0.5
35
IP Adresleme IPv4 versiyonunda , IP adresi TCP/IP protokol yapısına göre ağ ortamında bir bilgisayarı gösteren 32 bitlik bir numaradır. IPv4 versiyonunda adresleme için 32 bit vardır ve buda toplam olarak 232 = 4 milyar adrese karşılık gelir. Ancak gerçekte adreslenebilecek bilgisayar sayısı bu sayıdan daha azdır! Örnek bir IP adresi şu şekildedir: 11000000 10101000 00000000 00000001 Bu adresi daha okunaklı kılmak için her Oktet onlu düzene çevrilip aralarına nokta konulur. 192 . 168 . 0 . 1 Bu şekildeki yazıma Onluk Düzendeki Noktalı Yazım (Dotted Decimal Notation) denir. 36
IP adresinde belirli bir kısım bilgisayar ağını, diğer kısım da ağ içindeki tek bir bilgisayarı gösterir. Bu kısımlar: - Ağ Adresi (Network ID) - Bilgisayar Adresi (Host ID) Ör)
202
34 Network ID
19
8 Host ID
IP Adres Sınıfları: İnternet adresleri 5 sınıfa (class) bölünmüştür. Bir IP adresinde ağ adresi ile bilgisayar adresinin hangi kısımlar olduğunu o adresinsınıfına bakarak anlıyoruz. IP adres sınıfları A , B , C , D ve E şeklinde sıralanır. 37
A sınıfı adreslerde ağ adresi ilk oktet ile belirlenir. Geri kalan üç oktet ise o ağdaki bir bilgisayarı gösterir.Örneğin IBM firması internet üzerinde A sınıfı bir adres kullanır. Network Sayısı
Class A Network ID
w
126
Host ID
x
y
Her Net’ deki host Sayısı
16,777,214
z
B sınıfı adreslerde ağ adresi ilk iki okted ile belirlenir. Geri kalan iki oktet o ağdaki bilgisayarı gösterir. Örneğin Microsoft’a bir B sınıfı adres alanı ayrılmıştır. Class B Network ID
w
Network Sayısı
Host ID
x
y
z
16 , 384
Her Net’ deki host Sayısı
65 , 534
38
C sınıfı adreslerde ağ adresi ilk üç okted ile belirlenir. Geri kalan tek oktet o ağdaki bilgisayarı gösterir. Örneğin Devlet İstatistik Enstitüsü C sınıfı bir adres kullanır. Network Sayısı
Class C Network ID
w
x
Host ID
y
2,097,152
Her Net’ deki host Sayısı
254
z
D ve E sınıfı adresleri ise özel test adresleridir. Bizim tarafımızdan kullanılamaz. Bir adresin A,B,C yada D sınıfı olup olmadığını nasıl anlıyoruz? Bu adresin ilk oktedine bakılarak anlaşılır. - İlk oktet 0 ile 126 arasında ise adres bir A sınıfıdır. - İlk oktet 128 ile 191 arasında ise adres bir B sınıfıdır. - İlk oktet 192 ile 223 arasında ise adres bir C sınıfıdır. 39
Bu açıklamada bazı adresler kayıp görünüyor! 127 ile başlayan adresler özel adreslerdir ve herhangi bir bilgisayara verilemezler. Örneğin 127.0.0.1 adresi localhost’u gösterir. 223 ve yukarısı ise D ve E sınıfı adreslerdir ve kullanıcılar bu adresleri kullanamazlar. Class A B C D E
IP address w.x.y.z w.x.y.z w.x.y.z
Network ID w w.x w.x.y
Host ID x.y.z y.z z
Range 1.x.y.z - 126.x.y.z 128.x.y.z - 191.x.y.z 192.x.y.z - 223.x.y.z 224.x.y.z - 239.x.y.z 240.x.y.z - 254.x.y.z
Class A:
A Sınıfı adresler çok büyük sayıda hostu olan networklere uygundur. A sınıfı adresteki en yüksek değerdeki bit daima “0” dır.Geri kalan 7 bit network id’yi tamamlar. Arta kalan 24 bit ise host’ları ifade eder. Böylece 126 network ve her network’te yaklaşık 17 milyon host bulunabilir. 127.x.y.z loopback’e (test amaçlı) 40 ayrılmıştır.
Class B: Orta büyüklükteki network’lere uygundur. En yüksek değerdeki iki bit “ 1 0” olarak ayarlıdır. Geri kalan 14 bit network id’yi tamamlar. Arta kalan 16 bit ise host id’yi ifade eder. Bu sayede 16384 net work’te yaklaşık 65000 host yer alabilir. Class C: Küçük LAN’ler için uygundur. En yüksek değerdeki üç bit “1 1 0” ‘a ayarlıdır.Geri kalan 21 bit yaklaşık 2 milyon network’ü temsil ederken, arta kalan 8 bit ise her network için 254 hostu ifade eder. Class D: (Deneysel ve özel amaçlarla kullanılır) D sınıfı adresler birçok hosta multicasting için kullanılırlar. Paket -ler bir network’teki hostların seçilmiş belli bir setine aktarılır. En yüksek 4 bit “1 1 1 0” dır.Kalan bitler ilgili hostların anlayabileceği adres bilgisi içerir. Microsoft, D sınıfı adresleri bir network’teki hostlara aplikasyonların datayı muticast etmesi için destekler. 41
Class E: E sınıfı gelecekte kullanmak üzere ayrılmış, deneysel adreslerdir. En yüksek 4 bit daima “1 1 1 1” şeklindedir. Özel IP adresleri: Aşağıdaki üç IP adres bloğu Internet Assigned Numbers Authory (IANA) tarafından , özel amaçlar için rezerve edilmiştir. - 10 . X . X . X
10.255.255.255 (10/8 prefix)
- 172 . 16 . X . X - 192 . 168 . X . X
172.31.255.255 (172.16/12 prefix) 192.168.255.255 (192.168/16 prefix)
Bu IP adresleri yerel alan ağlarında(LAN) kullanılmak üzere tahsis edilmiştir (Dünya üzerinde tekil değildirler) . Bu adresler İnternet’te yönlendirilmezler.
42
Soru) İnternette adresleri kim dağıtıyor? İnternet genelinde adres dağıtımını Internet Society yapıyor. Bu kurum ülkelere verilecek adresleri ayarlıyor ve her ülkede adreslerden sorumlu bir organizasyon belirliyor. Türkiyede adres dağıtım yetkisi ODTÜ’ye verilmiştir. Bir çok kuruma ve bir çok ülkeye önceden ayrılan İnternet adresleri yüzünden İnternetteki 4 milyar adres hemen dolmuş durumda. Örneğin şu anda A sınıfı adres almak mümkün değildir! Adres kısıtlamalarını aşmak için çeşitli çalışmalar yapılmaktadır. Örneğin , IPv6 adında yeni bir IP adresleme standardı geliştiril – mektedir. Bu yeni standartta adresleme için 128 bit kullanılmaktadır.
2128 = 4 milyar kere 4 milyarın karesi 43
İnternet bağlantısı için herkeze IP adresi dağıtmak gerekmiyor. NAT mekanizmasını kullanarak tek bir IP adresi üzerinden birden fazla bilgisayar internete bağlanır. NAT Network Address Translation (Ağ Adresi dönüşümü)
44
Alt Ağlar ve Alt Ağ Maskesi (Subnet , Subnet Mask) * Ethernet ağ teknolojisinde bir bilgisayar yalnızca kendisiyle aynı fiziksel ağda bulunan bir bilgisayarla doğrudan iletişime geçebilir. * Kendi fiziksel ağında olmayan bir bilgisayarla ancak Yönlendirme (Routing) ile iletişime geçebilir. * Bir bilgisayar iletişime geçmek istediği başka bir bilgisayarın kendisiyle aynı ağda bulunup-bulunmadığını nasıl anlar? * IP adresine bakarak anlar çünkü IP adresinin bir bölümü ağı , bir bölümü de bilgisayarın o ağ içindeki adresini tanımlar. 45
* Bir bilgisayar IP adresinin hangi bölümünün ağı, hangi bölümünün ise ağdaki bilgisayarı tanımladığını Subnet Mask bilgisine bakarak anlar. Subnet Mask Alt Ağ Maskesi * Subnet Maskesi dört bölümden oluşur ve ağ adresinin hangi bölüme kadar geldiğini gösterir. * Bilgisayarlar kendi Network ID’sini bulmak için Subnet maskesini kullanırlar. Ör) Örnek bir Subnet maskesi 255 . 255 . 255 . 0 11111111 . 11111111 . 11111111 . 00000000 Ağ adresi sınırı
46
Netword ID Ağ Tanımlayıcısı ( Ağ Adresi ) * Bir bilgisayar ağ tanımlayıcısını bulmak için IP adresini Subnet maskesi ile mantıksal VE (and) işlemine tabi tutar. Mantıksal VE (And) işlemi: X 0 0 1 1
Y 0 1 0 1
F = X ve Y 0 0 0 1 47
* Diyelim ki bir bilgisayarın IP adresi = 195.134.67.200 olsun. Subnet maskesi ise 255.255.255.0 olsun. Bilgisayarın bulunduğu ağın tanımlayıcısı yani ağ adresi nedir? 195 .134.67.200 ve 255.255.255.0 sonuç = 195.134.67.0
1100 0011 . 1000 0110 . 0100 0011 . 1100 1000 ve 1111 1111 . 1111 1111 . 1111 1111 . 0000 0000 1100 0011 . 1000 0110 . 0100 0011 . 0000 0000 48
195.134.67.200 SM: 255.255.255.0
195.134.67.56 SM: 255.255.255.0
* Soldaki bilgisayar ilk önce kendi ağ adresini saptar. Kendi ağ adresi = 195.134.67.0 dır. * Daha sonra hedef bilgisayarın IP adresi ile kendi Subnet maskesini kullanarak onun ağ adresini bulur. 195.134.67.0
=
195.134.67.0
* Her iki bilgisayar da aynı ağda olduklarından doğrudan 49 iletişime geçebilirler.
A
195.134.67.200 SM: 255.255.255.0
C
195.134.78.45 SM: 255.255.255.0
B
195.134.67.56 SM: 255.255.255.0
R
D
195.134.78.46 SM: 255.255.255.0
* A bilgisayarı, D bilgisayarı ile irtibat kurmak isterse ne olur? * A bilgisayarının Subnet maskesi 255.255.0.0 olarak değiştirilirse neler olabilir? 50
* En son örnekte ağ tanımlayıcısı : ilk ağ için = 195.134.67.0 ikinci ağ için = 195.134.78.0 İlk ağda hiçbir bilgisayara 195.134.67.0 adresi verilemez. Çünkü bu adres tek bir bilgisayarı değil ilk ağın tümünü belirliyor. Bu ad res o ağın adresidir. Benzer şekilde o ağda 195.134.67.255 adresi de hiçbir bilgisayara verilemez. Çünkü bu adres özel bir adrestir ve o ağ içinde broadcast yaparken kullanılır. O zaman şöyle bir sonuç ortaya çıkar: * IP adreslerinde bilgisayar tanımlayıcı kısmı 0 veya 255 olamaz. Geriye 256 - 2 = 254 adet bilgisayar adresi kalır. (C Sınıfı)
Formül : 2n - 2
n: bit sayısı
51
ALT AĞLARA AYIRMA (SUBNETTING) Alt ağlara ayırma , verilen bir adres aralığını bölümle – mekve yeni ağ adresleri türetmek demektir. Örnek) Bir kurum internete erişmek için 195.156.89.0 ağ adresini alıyor. Bu “C Sınıfı” bir adrestir. Bunu kullanarak kurum ağında 254 adet bilgisayar adresi tanımlayabiliriz. Kurumumuzu oluşturan bilgisayarlar fiziki olarak ayrı bölgelerde örneğin İstanbul , Ankara ve İzmir gibi üç ayrı şehirde bulunuyorsa ve biz bunları ayrı ağlar şeklinde düzenlemek istiyorsak ne yapmalıyız? Veyahut bilgisayarlar yalnızca Ankara’da ve tek bir binadalar fakat biz bunları üç farklı ağ şeklinde düzenlemek istiyorsak ne yapmalıyız 52
R
R
R 53
Yönelticiler ile birlikte bağlanan ağların her biri için ayrı bir ağ tanımlayıcısı (network ID ) gerekir. Ek olarak yö – nelticiler arasında kalan kısımlar da ayrı bir ağ sayılır. Buna göre beş adet ağ (segment) ortaya çıkar. Peki elimizdeki tek ağ adresi olan 195.156.89.0 ile bunu nasıl yapacağız? Bu durumda mevcut ağımızı alt ağlara böleceğiz, bunu yapmak için de , elimizdeki son okteti kullanacağız. Çünkü oynama yapabileceğimiz tek yer orası. Beş adet alt ağ için en az 3 bit kullanmalıyız. ( 2n-2 ) 195 .156 . 89 . X X X 0 0 0 0 0 54
R
R
R 55
Son oktette üç biti alt ağ tanımı için ayırıyoruz. Geriye her bir ağda , bilgisayarları tanımlamak için 5 bit kalıyor. Bu durumda her bir ağda 2n-1 kuralına göre: 25 – 2 = 30 olur. Yani her bir ağda 30 adet bilgisayar adresi tanımlayabiliriz. Toplam olarak : 6 * 30 = 180 bilgisayar bulunabilir. Eğer kurum ağını alt ağlara bölmeseydik 254 adet bilgisayar tanımlayabilirdik. Şimdi ise 180 bilgisayar tanımlayabliliyoruz. Aradaki 74 adres nereye gitti? Bu adresler alt ağa bölme işlemi sırasında boşa gitti. Ama bu sayede amacımıza ulaşabildik. Kurum ağımızı üç alt bölüme ayırabildik. 56
Üç bitlik bir düzende bütün sayılar şunlardır: 0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1
Hepsi “1” ve hepsi “0” olanlar kullanılmaz.
57
Bunlardan ikisi (hepsi 0 ve hapsi 1 olanlar) kullanılamaz AğNo
1 2 3 4 5 6
Başlangıç Adresi 195.156.89.001 00001 (195.156.89.33) 195.156.89.010 00001 (195.156.89.65) 195.156.89.011 00001 (195.156.89.97) 195.156.89.100 00001 (195.156.89.129) 195.156.89.101 00001 (195.156.89.161) 195.156.89.110 00001 (195.156.89.193)
Bitiş Adresi 195.156.89.001 11110 (195.156.89.62) 195.156.89.010 11110 (195.156.89.94) 195.156.89.011 11110 (195.156.89.126) 195.156.89.100 11110 (195.156.89.158) 195.156.89.101 11110 (195.156.89.190) 195.156.89.110 11110 (195.156.89.222)
58
Bu son durumda elimizde 6 ağa kadar çıkabilen bir yapı var. Bu durumda 255.255.255.0 Alt Ağ Maskesini kullanamayız. Öyle bir Alt Ağ Maskesi belirlemeliyiz ki bu ağları mantıksal olarak birbirinden ayırsın. Bunu şu şeklide yapıyoruz: Bilgisayar adreslerini belirlediğimiz son oktetteki 5 bit hariç bütün değerleri “1” yapıyoruz. 255 . 255 . 255 . 111 00000 11111111 . 11111111 . 11111111 . 11100000 255 . 255 . 255 . 224 Yeni Alt Ağ Maskesi bu değer olacaktır. 59
ANKARA
195.156.89.33
195.156.89.34
255.255.255.224 R 195.156.89.35
İSTANBUL 255.255.255.224 R 195.156.89.65
195.156.89.66 İZMİR
195.156.89.97
195.156.89.98
195.156.89.67
255.255.255.224 R 195.156.89.99
60
Soru1) 195.156.89.34 nolu bilgisayar 195.156.89.35 nolu bilgisayar ile irtibat kurmaya çalışırsa ne olur? Soru2) 195.156.89.34 nolu bilgisayar 195.156.89.66 nolu bilgisayar ile irtibat kurmaya çalışırsa ne olur? C1)
C2)
195.156.89.34 ve 255.255.255.224
ve
195.156.89.35 255.255.255.224
195.156.89.32
=
195.156.89.32
195.156.89.34 ve 255.255.255.224
ve
195.156.89.66 255.255.255.224
195.156.89.32
=
195.156.89.64 61
Burada dikkat etmemiz gereken bir durum var. Yöneltinelticilerin herbir bacağına bir IP adresi vermek gerekiyor. Yönelticilerin bacaklarına bağlı oldukları bölümlere uygun adresler vermek gerekiyor. İki yöneltici arasında hiç bilgisayar olmamasına karşın o kısımlar da ayrı birer alt ağ (segment) olarak kabul edilir ve onlara da alt ağ gruplarından bir tanesine ait IP adreslerinden vermek gerekir. Bu yeni duruma göre yeni şekil şu şekilde olacaktır.
62
ANKARA
195.156.89.36 R
195.156.89.33
195.156.89.34
195.156.89.35 195.156.89.129
İSTANBUL 195.156.89.68 195.156.89.130 R 195.156.89.65
195.156.89.66 İZMİR
195.156.89.67
195.156.89.161
195.156.89.162
195.156.89.100 R
195.156.89.97
195.156.89.98
195.156.89.99
63
ÖZET: •Kurum ağımızı altağlara ayırırken ilk önce kaç edet ayrı ağ istediğimize karar vereceğiz. Toplam altağ sayısını belirlerken yönelticiler arasında kalan kısımları da unutmayacağız. Onlar da, hiçbir bilgisayar içermemesine karşın, ayrı birer alt ağdır. Hesaba onlar da dahildir. •Kurum adresinde bizim sorumluluğumuza bırakılan kısma bakacağız. Oluşturacağımız alt ağlar için buradaki bitleri kullanacağız. •2n-2 kuralına uygun olarak alt ağ belirlerken kaç adet bit kullanacağımızı saptayacağız. Çıkan sayıda bitleri altağ tanımlayıcılarını belirlemekte kullanacağız. Geriye kalan bitlerle de alt ağlardaki bilgisayarları belirleyeceğiz. 64
•Kurum çapında geçerli olacak yeni subnet maskesini belirleyeceğiz. Bu yeni subnet maskesinde altağ oluş – turmada kullanılan bitlerin sayısı kadar 1’lerimiz olacak.
IP YÖNLENDİRME SUBNET MASK: 255.255.255.0 195.194.34.2
195.194.34.3
195.194.34.4
SUBNET MASK: 255.255.255.0 200.123.89.2
200.123.89.3
200.123.89.4
65
Sağdaki ağ 200.123.89.0 ağıdır, Soldaki ağ ise 195.194.34.0 ağıdır Bu iki ağı birbirleriyle haberleştirmek için Router (Yö – neltici kullanıyoruz. 195.194.34.1
195.194.34.2
195.194.34.3
195.194.34.4
R
200.123.89.1 200.123.89.2
200.123.89.3
200.123.89.4
66
Yönelticilerin bacaklarına adres verirken o bacak hangi ağa bağlıyla o ağa uygun bir adres verilir. Yönelticilerin ayaklarına adres verirken genelde o ağdaki ilk adres verilir. Bu zorunlu değildir ama genelde böyle yapılır. Ağdaki bilgisayarların yönelticiden haberleri olması için “Default Gateway” parametresini kullanıyoruz. Bu parametre varsayılan “çıkış kapısı – ağ geçidi” anlamına geliyor. Peki yöneltici olarak ne kullanılabilir? Birinci şık Router adı altında satılan cihazlar almak. Piyasada Cisco Systems veya Bay Networks yada başka firmaların ürettiği çok sayıda bu tür cihazlar var. İkinci seçenek ise, Windows Server yada Linux Server makinelerini yöneltici olarak yapılandırılması. 67