Sunucunuz IPv6 üzerinden yanıt vermiyorsa, adres büyük olasılıkla atanmış ama sistemde yapılandırılmamıştır. Bu rehber, adresi Ubuntu, Debian ve AlmaLinux üzerinde statik olarak nasıl ayarlayacağınızı, bağlantıyı nasıl test edeceğinizi ve güvenlik duvarıyla nasıl koruyacağınızı gösterir. IPv6 tahsisi olan her VPS Linux Infrawire için geçerlidir.
📋 Ön koşullar
- Ubuntu 24.04, Debian 12 veya AlmaLinux 9 / Rocky 9 çalıştıran, root SSH erişimli bir VPS. Müşteri alanınızdan IP adresini ve root parolasını bulabilirsiniz.
- IPv6 adresiniz, önek uzunluğu ve ağ geçidi; aşağıda
VPS_IPV6,PREFIX(çoğunlukla64) veIPV6_GATEWAYolarak yazılmıştır. - Arayüz adı (bu örneklerde
eth0):
Baship -br link ip -6 addr show ip -6 route show
Ağ dosyalarını düzenlerken, bir hata sizi dışarıda bırakmasın diye ikinci bir SSH oturumunu açık tutun.
🟠 Ubuntu 24.04: Netplan
Netplan dosyaları /etc/netplan/ içindedir. Bulut imajlarında dosya çoğunlukla cloud-init tarafından üretilir ve yeniden başlatmada ezilebilir; bu yüzden önce onun ağ yönetimini kapatın:
Bashsudo nano /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
YAMLnetwork: {config: disabled}
Ardından Netplan dosyanızı (örneğin /etc/netplan/50-cloud-init.yaml) düzenleyip IPv6 adresini ve rotayı ekleyin. Mevcut IPv4 satırlarını koruyun:
YAML1network: 2 version: 2 3 ethernets: 4 eth0: 5 addresses: 6 - VPS_IP/IPV4_PREFIX 7 - VPS_IPV6/PREFIX 8 routes: 9 - to: default 10 via: IPV4_GATEWAY 11 - to: default 12 via: IPV6_GATEWAY 13 nameservers: 14 addresses: [1.1.1.1, 2606:4700:4700::1111]
Bashsudo chmod 600 /etc/netplan/*.yaml sudo netplan try
netplan try, onaylamazsanız 120 saniye sonra otomatik olarak geri alır; bu da hatalı yapılandırmadan sizi korur. Enter ile onaylayın ya da emin olduktan sonra sudo netplan apply kullanın.
🔴 Debian 12: /etc/network/interfaces
Bashsudo nano /etc/network/interfaces
Aynı arayüz için bir blok ekleyin:
INIiface eth0 inet6 static address VPS_IPV6/PREFIX gateway IPV6_GATEWAY dns-nameservers 2606:4700:4700::1111
dns-nameservers satırı yalnızca resolvconf paketi kuruluysa çalışır; aksi halde çözümleyiciyi /etc/resolv.conf içine yazın. Değişikliği uygulayın:
Bashsudo systemctl restart networking
Hizmeti yeniden başlatmak bağlantıyı kısa süre kesebilir. Arayüz IPv4 için DHCP ile yönetiliyorsa ve yalnızca IPv6 eklemek istiyorsanız, konsoldan sudo ifdown eth0 && sudo ifup eth0 da çalıştırabilirsiniz.
🔵 AlmaLinux 9 / Rocky 9: nmcli
Arayüzü NetworkManager yönetir. Önce bağlantı adlarını listeleyin:
Bashnmcli connection show
Gördüğünüz adı (CON_NAME, örneğin System eth0 veya cloud-init eth0) kullanın:
Bashsudo nmcli connection modify 'CON_NAME' ipv6.method manual \ ipv6.addresses VPS_IPV6/PREFIX \ ipv6.gateway IPV6_GATEWAY \ ipv6.dns 2606:4700:4700::1111 sudo nmcli connection up 'CON_NAME'
Değişiklik bağlantı profiline kaydedilir ve yeniden başlatmalarda korunur.
✅ Bağlantıyı test edin
Baship -6 addr show dev eth0 ip -6 route show default ping -6 -c 3 IPV6_GATEWAY ping -6 -c 3 2606:4700:4700::1111 curl -6 -I https://www.debian.org
Eski sistemlerde ping6, ping -6 ile aynı işi yapar. Ayrıca IPv6 erişimi olan başka bir makineden VPS adresinizi kullanarak kontrol edin:
Bashping -6 -c 3 VPS_IPV6 ssh root@VPS_IPV6
🔥 IPv6 için güvenlik duvarı
Yalnızca IPv4 için var olan bir kural IPv6 tarafını açık bırakır. UFW ile IPv6 desteğinin açık olduğundan emin olun:
Bashgrep IPV6 /etc/default/ufw # IPV6=yes göstermeli sudo ufw allow 22/tcp sudo ufw allow 80,443/tcp sudo ufw enable sudo ufw status verbose
Her kural bu durumda iki kez görünür, biri (v6) ile. AlmaLinux'ta firewalld aynı komutlarla iki ailenin de işini görür:
Bashsudo firewall-cmd --permanent --add-service=ssh sudo firewall-cmd --permanent --add-service=https sudo firewall-cmd --reload
🛠️ Sorun giderme
Adres var ama ağ geçidine ping başarısız. Önek uzunluğunu ve ağ geçidini kontrol edin. Bazı ağlar fe80::1 gibi bağlantı-yerel bir ağ geçidi kullanır; bu durumda ağ geçidini bu değere ayarlayın ve aracınız isterse rotaya dev eth0 ekleyin.
Bir sonraki yeniden başlatmaya kadar çalışıyor. Başka bir araç yapılandırmayı yeniden yazıyor: Ubuntu'da cloud-init (ilk bölüme bakın) ya da yapılandırma dosyalarına hiç ulaşmamış bir ip -6 addr add komutu. ip ile verilen komutlar geçicidir.
IPv6 ping'de çalışıyor ama web sitelerinde çalışmıyor. Güvenlik duvarı ya da hizmet yalnızca IPv4 dinliyor. ss -tlnp ile kontrol edin: bir web sunucusu yalnızca 0.0.0.0:80 değil, [::]:80 de göstermelidir. nginx'te sunucu bloğuna listen [::]:80; ekleyin.
🚀 VPS'iniz artık IPv6 konuşuyor: bir AAAA kaydı yayımlayın, hizmetlerinize her iki protokolden de ulaşılsın.