7 IP adresleme: IPv4 ve IPv6

Bir bilgisayarın ağ ayarlarında yalnızca “IP adresi” bulunmaz. IP adresi, prefix veya subnet mask, varsayılan ağ geçidi ve DNS bilgisi birlikte bir ağ yapılandırması oluşturur. Bu bilgilerden biri yanlış olduğunda cihaz yerel ağda çalışıyor gibi görünüp uzak sistemlere erişemeyebilir veya yalnız bazı hizmetlerde sorun yaşayabilir.

Bu bölümde IPv4 adreslerinin nasıl yazıldığını, 32 bit–oktet ilişkisini, prefix/subnet mask kavramını, private ve public adresleri, özel amaçlı IPv4 adreslerini ve varsayılan ağ geçidini inceleyeceğiz. Ardından IPv6’nın 128 bitlik adres yapısını, hexadecimal gösterimi, kısaltma kurallarını ve temel adres türlerini okuyacağız. Alt ağ hesabını bir sonraki bölümde ayrıntılandıracağız.

IPv4 ve IPv6 adres yapısı, private/public adresler, prefix ve aynı ağ kararı.

7.1 Bu bölümün sonunda

  • IPv4 adresinin 32 bit ve dört oktetten oluştuğunu açıklayabilecek,
  • bir oktetin ikili ve ondalık gösterimi arasında temel dönüşüm yapabilecek,
  • IP adresi ile prefix/subnet mask bilgisinin birlikte neden gerekli olduğunu açıklayabilecek,
  • /24 gibi CIDR gösterimini temel düzeyde okuyabilecek,
  • private, public, loopback ve link-local IPv4 adreslerini ayırt edebilecek,
  • varsayılan ağ geçidinin uzak ağlara erişimdeki rolünü açıklayabilecek,
  • IPv6’nın 128 bitlik hexadecimal gösterimini okuyabilecek,
  • IPv6 kısaltma kurallarını uygulayabilecek,
  • ::1, fe80::/10 ve global unicast adreslerini tanıyabilecek,
  • dual stack kavramını açıklayabileceksiniz.

7.2 IP adresi neyi tanımlar?

IP adresi, bir ağ arayüzünün IP ağı içindeki mantıksal adresidir. Router’lar paketleri farklı ağlar arasında iletirken hedef IP adresinden yararlanır.

Bir IP adresini tek başına düşünmek yetersizdir. Şu dört bilgi birlikte önemlidir:

IPv4 adresi:       192.168.10.25
Prefix:            /24
Default gateway:   192.168.10.1
DNS:               192.168.10.1

Bu yapılandırmada IP adresi cihazın ağdaki adresidir; prefix hangi adreslerin aynı yerel IP ağı içinde değerlendirileceğini belirtir; default gateway yerel ağ dışındaki hedeflere geçiş noktasıdır; DNS ise alan adlarının çözümlemesinde kullanılacak sunucuyu gösterir. DNS’in ayrıntısını 9. bölümde inceleyeceğiz.

7.3 IPv4 adresi 32 bittir

IPv4 adresi toplam 32 bit uzunluğundadır. İnsanların daha kolay okuyabilmesi için 8 bitlik dört gruba ayrılır. Her 8 bitlik gruba oktet denir.

192 . 168 . 10 . 25
 ↑     ↑    ↑    ↑
8 bit 8 bit 8 bit 8 bit

Dört oktet 4 × 8 = 32 bit eder. Bir oktet 8 bit olduğu için alabileceği değerler 0 ile 255 arasındadır.

7.3.1 Neden 0–255?

8 bit ile oluşturulabilecek en büyük ikili sayı 11111111 değeridir.

Bit değeri 128 64 32 16 8 4 2 1
11111111 1 1 1 1 1 1 1 1

Toplam:

128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 = 255

Bu nedenle 192.168.1.300 geçerli IPv4 gösterimi değildir; bir oktet 300 olamaz.

7.4 İkili sayı sistemine kısa bakış

Subnetting işlemleri bit sınırlarına dayandığı için temel ikili sayı sezgisi önemlidir. Her IPv4 oktetinde şu basamak değerlerini kullanabiliriz:

128 64 32 16 8 4 2 1

Örneğin 192 = 128 + 64 olduğundan:

192 = 11000000

168 = 128 + 32 + 8 olduğundan:

168 = 10101000

Dolayısıyla 192.168.1.20 adresinin ilk iki okteti ikili olarak 11000000.10101000 şeklinde başlar. Her IP adresini günlük kullanımda baştan sona ikiliye çevirmek gerekmez; fakat prefix ve subnet mantığını anlamak için bu basamakları tanımak yararlıdır.

7.5 Ağ bölümü ve host bölümü

Bir IPv4 adresinin hangi bitlerinin ağı, hangi bitlerinin o ağdaki host/arayüz bölümünü temsil ettiğini prefix belirler.

Örneğin:

192.168.10.25/24

ifadesindeki /24, ilk 24 bitin ağ prefix’i olduğunu söyler. Geriye 8 bit host alanı kalır.

192 . 168 . 10 . 25
|------ ağ ------| host
      /24

Bu örnekte ağ adresi 192.168.10.0/24 olacaktır. Bunun nasıl hesaplandığını 8. bölümde ayrıntılı öğreneceğiz.

7.6 Prefix ve subnet mask

IPv4’te ağ sınırı iki biçimde gösterilebilir:

CIDR/prefix:  /24
Subnet mask:  255.255.255.0

İkisi aynı ağ sınırını farklı biçimde ifade eder.

Prefix Subnet mask
/24 255.255.255.0
/25 255.255.255.128
/26 255.255.255.192
/27 255.255.255.224
/28 255.255.255.240

Bu tabloyu kör ezberlemek zorunda değilsiniz. Bir sonraki bölümde maskelerin neden bu değerlere geldiğini bitler üzerinden göreceğiz.

NoteA, B ve C sınıfları neden ana yöntem değil?

Eski IPv4 kaynaklarında Class A, B ve C gibi sınıflı adresleme terimleriyle karşılaşabilirsiniz. Modern ağlarda CIDR/prefix yaklaşımı kullanılır; bir adresin ağ sınırını ilk oktete bakıp otomatik olarak A/B/C sınıfından çıkarmak doğru güncel yöntem değildir. Bu kitapta subnet kararlarını prefix üzerinden yapacağız.

7.7 Private IPv4 adresleri

Yerel ağlarda kullanılan üç önemli private IPv4 bloğu vardır:

10.0.0.0/8
172.16.0.0/12
192.168.0.0/16

Bu adresler genel internet üzerinde doğrudan yönlendirilmek üzere ayrılmamıştır. Ev, ofis, laboratuvar ve kurum iç ağlarında sık görülür.

Örnek private adresler:

10.20.5.10
172.16.50.4
172.31.200.9
192.168.1.25

Ancak 172.32.5.10 private 172.16.0.0/12 bloğunda değildir.

Warning172.x.x.x gördüğünüz her adres private değildir

Private aralık 172.16.0.0 ile 172.31.255.255 arasındadır. İlk oktetin 172 olması tek başına yeterli değildir.

7.8 Public IPv4 adresleri

Public IPv4 adresleri internet üzerinde küresel yönlendirme bağlamında kullanılabilir. İnternete bağlı bir evde bilgisayarınız 192.168.1.20 gibi private IP kullanırken router’ın servis sağlayıcı tarafında public bir adres bulunabilir.

Private ve public alan arasındaki dönüşümde NAT yaygın olarak kullanılır. NAT’ı 9. bölümde ayrıntılı göreceğiz. Public/private ayrımı “public adres güvenlidir, private adres güvenlidir” anlamına gelmez; bu yalnızca adresleme ve yönlendirme kapsamıyla ilgilidir.

7.9 Özel amaçlı IPv4 adresleri

7.9.1 Loopback

127.0.0.0/8 loopback bloğudur. En bilinen adres 127.0.0.1’dir. Bu adres bilgisayarın kendi TCP/IP yığınını işaret eder ve localhost ile sık karşılaşılır.

7.9.3 Belirtilmemiş adres

0.0.0.0 bağlama göre “henüz belirli adres yok” gibi özel anlamlarda kullanılır. Normal bir son kullanıcı host adresi gibi yorumlanmaz.

7.10 Network ve broadcast adresine ilk bakış

IPv4 subnet’inde klasik olarak iki adres özel anlam taşır:

  • network adresi: subnet’in kendisini temsil eder,
  • broadcast adresi: o subnet’teki bütün hostlara gönderim için ayrılır.

Örneğin 192.168.10.0/24 için:

Network:    192.168.10.0
İlk host:   192.168.10.1
...
Son host:   192.168.10.254
Broadcast:  192.168.10.255

Neden ilk ve son adresin böyle oluştuğunu 8. bölümde bit ve subnet hesabıyla göreceğiz.

7.11 Default gateway

Bir istemci hedef IP’nin kendi subnet’i içinde olmadığını belirlediğinde paketi genellikle default gateway’e gönderir. Küçük ağlarda gateway çoğunlukla router’ın yerel ağdaki IP adresidir.

Örnek doğru yapılandırma:

IP:       192.168.1.25/24
Gateway:  192.168.1.1

İstemci 8.8.8.8 gibi kendi /24 ağı dışında bir hedefe gitmek istediğinde paketi 192.168.1.1 gateway’ine teslim eder.

7.11.1 Gateway neden yerel olarak erişilebilir olmalı?

Şu yapılandırmayı düşünün:

IP:       192.168.1.25/24
Gateway:  192.168.2.1

İstemci /24 kullandığı için kendi yerel ağını 192.168.1.0/24 olarak görür. 192.168.2.1 bu ağda değildir. Özel ek yönlendirme koşulları yoksa istemcinin gateway’e doğrudan yerel erişimi mümkün olmaz ve uzak ağlara çıkış bozulur.

7.12 Bir ağ yapılandırmasını birlikte okuyalım

Aşağıdaki değerleri inceleyin:

IPv4:    192.168.50.37
Mask:    255.255.255.0
Gateway: 192.168.50.1
DNS:     192.168.50.1

Mask /24 ile eşdeğerdir. Dolayısıyla başlangıç düzeyinde istemci 192.168.50.0/24 içindedir ve gateway 192.168.50.1 aynı /24 içindedir. Yapılandırma biçimsel olarak tutarlı görünmektedir. Bu, internetin kesin çalıştığını kanıtlamaz; yalnızca IP/prefix/gateway ilişkisinde açık bir tutarsızlık görünmediğini söyler.

7.13 IPv6 neden geliştirildi?

IPv4 yaklaşık 2^32, yani 4.29 milyar adreslik teorik bir alan sunar. İnternetin ve bağlı cihaz sayısının büyümesi çok daha geniş bir adres mimarisini gerekli hale getirdi.

IPv6, 128 bitlik adres alanı kullanır (Deering and Hinden 2017). Teorik adres sayısı 2^128’dir. IPv6 yalnız “daha fazla adres” değildir; protokol tasarımında başka değişiklikler de vardır. Bu giriş bölümünde adresleri okuyabilmeye odaklanacağız.

IPv6 adres uzunluğu, temel adres türleri, kısaltma ve dual stack yaklaşımı.

7.14 IPv6 adres gösterimi

IPv6 adresi sekiz adet 16 bitlik hexadecimal gruptan oluşur.

2001:0db8:0000:0000:0000:ff00:0042:8329

Hexadecimal sistem 0–9 ve A–F sembollerini kullanır. Bir hexadecimal basamak 4 bit olduğundan dört basamaklı bir grup 16 bit, sekiz grup ise 128 bit eder.

7.15 IPv6 kısaltma kuralları

Uzun adresleri daha okunabilir yazmak için iki temel kısaltma kullanılır.

7.15.1 1. Bir grubun başındaki sıfırlar atılabilir

0db8 → db8
0042 → 42
0000 → 0

Dolayısıyla tam adres:

2001:0db8:0000:0000:0000:ff00:0042:8329

önce şöyle yazılabilir:

2001:db8:0:0:0:ff00:42:8329

7.15.2 2. Ardışık sıfır grupları :: ile kısaltılabilir

Aynı adres:

2001:db8::ff00:42:8329

biçimine kısaltılabilir. :: bir IPv6 adresinde yalnızca bir kez kullanılabilir; aksi halde kaç sıfır grubunun nerede olduğu belirsizleşir.

7.15.3 Çalışılmış örnekler

fe80:0000:0000:0000:021c:42ff:fe12:3456
→ fe80::21c:42ff:fe12:3456
2001:0db8:0000:0010:0000:0000:0000:0025
→ 2001:db8:0:10::25

7.16 Temel IPv6 adres türleri

7.16.1 Loopback

::1 IPv6 loopback adresidir. IPv4’teki 127.0.0.1 ile benzer amaçta düşünülür.

7.16.3 Global unicast

İnternet üzerinde yönlendirilebilir IPv6 adresleri bu kategori içinde yer alır. Eğitim ve dokümantasyon örneklerinde 2001:db8::/32 bloğu sık kullanılır; bu blok gerçek genel dağıtım için değil dokümantasyon örnekleri için ayrılmıştır.

7.16.4 Multicast

IPv6 belirli alıcı gruplarına gönderim için multicast kullanır. IPv4’teki klasik broadcast adresi mekanizması IPv6’da aynı biçimde yoktur.

7.17 IPv6 prefix

IPv6 da CIDR prefix gösterimini kullanır:

2001:db8:1234:5678::25/64

/64, ilk 64 bitin prefix olduğunu ifade eder. Başlangıç ağlarında /64 çok yaygındır. Bu kitapta IPv6 subnetting hesabı yapmayacağız; ancak /64 değerinin ağ prefix uzunluğu olduğunu bilmeniz gerekir.

7.18 Bir arayüzde neden birden fazla IPv6 adresi olabilir?

IPv6’da tek bir ağ arayüzünde aynı anda link-local adres, global adres, geçici/gizlilik adresi ve başka özel kapsamlı adresler bulunabilir. Bu durum tek başına yapılandırma hatası değildir.

7.19 Dual stack

Bir cihaz IPv4 ve IPv6’yı aynı anda kullanıyorsa buna dual stack denir.

IPv4:            192.168.10.25/24
IPv6 global:     2001:db8:10::25/64
IPv6 link-local: fe80::a8b1:...

Tarayıcı belirli bir hedefe bağlanırken işletim sistemi ve uygulama mevcut IPv4/IPv6 yollarını değerlendirebilir. “Bilgisayarda IPv6 adresi var, o halde IPv4 artık kullanılmıyor” sonucu doğru değildir.

ImportantHangi IP sürümünü test ettiğinizi bilin

Bir alan adı hem A (IPv4) hem AAAA (IPv6) kaydı döndürebilir. IPv4 bağlantısının çalışması IPv6 yolunun da çalıştığını, IPv6’nın çalışması da IPv4 yolunun çalıştığını otomatik olarak kanıtlamaz.

7.20 IPv4 ve IPv6’yı karşılaştıralım

Özellik IPv4 IPv6
Adres uzunluğu 32 bit 128 bit
Yazım Dört ondalık oktet Sekiz hexadecimal grup
Örnek 192.168.1.20 2001:db8::20
Prefix /24 gibi /64 gibi
Loopback 127.0.0.1 ::1
Link-local 169.254.0.0/16 fe80::/10
Broadcast Kullanılır Klasik broadcast yok; multicast kullanılır

7.21 Cihazda IP yapılandırmasını görüntüleme

Komutları 12. bölümde ayrıntılı kullanacağız; şimdilik bir ağ yapılandırmasında hangi bilgileri arayacağınızı bilin.

Windows:

ipconfig /all

Linux:

ip addr
ip route

macOS:

ifconfig
route -n get default

Bir çıktıda yalnız “IP kaç?” sorusuna bakmayın. Arayüz adı, IPv4 ve prefix/mask, IPv6 adresleri, default gateway/route ve DNS bilgisini birlikte değerlendirin.

7.22 Çalışılmış vaka: üç yapılandırmayı karşılaştırın

7.22.1 A

IPv4:    192.168.5.40/24
Gateway: 192.168.5.1

IP ve gateway aynı /24 içinde görünür.

7.22.2 B

IPv4:    169.254.8.20/16
Gateway: yok

DHCP beklenen bir ağda normal lease alınamadığını düşündürür.

7.22.3 C

IPv4:    192.168.5.40/24
Gateway: 192.168.6.1

Gateway istemcinin /24 ağı dışında görünür ve uzak ağ erişimi için ciddi bir yapılandırma problemi oluşturabilir.

Bu üç örneği yalnız adreslere bakarak ayırabilmek, sonraki subnet ve sorun giderme bölümlerinin temelidir.

7.23 Kendinizi kontrol edin

  1. IPv4 neden dört adet 0–255 arası sayı ile gösterilir?
  2. 192 sayısını 8 bit ikili biçimde yazın.
  3. 192.168.10.25/24 ifadesindeki /24 neyi anlatır?
  4. /24 ile 255.255.255.0 arasındaki ilişki nedir?
  5. 172.20.5.10 ve 172.40.5.10 adreslerinden hangisi private bloktadır? Neden?
  6. DHCP beklenen bir ağda 169.254.44.9 görmeniz hangi hipotezi güçlendirir?
  7. 192.168.1.25/24 için 192.168.2.1 gateway verilmesindeki temel sorunu açıklayın.
  8. IPv6’nın toplam kaç bit olduğunu ve neden hexadecimal yazıldığını açıklayın.
  9. 2001:0db8:0000:0000:0000:0000:0000:0025 adresini kısaltın.
  10. ::1 ile fe80::1 adreslerinin rollerini ayırın.
  11. Bir bilgisayarda aynı anda hem IPv4 hem IPv6 adresi bulunması neden normal olabilir?
  12. IPv6 adresinde :: neden iki ayrı yerde kullanılamaz?

7.24 Bölüm özeti

IPv4 adresleri 32 bittir ve dört adet 8 bitlik oktet halinde ondalık biçimde gösterilir. IP adresi tek başına yeterli yapılandırma değildir; prefix/subnet mask, default gateway ve DNS bilgileriyle birlikte değerlendirilir. CIDR prefix’i adresin hangi bitlerinin ağ bölümünü oluşturduğunu belirtir ve modern IPv4 ağlarında temel yöntemdir. Private IPv4 blokları yerel ağlarda yaygındır; loopback ve link-local gibi özel amaçlı adresler farklı görevler üstlenir. Default gateway yerel subnet dışındaki hedeflere geçiş noktasıdır ve istemcinin yerel olarak erişebileceği bir adreste olmalıdır. IPv6 128 bitlik adresleri hexadecimal gruplarla gösterir; baştaki sıfırlar ve ardışık sıfır grupları belirli kurallarla kısaltılabilir. ::1 loopback, fe80::/10 link-local kapsamındadır. IPv4 ve IPv6 aynı cihazda dual stack biçiminde birlikte çalışabilir. Sonraki bölümde prefix bilgisini kullanarak ağ, host ve broadcast sınırlarını hesaplayacağız.

7.25 Kısa sözlük

Terim Kısa anlam
IPv4 32 bitlik Internet Protocol adresleme sürümü
Oktet IPv4 adresinde 8 bitlik grup
Prefix Adresin ağ bölümünün bit uzunluğu
Subnet mask IPv4’te ağ/host sınırını gösteren maske
Private IPv4 Genel internette doğrudan yönlendirilmek üzere ayrılmamış özel blok adresi
Public IPv4 Genel internet yönlendirme bağlamında kullanılabilen IPv4 adresi
Loopback Cihazın kendi ağ yığınına yönelen özel adres kapsamı
Link-local Yalnız yerel bağlantı kapsamındaki adres türü
Default gateway Yerel ağ dışı hedeflere varsayılan geçiş noktası
IPv6 128 bitlik Internet Protocol sürümü
Hexadecimal 0–9 ve A–F sembollerini kullanan 16 tabanlı sayı sistemi
Dual stack IPv4 ve IPv6’nın aynı sistemde birlikte kullanılması
Back to top

References

Deering, S., and R. Hinden. 2017. Internet Protocol, Version 6 (IPv6) Specification. RFC 8200. https://doi.org/10.17487/RFC8200.