IPv6’ya Geçiş Rehberi: Modern Hosting İçin IPv6 Yapılandırması
IPv6’ya Geçiş Rehberi: Modern Hosting İçin IPv6 Yapılandırması
Günümüzde internet cihazlarının artan adres ihtiyacı, Nesnelerin İnterneti (IoT) ve mobil ağlardaki büyüme, IPv4 adres stoklarını çoktan tüketti. Bu noktada, her cihaza benzersiz adres atayabilen, ölçeklenebilir ve gelişmiş güvenlik özellikleri sunan IPv6 devreye giriyor. Hosting sağlayıcıları ve sistem yöneticileri için doğru planlama ve yapılandırmayla hem mevcut servislerin kesintisiz çalışmasını sürdürmek hem de geleceğe hazır bir altyapı kurmak mümkün.
IPv6 Nedir ve Neden Önemli?
IPv6, Internet Protocol sürüm 6’nın kısaltması. Temel amacı; 128 bit uzunluğundaki adres yapısıyla 2^128 farklı adres imkânı sunmak. Bu sayı, evrende var olan atom sayısından bile fazla. Dolayısıyla; yeni sunucu, mobil cihaz veya IoT sensörü eklediğinizde adres sıkıntısı yaşamazsınız.
IPv6’nın sağladığı diğer avantajlar:
- Otomatik Adres Yapılandırma: SLAAC ve DHCPv6 ile merkezi yapılandırma zorunluluğunu azaltır.
- Yerleşik Güvenlik: IPsec protokolünü zorunlu kılarak veri bütünlüğü ve gizliliği destekler.
- Basitleştirilmiş Başlık Yapısı: Paket başlıkları (header) sadeleştirilmiş, yönlendirme (routing) hızlanmıştır.
- Yerel Multicast: Yayın (broadcast) trafiğini multicast’a çevirerek ağ yükünü düşürür.
IPv4 ve IPv6 Arasındaki Temel Farklar
Özellik | IPv4 | IPv6 |
Adres Uzunluğu | 32 bit (4 bayt) | 128 bit (16 bayt) |
Adres Türleri | Unicast, Broadcast | Unicast, Multicast, Anycast |
Konfigürasyon | Manuel veya DHCPv4 | SLAAC, DHCPv6 |
Güvenlik | Opsiyonel IPsec | Zorunlu IPsec desteği |
Paket Başlığı | 20 bayt, esnek modül | 40 bayt, sabit ve sadeleştirilmiş |
NAT Gereksinimi | Yaygın | Gerekli değil |
IPv6’ya geçiş, sadece adresleri genişletmekten ibaret değil; altyapınızın güvenlik, esneklik ve otomasyon yeteneklerini de artırıyor.
Geçiş Stratejileri
- Dual‑Stack (Çift Yığın): Hem IPv4 hem IPv6 adresi atayarak geçiş sürecinde en risksiz yöntem.
- Tünelleme (Tunneling): IPv6 paketlerini IPv4 üzerinden taşımak için 6in4, Teredo veya GRE tünelleri kullanılır.
- Çevirici (Translation): NAT64, DNS64 gibi yöntemlerle IPv6-only ağın IPv4 servisleriyle iletişimi sağlanır.
Çoğu hosting sağlayıcısı önce dual‑stack uyumlu altyapı sunar; bu sayede uygulamalarınızı kesintisiz test ederek tam geçişe hazırlanabilirsiniz.
Adım Adım IPv6 Yapılandırması
1. Sunucu İşletim Sistemi Seviyesi
Ubuntu (20.04+)
- IPv6 Modülünü Aktif Etme:
bash
KopyalaDüzenle
sudo sysctl -w net.ipv6.conf.all.disable_ipv6=0
sudo sysctl -w net.ipv6.conf.default.disable_ipv6=0
- Kalıcı Ayar: /etc/sysctl.conf içine aşağıdaki satırları ekleyin:
ini
KopyalaDüzenle
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0
- Ağ Arayüzüne IPv6 Adresi Atama: /etc/netplan/01-netcfg.yaml (veya benzeri) dosyasına:
yaml
KopyalaDüzenle
ethernets:
eth0:
addresses:
– 2001:db8:1234:1::10/64
gateway6: 2001:db8:1234:1::1
nameservers:
addresses:
– 2001:4860:4860::8888
– 2001:4860:4860::8844
Ardından:
bash
KopyalaDüzenle
sudo netplan apply
CentOS/RHEL (8+)
- IPv6’yı Etkinleştirme:
/etc/sysctl.d/99-ipv6.conf içinde:
ini
KopyalaDüzenle
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0
Uygulamak için:
bash
KopyalaDüzenle
sudo sysctl –system
- NetworkManager ile Adres Atama:
bash
KopyalaDüzenle
nmcli con mod “System eth0” ipv6.addresses “2001:db8:1234:2::10/64”
nmcli con mod “System eth0” ipv6.gateway “2001:db8:1234:2::1”
nmcli con mod “System eth0” ipv6.method manual
nmcli con up “System eth0”
2. DNS Yapılandırması
- AAAA Kayıtları: Her bir domain/subdomain için AAAA kaydı ekleyerek, DNS sunucunuza IPv6 adresini tanıtın.
- Reverse DNS (PTR): Hosting sağlayıcınızın panelinden veya bölgesel internet kayıt kuruluşundan (RIPE, ARIN) PTR kaydı isteyin. Bu, e‑posta teslimatı ve ters DNS sorguları için kritik.
3. Web Sunucusu Ayarları
Nginx
/etc/nginx/sites‑available/ornek.conf içinde:
nginx
KopyalaDüzenle
server {
listen 80;
listen [::]:80;
server_name ornek-site.com www.ornek-site.com;
root /var/www/ornek-site;
index index.html index.php;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
Apache
/etc/apache2/sites‑available/ornek.conf:
apache
KopyalaDüzenle
<VirtualHost *:80 [2001:db8:1234:1::10]:80>
ServerName ornek-site.com
DocumentRoot /var/www/ornek-site
<Directory /var/www/ornek-site>
AllowOverride All
Require all granted
</Directory>
<FilesMatch \.php$>
SetHandler “proxy:unix:/run/php/php7.4-fpm.sock|fcgi://localhost/”
</FilesMatch>
</VirtualHost>
4. Güvenlik Duvarı ve Erişim Kontrolü
UFW (Ubuntu)
bash
KopyalaDüzenle
sudo ufw allow proto tcp from any to any port 80,443
sudo ufw allow proto tcp from any to any port 80,443 comment ‘HTTP/HTTPS IPv6’
sudo ufw enable
Not: UFW otomatik olarak IPv6’yı destekler; /etc/default/ufw dosyasında IPV6=yes olmasına dikkat et.
iptables / nftables
- iptables:
bash
KopyalaDüzenle
ip6tables -A INPUT -p tcp –dport 80 -j ACCEPT
ip6tables -A INPUT -p tcp –dport 443 -j ACCEPT
- nftables:
bash
KopyalaDüzenle
table inet filter {
chain input {
tcp dport {80,443} accept
}
}
5. Dual‑Stack Testi ve Doğrulama
- Online Araçlar: https://test-ipv6.com/ veya IPv6-test.com üzerinden sunucunuzu kontrol edin.
- Komut Satırı:
bash
KopyalaDüzenle
curl -6 https://ornek-site.com -I
ping6 2001:db8:1234:1::10
- Tarayıcı Desteği: Modern tarayıcılar otomatik olarak IPv6’yı tercih eder; geliştirici araçlarındaki ağ sekmesinden (Network) gelen bağlantı URL’sinde [2001:…] görmüyorsanız sorun var demektir.
Otomasyon ve Altyapı Yönetimi
Büyük ölçekli veri merkezlerinde veya bulut ortamlarında:
- Ansible Playbook ile /etc/netplan veya NMCLI komutlarını tek satırda binlerce sunucuya dağıtabilirsiniz.
- Terraform kullanarak IPv6 destekli VPC, subnet ve instance tanımlarını kodla yöneterek tekrarlanabilir altyapılar oluşturabilirsiniz.
Bu sayede, yeni bir node devreye alındığında hem IPv4 hem IPv6 ayarları otomatik uygulanır.
Karşılaşılan Yaygın Sorunlar ve Çözümler
Sorun | Çözüm |
Adres Çakışması / Link Local Çakışması | ip -6 addr komutuyla mevcut tanımları temizleyin. |
DNS AAAA Kaydı Yansımıyor | TTL süresini düşürüp yeniden kaydet, dig AAAA ile kontrol et. |
Tünelleme Gecikmeleri (6in4) | MTU değerini 1280–1400 arasında optimize edin. |
Güvenlik Duvarı Paketlerini Düşürme | ip6tables -L -v ile hangi kural paket düşürüyor incele. |
Bazı WAN Sağlayıcılar IPv6 Desteği Sunmuyor | Tünel sağlayıcı (Hurricane Electric, SixXS) tercih edin. |
Gelecek Adımlar ve İpuçları
- IPv6-Only Ortamlar: Zamanla dual‑stack’i bir kenara bırakıp, sadece IPv6 üzerinden hizmet verecek test ortamları kurun.
- IPv6 Güvenlik Duvarı İncelemesi: IPv6 adres sahalarının genişliğini göz önünde bulundurarak rate limiting ve saldırı önleme politikaları oluşturun.
- Log ve İzleme: Syslog ve ELK/EFK yığınlarında hem IPv4 hem IPv6 trafiği etiketleyerek analiz edin.
- Otomatik Yenileme: DHCPv6 ile dinamik prefix delegation kullanarak host prefix’lerini otomatik yenileyin.
Modern hosting altyapınızda IPv6’ya geçiş, sizi adres sıkıntısından kurtarır ve güvenlikle otomasyon yeteneklerini önemli ölçüde artırır. Bu rehberdeki adımları takip ederek, sunucularınızı dual‑stack modda çalıştırabilir, DNS, web sunucusu ve güvenlik duvarı ayarlarını sorunsuz tamamlayabilirsiniz. Unutmayın; geçiş süreci planlı ve test odaklı ilerledikçe, hizmet kesintisi riskini en aza indirirsiniz.