IPv6 projeleri genellikle teknik zorluktan değil, nereden başlanacağının belirsizliğinden takılır. Oysa geçişin büyük kısmı IPv4’ü kapatmakla değil, IPv6’yı mevcut ağın yanına kontrollü biçimde eklemekle ilgilidir. Bu yazıda adres planından izlemeye kadar, küçük adımlarla ilerleyen bir yol haritası öneriyoruz.
1. Önce adres planı
IPv6’da adres kıtlığı yok, ama plansızlık var. IPv4 alışkanlığıyla her ihtiyaca “yetecek kadar” küçük bir blok vermek, ileride özetlenemeyen (aggregate edilemeyen) bir tabloya dönüşür. Temel kural basit: her LAN segmenti /64 alır, bölmeler nibble (4 bit) sınırında yapılır. Nibble sınırı hem okunabilirliği hem de reverse DNS delegasyonunu kolaylaştırır.
Örnek olarak elinizde 2001:db8:1200::/48 olduğunu düşünelim. Bir /48 içinde 65.536 adet /64 vardır. Dördüncü hextet’i şöyle bölebilirsiniz:
| Blok | Kullanım |
|---|---|
2001:db8:1200:0000::/52 |
Altyapı: loopback, point-to-point, yönetim |
2001:db8:1200:1000::/52 |
Lokasyon A sunucu VLAN’ları |
2001:db8:1200:2000::/52 |
Lokasyon B sunucu VLAN’ları |
2001:db8:1200:f000::/52 |
Rezerv |
Altyapı bloğunun içinde de sabit bir düzen kurun:
- Loopback’ler:
2001:db8:1200::/64içinden cihaz başına bir /128. - Point-to-point bağlantılar: her link için bir /64 ayırın, üzerinde /127 kullanın (RFC 6164). /64’ün tamamını ayırmak ileride /64’e dönmek isterseniz yeniden numaralandırmayı önler.
- Yönetim VLAN’ı:
2001:db8:1200:10::/64gibi ayrı ve kolay filtrelenebilir bir blok.
VLAN numarasını hextet’e gömmek (VLAN 120 → 2001:db8:1200:1120::/64) sahada çok işe yarar; bir adrese bakıp nerede olduğunu anlamak için tabloya ihtiyaç kalmaz.
2. Dual-stack ile ilerleyin
Sunucu ve servis tarafında en az sürprizli yöntem dual-stack’tir: her arayüz hem IPv4 hem IPv6 adresine sahip olur, uygulamalar iki protokolü paralel konuşur. NAT64/DNS64 gibi çeviri mekanizmaları istemci ağlarında anlamlıdır, ancak sunucu tarafında genellikle gereksiz karmaşıklık getirir.
Sunucularda adresleme için iki seçenek var:
- Statik adres: Sunucular, yük dengeleyiciler ve DNS kayıtlarında görünecek her şey için tercih edin.
::10,::11gibi okunabilir host kısımları kullanın. - SLAAC: İstemci ağları ve geçici makineler için uygundur. Sunucularda kullanacaksanız privacy extension’ı kapatın; aksi halde çıkış adresi zamanla değişir ve log eşleştirmesi zorlaşır.
Bir Linux sunucuda kalıcı yapılandırma örneği (netplan):
network:
version: 2
ethernets:
eth0:
addresses:
- 192.0.2.10/24
- 2001:db8:1200:1120::10/64
routes:
- to: default
via: 192.0.2.1
- to: default
via: 2001:db8:1200:1120::1
accept-ra: false
Router advertisement’ı sunucu VLAN’larında kapatmak (accept-ra: false) ve varsayılan ağ geçidini statik vermek, sahte RA kaynaklı sorunları baştan ortadan kaldırır.
3. DNS ve AAAA kayıtları
Dual-stack bir servisin ilk görünür adımı AAAA kaydıdır. Ama AAAA kaydını yayınladığınız anda, IPv6 bağlantısı olan istemciler Happy Eyeballs (RFC 8305) gereği önce IPv6’yı deneyecektir. Bu yüzden sıralama önemli:
- Sunucuya IPv6 adresi verin, dışarıdan erişimi test edin.
- Servisin (web sunucusu, SMTP vb.) IPv6’da dinlediğini doğrulayın:
ss -ltn | grep '\['. - Sonra AAAA kaydını ekleyin, TTL’i ilk günlerde kısa tutun.
- PTR kayıtlarını unutmayın. Özellikle e-posta sunucularında eksik reverse DNS, IPv6 üzerinden gönderilen postaların reddedilmesine yol açar.
Hızlı kontrol:
dig +short AAAA www.example.com
curl -6 -sI https://www.example.com | head -1
dig +short -x 2001:db8:1200:1120::10
4. Güvenlik duvarı kuralları
IPv6’ya geçişte en sık görülen açık, IPv4 kurallarının IPv6’ya aktarılmamasıdır. Sunucu IPv4’te sıkı filtrelenirken IPv6’da tüm portları açık bırakılabilir. Kuralları iki protokol için tek yerden yönetmek bu riski azaltır; nftables’ta inet ailesi bunu sağlar.
IPv4’ten farklı olarak ICMPv6’yı toptan engellemek ağı bozar. Neighbor Discovery ve Path MTU Discovery ICMPv6’ya bağlıdır. RFC 4890’daki önerilere yakın, minimal bir örnek:
table inet filter {
chain input {
type filter hook input priority 0; policy drop;
ct state established,related accept
iif lo accept
icmpv6 type { destination-unreachable, packet-too-big,
time-exceeded, parameter-problem,
echo-request, nd-neighbor-solicit,
nd-neighbor-advert, nd-router-advert } accept
icmp type { echo-request, destination-unreachable,
time-exceeded } accept
tcp dport { 22, 443 } accept
}
}
packet-too-big mesajlarını engellemek, büyük paketlerin sessizce kaybolmasına, yani “bağlantı kuruluyor ama sayfa yüklenmiyor” türünden teşhisi zor arızalara neden olur.
Sınır router’ında da IPv4’teki bogon filtrelerinin IPv6 karşılığını uygulayın: kendi prefix’iniz dışından kaynaklı giden trafiği ve dokümantasyon, ULA gibi adreslerden gelen trafiği düşürün.
5. İzleme
IPv6 “çalışıyor” demek, izleniyor demek değildir. Geçiş sürecinde iki protokolü ayrı ayrı gözlemleyin:
- Her dual-stack servis için hem A hem AAAA adresine ayrı kontrol tanımlayın. Tek bir hostname kontrolü, istemci hangi protokolü seçtiyse onu test eder ve diğerindeki arızayı gizler.
- Arayüz trafik grafiklerinde IPv4 ve IPv6’yı ayrı sayaçlarla toplayın; IPv6 payının beklenmedik şekilde sıfıra düşmesi genellikle bir yönlendirme ya da filtre sorununa işaret eder.
- BGP tarafında IPv6 oturumlarını ve alınan prefix sayılarını ayrı izleyin.
- Dışarıdan erişimi farklı ağlardan doğrulamak için bir looking glass kullanın. Netlojik’in Looking Glass aracı üzerinden IPv6 hedeflere ping ve traceroute çalıştırabilirsiniz.
Aşamalı plan
Hepsini bir anda yapmak yerine şu sırayı öneririz:
- Hazırlık: Adres planını yazılı hale getirin, envanter ve IPAM’e işleyin. Cihazların IPv6 desteğini ve lisans gereksinimlerini kontrol edin.
- Omurga: Loopback, point-to-point ve BGP oturumlarını IPv6 ile kurun. IGP’yi (OSPFv3 ya da IS-IS) devreye alın.
- Güvenlik: Güvenlik duvarı kurallarını iki protokol için eşitleyin, ICMPv6 politikasını netleştirin.
- Altyapı servisleri: DNS resolver’lar, NTP, izleme sistemi ve log toplama IPv6 ile erişilebilir olsun.
- Dış servisler: Web, API ve e-posta sunucularına IPv6 verin; AAAA ve PTR kayıtlarını ekleyin.
- İç ağlar: Ofis ve yönetim ağlarını dual-stack’e alın.
- Gözden geçirme: Birkaç hafta sonra IPv6 trafiğini, hata kayıtlarını ve izleme alarmlarını değerlendirin.
Her aşama tek başına geri alınabilir ve bir öncekinin üzerine kurulur. İyi bir adres planı ve eşit uygulanan güvenlik kuralları varsa, IPv6 ağınızda ayrı bir proje olmaktan çıkar ve sıradan bir altyapı katmanına dönüşür.
