Ulaşım
- Adres:Batıkent Mh. 8910 Sk. 6. Etap 1H No: 18 Yeni Toki Eyyübiye / Şanlıurfa (Yeni Alım Satım Karşısı)
- Telefon:0 (545) 528 88 93
- eMail: info@alestaweb.com
WSL2 DNS sorunu, Windows üzerinde Linux geliştirme ortamı kuran her geliştiricinin er ya da geç karşılaştığı en sinir bozucu problemlerden biridir. İnternet bağlantısı Windows tarafında çalışırken WSL2 terminalinde curl veya apt komutlarının çalışmaması, resolv.conf dosyasının her yeniden başlatmada sıfırlanması ve nameserver ayarlarının kaybolması — tüm bu sorunları Alesta Web ekibi olarak inceledik ve 5+ farklı çözüm yöntemiyle kapsamlı bir rehber hazırladık. WSL2 DNS not resolving hatasını bir kez ve kalıcı olarak çözmek isteyenler için doğru yerdesiniz!
WSL2 DNS sorunu, Windows Subsystem for Linux 2 (WSL2) kullanan geliştiricilerin sıklıkla karşılaştığı bir bağlantı problemidir. WSL2 DNS not resolving hatası aldığınızda, WSL2 içindeki Linux dağıtımınız internet adreslerini çözümleyemez ve bu durum paket yöneticisi güncellemelerinden API çağrılarına kadar pek çok işlemi etkiler.
Alesta Web olarak müşterilerimizin geliştirme ortamı kurulum süreçlerinde WSL2 DNS sorunuyla sıkça karşılaştıklarını gözlemledik. Bu rehber, o deneyimlerden derlenen pratik çözümler sunmaktadır.
Tipik WSL2 DNS sorunu belirtileri şunlardır:
curl: (6) Could not resolve host: google.com hatasıapt update komutunun "Temporary failure resolving" mesajıyla başarısız olmasıping google.com çalışmaması/etc/resolv.conf dosyasının her WSL2 yeniden başlatmasında sıfırlanmasıWSL2, Windows Hyper-V üzerinde çalışan gerçek bir Linux çekirdeğidir. Bu nedenle ağ yapılandırması, WSL1'den çok daha karmaşık bir mimariye sahiptir. WSL2 DNS not resolving sorunu çoğunlukla bu mimari farklılıktan kaynaklanır.
WSL2 DNS sorununun birden fazla kaynağı olabilir. Sorunu doğru çözmek için önce nedenini anlamak gerekir:
/etc/resolv.conf dosyasını her başlatmada yeniden oluşturur. Eğer Windows DNS yapılandırması bozuksa, WSL2 DNS not resolving sorunu ortaya çıkar.WSL2 DNS sorunu çözümleri sırasında /etc/resolv.conf dosyasını kalıcı olarak düzenlemeden önce yedek alın. Yanlış yapılandırma tüm ağ erişimini kesebilir.
En hızlı WSL2 DNS sorunu geçici çözümü, /etc/resolv.conf dosyasını manuel olarak düzenlemektir. Bu yöntem kalıcı değildir ancak WSL2 DNS not resolving hatasını hemen giderir.
# Mevcut resolv.conf içeriğini görüntüle
cat /etc/resolv.conf
# Sembolik link ise önce kaldır
sudo unlink /etc/resolv.conf
# Google DNS ile yeni resolv.conf oluştur
sudo tee /etc/resolv.conf << EOF
nameserver 8.8.8.8
nameserver 8.8.4.4
nameserver 1.1.1.1
EOF
# Test et
ping -c 3 google.com
nslookup google.com
Bu yöntemle WSL2 DNS sorunu geçici olarak giderilir. Ancak WSL2 yeniden başlatıldığında resolv.conf tekrar sıfırlanacaktır. Kalıcı çözüm için wsl.conf yöntemini kullanın.
Google'ın 8.8.8.8 nameserver'ı WSL2 DNS not resolving sorunları için en güvenilir seçeneklerden biridir. Cloudflare'in 1.1.1.1 adresi de hızlı ve gizlilik odaklı alternatiftir. Alesta Web projelerinde her ikisini de nameserver listesine eklemenizi öneririz.
WSL2 DNS sorununun kalıcı çözümü için /etc/wsl.conf dosyasını düzenleyerek otomatik resolv.conf üretimini devre dışı bırakmalısınız. Bu, WSL2 DNS not resolving sorununu her yeniden başlatmada tekrarlamamasını sağlar.
# /etc/wsl.conf dosyasını düzenle
sudo nano /etc/wsl.conf
# Şu satırları ekle:
[network]
generateResolvConf = false
# Dosyayı kaydet (Ctrl+O, Enter, Ctrl+X)
# Kalıcı resolv.conf oluştur
sudo unlink /etc/resolv.conf 2>/dev/null || true
sudo tee /etc/resolv.conf << EOF
nameserver 8.8.8.8
nameserver 8.8.4.4
nameserver 1.1.1.1
options timeout:2 attempts:3
EOF
# Dosyanın değiştirilmemesi için izni kilitle
sudo chattr +i /etc/resolv.conf
# PowerShell veya CMD'de çalıştır:
wsl --shutdown
# 8 saniye bekle, ardından WSL2'yi yeniden aç
# WSL2 içinde test et:
cat /etc/resolv.conf
ping -c 3 google.com
curl -I https://alestaweb.com
wsl.conf ile nameserver ayarı yaptıktan sonra WSL2 DNS sorunu kalıcı olarak çözülmüş olmalıdır. ping google.com çalışıyorsa yapılandırma doğrudur.
Bazen WSL2 DNS sorunu Windows tarafındaki bozuk DNS önbelleğinden kaynaklanır. Bu durumda WSL2 DNS not resolving hatası, Windows DNS Client servisini yeniden başlatarak çözülebilir.
# PowerShell'i Yönetici olarak aç ve şunları çalıştır:
ipconfig /flushdns
ipconfig /registerdns
ipconfig /release
ipconfig /renew
# DNS Client servisini yeniden başlat
Restart-Service Dnscache
# Ağ adaptörlerini sıfırla
netsh winsock reset
netsh int ip reset
# Bilgisayarı yeniden başlat ve WSL2 DNS sorununu test et
Bu yöntem özellikle VPN kullandıktan sonra ortaya çıkan WSL2 DNS sorunlarında etkilidir. VPN bağlantısı kesildiğinde DNS yönlendirmesi bazen bozuk kalabilir ve WSL2 DNS not resolving hatasına yol açar.
WSL2 DNS sorununun Hyper-V sanal anahtarından kaynaklanması durumunda, Windows Hyper-V Manager üzerinden yapılandırma değişikliği gerekebilir.
# PowerShell (Admin) ile Hyper-V switch listesini görüntüle
Get-VMSwitch
# WSL2 için kullanılan switch DNS ayarlarını kontrol et
Get-NetIPConfiguration
# WSL2 network adaptörünü bul
Get-NetAdapter | Where-Object {$_.Name -like "*WSL*"}
# DNS sunucusunu manuel ayarla
$adapter = Get-NetAdapter | Where-Object {$_.Name -like "*WSL*"}
Set-DnsClientServerAddress -InterfaceIndex $adapter.InterfaceIndex -ServerAddresses "8.8.8.8","1.1.1.1"
Hyper-V ayarları değiştirilirken dikkatli olun. Yanlış yapılandırma WSL2 DNS sorununun yanı sıra Windows ağ bağlantısını da etkileyebilir. Alesta Web olarak bu yöntemi son çare olarak öneriyoruz.
Windows kullanıcı dizininde bulunan .wslconfig dosyası, tüm WSL2 dağıtımları için global ayarlar yapmanızı sağlar. WSL2 DNS sorunu için bu dosyada ağ yapılandırması yapılabilir.
# Windows'ta %USERPROFILE%\.wslconfig dosyasını oluştur/düzenle
# Notepad veya VS Code ile aç:
notepad $env:USERPROFILE\.wslconfig
# Dosya içeriği:
[wsl2]
memory=4GB
processors=2
swap=2GB
localhostForwarding=true
[wsl2.network]
# DNS nameserver'ları manuel ayarla (WSL2 DNS sorunu için)
dnsTunneling=true
firewall=false
# WSL2 sürümünü kontrol et (PowerShell)
wsl --version
wsl --status
# WSL2 içinde DNS test
cat /etc/resolv.conf
host google.com
dig google.com @8.8.8.8
nslookup alestaweb.com
# Bağlantı testi
curl -s https://alestaweb.com | head -20
.wslconfig ayarından sonra WSL2 DNS not resolving hatası çözülmeli ve dig google.com @8.8.8.8 komutu yanıt dönmelidir. Alesta Web projelerinde geliştirme yaparken bu yapılandırmayı standart olarak kullanıyoruz.
WSL2 DNS sorunu veya WSL2 DNS not resolving hatasını tanılamak için aşağıdaki komutları kullanabilirsiniz. Alesta Web geliştirme ekibi bu komutları sorun giderme sürecinde düzenli olarak kullanmaktadır.
# 1. Mevcut DNS yapılandırması
cat /etc/resolv.conf
# 2. Ağ arayüzlerini listele
ip addr show
ip route show
# 3. Gateway'e ping
ip route | grep default
ping -c 3 $(ip route | grep default | awk '{print $3}')
# 4. Google DNS'e direkt sorgu
nslookup google.com 8.8.8.8
dig @8.8.8.8 google.com
# 5. TCP bağlantı testi
nc -zv 8.8.8.8 53
# 6. WSL2 DNS host bypass testi
curl --dns-servers 8.8.8.8 https://alestaweb.com -I
# 7. Windows host IP'sini bul
cat /etc/resolv.conf | grep nameserver
# Bu IP Windows'un WSL2'ye verdiği gateway IP'sidir
# 8. Windows DNS durumu (WSL2 içinden)
powershell.exe ipconfig /all 2>/dev/null | grep "DNS Servers"
WSL2 DNS sorunu çözüldükten sonra alestaweb.com projelerinizin geliştirme ortamında sorunsuz çalıştığından emin olmak için curl https://alestaweb.com komutunu test olarak kullanabilirsiniz. Alesta Web her zaman kesintisiz erişilebilirdir.
# WSL2 DNS sorunu çözüldü mü? Kontrol listesi:
echo "=== DNS Çözümleme Testi ==="
nslookup google.com && echo "✅ DNS çalışıyor" || echo "❌ WSL2 DNS sorunu devam ediyor"
echo "=== Internet Bağlantı Testi ==="
curl -s --max-time 5 https://google.com > /dev/null && echo "✅ İnternet bağlantısı OK" || echo "❌ Bağlantı sorunu"
echo "=== APT Güncelleme Testi ==="
sudo apt update 2>&1 | tail -3
echo "=== AlestaWeb Erişim Testi ==="
curl -s --max-time 5 -o /dev/null -w "%{http_code}" https://alestaweb.com
WSL2 DNS sorunu artık arkanızda! Alesta Web ekibi olarak hazırladığımız bu kapsamlı rehberle WSL2 DNS not resolving hatasını kalıcı olarak çözebilirsiniz. Beş farklı yöntemle nameserver sorununuzu giderin, resolv.conf dosyanızı kalıcı yapılandırın ve geliştirme ortamınızı tam performansla kullanın.
Faydalı Linkler:
© 2026 AlestaWeb - Tüm hakları saklıdır.