Tailscale ile Kendi Özel DNS'ini Kur: Reklamlardan Kurtul, Verini Koru
Kendi DNS Sunucunuzu Kurun: Ağ Seviyesinde Reklam Engelleme
Eğer Headscale üzerinden kendi Tailscale ağınızı çalıştırıyorsanız, zaten önemli bir sorunu çözmüşsünüz: cihazlarınız arasında özel ve şifreli bağlantı. Peki bilinmeyen tarafı da biliyor musunuz? DNS katmanında reklam engelleme ve izleme engellemesini de sağlayabilirsiniz. Bu sayede telefonunuz, dizüstü bilgisayarınız, tabletiniz, masaüstü bilgisayarınız—her cihaz otomatik olarak korunur.
Eski yöntem? Cloudflare, Quad9 veya benzeri hizmetlere yönelmek. İşe yarıyor, evet. Ama gerçek potansiyelinizi hiç kullanmıyorsunuz.
Kendi DNS Sunucusu Neden Daha İyi?
Headscale'in tüm ağınızın DNS çözümlemesini kontrol etmesi çok güzel bir sonuç doğurur: her cihaz, hiçbir kurulum yapmadan filtrelenmiş DNS sonuçları alır. Uygulama yüklemeye gerek yok. Her cihazda liste yönetmeye gerek yok. Bir sürü çözümü birleştirmeye gerek yok.
Pratik avantajlar bunlar:
- Reklamlar ağ genelinde kaybolur. Sizi takip etmeye çalışan o şüpheli reklamcılar cihazınıza hiç ulaşmaz.
- Dahili sunucu adları çalışır. Ev sunucunuz
homeserver.tailnet.localadıyla her yerden erişilebilir. - Tek bir güvenlik politikası. Hangi adreslerin çözümleneceğini siz belirlersiniz.
Blocky Neden Tercih Edilmelidir?
Pi-hole ve AdGuard Home duymuş olabilirsiniz. İkisi de kanıtlanmış, güvenilir araçlar. Fakat arayüzleri, veritabanları ve sayısız ayar seçenekleri vardır. Çoğu zaman bu fazlalık gerekli değildir.
Blocky farklı. Sadece filtrelemeyi isteyen kişiler için tasarlanmış bir DNS proxy. Tek bir YAML dosyasıyla ayarlanır. Her yerde çalışır. Tek işi yapıp iyi yapar: kötü DNS isteklerini engeller.
Dezavantajı? Havalı bir arayüzü yok. Fakat komut satırında yaşayan geliştirici ve altyapı mühendisleri için bu eksiklik değil, çıktır.
Blocky'nin özellikleri şunlar:
- Basit konfigürasyon. Veritabanı kurulumu yok, web arayüzü yok, güncellemeniz gereken panel yok.
- Hazır liste desteği. Topluluk kaynaklarından listeler yükleyebilir veya kendi listenizi oluşturabilirsiniz.
- Hafif yapı. Minimal donanımda mutlu şekilde çalışır—Raspberry Pi, küçük VPS, nerede Headscale varsa orada.
- Şifreli upstream bağlantısı. DNS-over-TLS (DoT) ile halka açık çözümleyicilere bağlanabilir.
Android Private DNS Tuzağı
Şu durum sık sık sorun yaratır: Android'in yerleşik "Private DNS" özelliğini halka açık bir DoT çözümleyicisine (AdGuard gibi) yönlendirmişsiniz ve güzel çalışıyor. Sonra Tailscale'i eklediniz ve DNS çöktü.
Ne oluyor: Tailscale, Headscale üzerinden Android cihazınıza özel DNS ayarlarını gönderiyor. Android bunu kabul ediyor ve DNS trafiğini Tailscale'in dahili çözümleyicisine (100.100.100.100) gönderiyor. Ama o çözümleyici DoT konuşmaz—sadece basit bir DNS relesidir. Android'in Private DNS kontrolü başarısız olur çünkü şifreli trafik bekliyor. Hiçbir şey çözümlenmiyor. Sıkışıp kalıyorsunuz.
Çözüm? Tailscale'in tüm DNS yönetimini ele geçirmek. Android'in Private DNS'ini Tailscale ile beraber kullanmaya çalışmayın. Yerine, ağınızda Blocky (veya benzeri) çalıştırın, Headscale'i ona yönlendirin, ve Tailscale'in tüm DNS sorgularını ele almasına izin verin. Blocky, halka açık çözümleyicilere giden trafiği şifreler—Android'in Private DNS'ine artık ihtiyacınız yok.
Başlamadan Önce Amaçlarınızı Net Leşin
Blocky'yi kurgulamaya başlamadan önce, neyi çözmek istediğiniz açık olmalı:
Amaç 1: Reklam ve izleyici engelleme her yerde. Ağınızdaki her cihaz otomatik olarak filtrelenmiş DNS sonuçları almalı. Kullanıcı tarafında hiçbir ayar yapılmamalı.
Amaç 2: Şifreli upstream DNS. Blocky ile halka açık çözümleyici arasındaki trafik şifreli olmalı (DoT). Cihazdan Blocky'ye giden trafik zaten WireGuard ile korunuyor olsa da, son adımda şifrelemeyi atlamaya gerek yok.
Amaç 3: Dahili alan adları çalışmalı. Özel hizmetlerinizin ağ genelinde çalışan DNS adları olmalı. homeserver.ts.internal her yerden erişilebildiğinde sorun kalmaz.
Amaç 4: Cihazlarda sıfır kurulum. Headscale üzerinden DNS ayarlarını gönderin ve unut. Cihazlar otomatik olarak alır.
Mimari Nasıl Çalışır
Akış şöyle:
- Cihazlarınız Tailscale'e (Headscale üzerinden) bağlanır.
- Headscale, Blocky'nin ağ içindeki IP'sine yönlendiren DNS ayarlarını gönderir.
- Cihaz DNS sorgusu yaptığında Blocky'ye ulaşır.
- Blocky sorguyu engel listelerine karşı kontrol eder. Engellenen istekler NXDOMAIN döndürür. Temiz sorgular upstream'e iletilir.
- Upstream sorguları DoT üzerinden halka açık çözümleyiciye (Cloudflare, Quad9 veya seçiminize) gider.
- Sonuçlar Blocky'ye gelir, önbelleğe alınır ve cihaza döner.
- Bütün bu sürede her şey WireGuard tarafından şifreli. Altyapı sizin. Kontrol sizin.
Bunun Neden Önemli Olduğu
Gizlilik ve reklam engelleme artık temel beklenti. Ama çoğu çözüm bunu tamamlayıcı olarak görüyor—her cihaza tek tek eklemek gerekiyor. Ağ seviyesi yaklaşımı farklı. Ölçeklenebilir. Yeni bir telefon eklediniz? Anında reklam engelleme, iş yok. Arkadaşınızın evine gittiniz? Koruma devam ediyor.
Geliştirici ve altyapı mühendisleri için bu, saldırı yüzeyini küçültmek demek. DNS'i siz kontrol edersiniz. Engel listelerini siz denetlersiniz. Hangi halka açık çözümleyiciyi güveneceksiniz ona siz karar verirsiniz. Bu, kendi sunucusu felsefesinin DNS katmanına uygulanması.
Başlangıç
Headscale'i zaten çalıştırıyorsanız, Blocky eklemek mantıklı bir sonraki adım. İstediğiniz DNS sunucusunu (Unbound, Bind, Coredns, hangisini istersen) kullanabilirsiniz, ama Blocky'nin sadeliği çoğu kişi için ideal seçim.
En güzel yanı? Kilitli değilsiniz. İhtiyaçlarınız değişirse, Blocky yerine başka bir çözümleyici kurun. Headscale ve Tailscale devam eder; umurlarında değil. Mimari bunu destekler.
DNS katmanınız çok önemli. Kör güvenle dışarıya vermeyin. Kontrol alın. Gürültüyü bloke edin. Verilerinizi kendi ağınızda tutun. Bu, kendi sunucusu altyapısının rüyası ve tamamen ulaşılabilir.