Derinlemesine
VLESS nedir ve aynı ayar neden bazı ağlarda çalışmaz?

İçindekiler
VLESS, bir uygulamanın sunucuya kimin bağlandığını ve trafiğin nereye gitmesi gerektiğini bildirmek için kullandığı bir protokoldür. Tipik bir kurulumda VLESS kendi başına hiçbir şeyi şifrelemez, bu işi TLS ya da REALITY yapar. İsteğe bağlı VLESS Encryption ise özel durumlar için 2025’te eklendi. Aşağıda VLESS’in bir VPN olup olmadığına, sağlayıcınızın hâlâ neleri görebildiğine ve aynı ayarın neden bir ağda çalışıp diğerinde çalışmadığına bakıyoruz.
VLESS bir VPN mi?
VLESS sık sık VPN protokolleriyle aynı kefeye konur, ama tasarım olarak bir proxy’ye daha yakındır. Uygulama sunucudan kendisini belirli bir adrese ve porta bağlamasını ister. Sunucu bu bağlantıyı kendisi açar ve verileri her iki yönde aktarır. İkisi arasındaki farkı VPN ve proxy farkı yazısında anlattık.
VPN kısmı uygulamadan gelir. Bebra gibi uygulamalar cihazda sistem düzeyinde bir VPN kurar, cihazın tüm trafiğini onun üzerinden yönlendirir ve her bağlantıyı VLESS ya da benzeri bir protokolle bir sunucuya gönderir. Sizin için bu, herhangi bir VPN gibi çalışır. VLESS’in kendisi yalnızca sunucunun kime hizmet ettiğini ve sonra nereye gideceğini bilmesini sağlar.
Uygulamadan siteye
Bir VLESS bağlantısı dört duraktan geçer.
- Uygulama. Verilerinizin önüne kullanıcı kimliğinizi (UUID), hedef adresi ve portu içeren kısa bir VLESS başlığı koyar.
- Dış katman. Başlık ve veriler sunucuya TLS ya da REALITY içinde gider. Dışarıdan bu, HTTPS üzerinden bir siteye yapılan ziyarete benzer.
- Sunucu. Dış katmanı açar ve UUID’yi kontrol eder. Kimlik tanınmıyorsa bağlantı orada sona erer. Tanınıyorsa sunucu başlıktaki adrese bağlanır.
- Site. Sunucudan gelen isteği alır ve yanıtlar, yanıt da aynı yoldan size döner.
Bu yolda VLESS’in tek bir görevi var: sunucuya kim olduğunuzu ve nereye gittiğinizi söylemek. Şifrelemeden bağlantının dışarıdan nasıl göründüğüne kadar geri kalan her şey dış katmana kalır. Bu yüzden “VLESS bağlantısı” denince neredeyse her zaman VLESS + REALITY gibi bir ikili kastedilir.
Şifrelemeyi kim yapar
Xray ayarlarında VLESS’in zorunlu bir encryption alanı vardır ve tipik bir kurulumda bu alanda none yazar. Verileri dış katman, yani TLS ya da REALITY korur.
VLESS’i, aynı V2Ray projesinin daha eski bir protokolü olan VMess’ten ayıran da budur. VMess şifrelemeyi AES-128-GCM ya da ChaCha20-Poly1305 ile kendisi yapar ve cihazda doğru bir saat gerektirir. VLESS ise 2020’de V2Ray’de, cihaz saatine bağlı olmayan daha basit bir alternatif olarak ortaya çıktı.
Artık VLESS’in kendi şifrelemesi de var. VLESS Encryption, özel kurulumlar için 2025’te Xray’e eklendi. TLS ya da REALITY ile kullanılan olağan kurulumda ise encryption alanında hâlâ none yazar.
Sağlayıcınız neyi görebilir
Sağlayıcınız ve Wi-Fi ağını işleten kişi VLESS başlığını göremez, çünkü başlık şifreli kanalın içindedir. Hangi siteyi açtığınızı ya da sayfada ne olduğunu da göremezler. VPN nedir yazımız bunun nasıl göründüğünü tek bir istek üzerinden gösteriyor. Yine de bazı şeyler dışarıdan görünür.
- Sunucunun adresi. Cihazınızın bağlandığı IP adresi her zaman görünür.
- El sıkışmadaki ad. İlk TLS mesajı şifrelenmeden gider ve genellikle bir site adı (SNI) içerir. Sade TLS kullanıldığında bu, sunucunun kendi alan adıdır. REALITY kullanıldığında ise sunucunun kılığına girdiği, üçüncü bir tarafa ait gerçek sitenin adıdır.
- Paket boyutları ve zamanlama. İçerik şifrelidir, ama kaç baytın hangi sırayla gidip geldiği şifreli değildir.
REALITY iki koruma daha ekler. İstemci el sıkışmayı yaygın bir tarayıcının yapacağı gibi başlatır ve REALITY’nin ayarları bu parmak izini zorunlu kılar. Biri ne olduğunu görmek için sunucuya bağlanırsa sunucu bu bağlantıyı gerçek siteye devreder ve ziyaretçi o sitenin yanıtını alır. VLESS’e yalnızca anahtarı bilen istemciler ulaşır.
Neden bir ağda çalışıp diğerinde çalışmaz
Filtreler sağlayıcıdan sağlayıcıya değişir ve yukarıda sayılan izleri arar. Bir sağlayıcı bir listedeki sunucu adreslerini engeller, o zaman yalnızca yeni bir adres işe yarar. Bir diğeri el sıkışmaları inceler, bir üçüncüsü paket boyutlarındaki desenlere bakar. Bu yüzden evde çalışan bir ayar mobil veride ya da otelin Wi-Fi ağında başarısız olabilir.
En çok ele veren izlerden biri, el sıkışmanın içindeki el sıkışmadır. VLESS üzerinden bir HTTPS sitesi açtığınızda sitenin kendi TLS bağlantısı dıştaki TLS katmanının içinde çalışır ve ilk paketleri kısa, uzunlukları da tanınabilirdir. “Fingerprinting Obfuscated Proxy Traffic with Encapsulated TLS Handshakes” (USENIX Security 2024) makalesinin yazarları, yaklaşık bir milyon kullanıcısı olan bir internet sağlayıcısında tam olarak bunu aradı. Sıradan trafiğe neredeyse hiç dokunmadan gizlenmiş proxy trafiğini ayıkladılar. Makale ayrıca rastgele dolgunun (padding) ya da çoğullamanın (multiplexing) tek başına bu izi gizlemediğini gösterdi, çünkü ikisi de trafik patlamalarının boyutunu ya da gidiş-dönüş sayısını değiştirmez.
Xray’in bu ize yanıtı XTLS Vision’dır. İçteki el sıkışmanın kısa paketlerini, uzunlukları onu ele vermesin diye doldurur, el sıkışma tamamlandıktan sonra da verileri olduğu gibi aktarır. Geliştiricileri, Vision’ın el sıkışmanın zamanlamasını gizlemediğini kabul ediyor.
Bebra bu konuda ne yapıyor
Bebra’da VLESS + REALITY, bağlantı yöntemlerinden yalnızca biridir, yanında XHTTP, Hysteria2 ve Shadowsocks da var. Bu yöntemler ağda farklı görünür, bu yüzden birine takılan bir filtre diğerini fark etmeyebilir. Hangi protokolün ve rotanın kullanılacağına uygulama karar verir, bir rota çalışmayı bırakırsa başka birine geçer. Dördü arasındaki farkları VPN protokolleri yazımızda anlattık.
Ayarlamanız gereken bir şey yok. Uygulamada protokol seçme ayarı yok. Uygulama cihazınız için kendiliğinden bir hesap oluşturur, bir ülkeye bağlanmak için de kutucuğuna dokunmanız yeterli. Bir ülkeye yine de bağlanılamıyorsa Hesap → Ayarlar bölümüne gidin ve “Çalışan sunucuyu bul” düğmesine dokunun. Uygulama rotaları yeniden test eder ve yeni sunucu adresleri alır, bu iki dakikaya kadar sürer. Sağlayıcınız eski adresi engellediyse işe yarayan tam da yeni bir adrestir.
Bebra’yı denemek için 10 ₽ karşılığında deneme süresiyle başlayın. 3 gün tam erişim, ardından aylık 500 ₽. Abonelik otomatik olarak yenilenir.
Sorular ve yanıtlar
VLESS’e neden şifrelemesiz protokol deniyor?
Çünkü tipik bir kurulumda kendisi hiçbir şeyi şifrelemez. Encryption alanında none yazar, şifrelemeyi TLS ya da REALITY yapar. İsteğe bağlı VLESS Encryption ise özel durumlar için 2025’te eklendi.
Bebra’da VLESS’i elle seçebilir miyim?
Hayır, uygulamada protokol seçme ayarı yok. Bağlantının VLESS + REALITY, XHTTP, Hysteria2 ve Shadowsocks’tan hangisiyle kurulacağına Bebra karar verir ve mevcut rota çalışmayı bırakırsa başka bir rotaya geçer.
VLESS’in Shadowsocks’tan farkı nedir?
Shadowsocks verileri, istemcinin ve sunucunun önceden bildiği bir anahtarla kendisi şifreler. Akışı rastgele bir tuz (salt) ile başlar, ardından şifreli parçalar gelir ve etrafında TLS yoktur. VLESS ise kendi başına şifreleme yapmaz, TLS ya da REALITY içinde gider. Bu yüzden dışarıdan HTTPS üzerinden bir siteye yapılan ziyarete benzer.
Sağlayıcım VLESS üzerinden hangi siteleri açtığımı görebilir mi?
Hayır. Sitenin adresi VLESS başlığında, yani şifreli kanalın içindedir. Sağlayıcınız sunucunun adresini, TLS el sıkışmasındaki adı ve paket boyutlarını görür.
Biri bir REALITY sunucusunu yoklarsa ne görür?
Sunucunun kılığına girdiği gerçek sitenin yanıtını. REALITY doğru anahtarı olmayan bağlantıları o siteye devreder ve VLESS’e yalnızca kendi istemcilerini geçirir.
XTLS Vision ne işe yarar?
Şifreli kanalın içinde çalışan el sıkışmanın kısa paketlerini, uzunlukları o el sıkışmayı ele vermesin diye doldurur. Ardından Vision verileri olduğu gibi aktarır. Geliştiricileri, el sıkışmanın zamanlamasını gizlemediğini söylüyor.



