İstemci bağlı diyor, kilit kapalı ve bir site hâlâ dairenizin adresini kaydediyor. Hiçbir şey başarısız olmadı. Tünel Wi-Fi ya da mobil bağlantınızın yerini almaz; seçili paketlerin çevresine ikinci bir zarf koyar ve o zarfı zaten sahip olduğunuz ağ üzerinden gönderir. Bu numarayı anlamak çoğunlukla tek bir isteği izlemek ve zarfın nerede açıldığını fark etmektir, çünkü ev adresinin sızmasından büyük bir indirmenin takılmasına kadar neredeyse her kafa karıştırıcı belirti o sınırdan gelir.

İki zarf, tek fiziksel bağlantı

Dizüstü bilgisayarınız yönlendiriciyle normal bağlantısını korur, yönlendirici de sağlayıcıyla normal bağlantısını korur. Tünel açıldığında bu yolda hiçbir şey değişmez. Değişen şey, seçili paketlerin sanal bir arayüze verilmesi, VPN eşine adreslenmiş yeni bir paketin içine sarılması ve fiziksel bağlantı üzerinden sıradan trafik olarak gönderilmesidir.

Alıcı uç, zarfı açan ve özgün paketi hedefine doğru ileten cihazdır. İki uç arasında bir gözlemci dış başlığı görür ve iç başlık hakkında hiçbir şey görmez, meğer ki protokol onu şifrelesin; çoğu tüketici protokolü bunu yapar ve genel teknik bunu gerektirmez.

Bu yüzden sanal arayüz hem gerçek hem yanıltıcıdır. Bir adresi ve en büyük iletim birimi olan bir çekirdek nesnesi olarak vardır ve işletim sistemi trafiği başka herhangi bir arayüz gibi oraya yönlendirir. Bu bir kablo değildir ve varlığı yalnızca bir bileşenin kurulu olduğunu kanıtlar. Tarayıcınızın onu kullanıp kullanmadığını yollar belirler, arayüzün açık olması değil.

Tek bir isteğin yolculuğunu izleyin

Bir hedef seçin ve çekirdeğe hangi arayüzü kullanacağını sorun. Bu tek komut tünelin bir şey yapıp yapmadığına dair tartışmaların çoğunu çözer:

ip route get 203.0.113.7
ip -brief addr show
ip -4 addr show dev wg0

Yol çıktısı tünel arayüzünü adlandırıyorsa paket sarılır. Fiziksel arayüzü adlandırıyorsa sarılmaz ve istemciyi kaç kez yeniden başlatırsanız başlatın bu değişmez. İkinci komut iki arayüzü yan yana gösterir ve adrese sahip olmadan ya da yanlış aileden bir adresle açılan bir tüneli tam böyle fark edersiniz.

Sonra zarfın içinden ilk atlamaya bakın ve dışarıdaki ilk atlamayla karşılaştırın:

traceroute -n -m 3 203.0.113.7
sudo tcpdump -ni wg0 -c 5

Tünelin içinde ilk atlama eşin iç adresidir, yönlendiriciniz değil. Tünel arayüzündeki yakalama iç paketleri gösterir, yani uygulamanın gönderdiğini sandığı trafik. Aynı anda fiziksel arayüzde yakalamak dış paketleri gösterir ve ikisi birlikte bir tünelin gerçekte ne yaptığının en açık gösterimidir.

Üç adres ve site yalnızca birini görür

İnsanlar bunları sürekli karıştırır ve bu karışıklık yanlış sızıntı raporları üretir. Bunlar farklı başlıklarda, farklı ömürlere sahip farklı alanlardır.

AddressWhere it appearsWho can see it
Endpoint addressOuter header, the peer you connect toYour access network and the path to it
Inner tunnel addressInside the envelope, on the virtual interfaceThe peer, and anything the peer routes to
Exit addressSource of the packet that reaches the websiteThe website and its upstream

Sanal bağdaştırıcının yanındaki sayı ikinci satırdır. Bir sitenin kaydettiği adres değildir ve onu genel IP'niz olarak anmak düpedüz yanlıştır. Bir sitenin gördüğü adresi çıkış atar ve özel ağ tünelinde hiç genel çıkış olmayabilir, çünkü hedef internet üzerinde değil kuruluşun içinde yaşar.

Siteler arası tünel, farklı uç noktaları olan aynı mekanizmadır. İki yönlendirici ağlar arasındaki trafiği sarar ve hiçbir tek cihazda istemci kurulu değildir. Zarf ilke olarak aynıdır, yönetim sınırı değil.

Zarf nerede açılır ve ondan ne sağ çıkar

Tünel kendi eşinde biter. Uygulamanın kendi şifrelemesi daha ileriye uzanıyorsa o sınırı aşar ve bu HTTPS için normal durumdur: tarayıcı oturumu sitede biter, bu yüzden çıkış okuyamadığı şifreli metni iletir.

Başka hiçbir şey varsayılan olarak sağ çıkmaz. Şifrelenmemiş bir istek, kafedeki Wi-Fi'de okunabildiği gibi çıkışta da okunabilir ve tünel, uygulamanın hiç sahip olmadığı bir korumayı eklemez. Aynı şekilde, çıkışın güvenlik duvarı kuralları ve iletme politikası sırada ne olacağını belirler; başarılı bir el sıkışma eş bağlantısı hakkında bir olgudur, yolculuğun geri kalanı hakkında değil.

Ek yük diğer görünür sonuçtur. Her paket ek bir başlık taşır ve dış taşıma kendi başlığını ekleyebilir, bu yüzden paket başına kullanılabilir yük küçülür. Sabit en büyük iletim birimine sahip bir yolda, bir tünelin ping'i geçirip büyük bir yüklemeyi durdurmasının nedeni tam olarak budur.

Uygulamanın gerçekte izlediği yolu denetleyin

Son adım, makineyi değil belirli uygulamayı doğrulamaktır. Hedefi çözün, o adresin yoluna bakın ve ardından bağlantı açıkken onu gözlemleyin:

getent hosts example.com
ip route get "$(getent hosts example.com | awk '{print $1; exit}')"
ss -tnp state established '( dport = :443 )'

Yol tüneli adlandırıyor ama soket listesi fiziksel arayüzden bir kaynak adresi olan bağlantı gösteriyorsa, uygulama belirli bir şeye bağlıdır ya da ikinci bir tünel varsayılan yol için yarışıyordur. Bu bir yönlendirme sorusudur ve istemcinin durum ekranından değil bu üç çıktıdan yanıtlanabilir.

RFC 4301 güvenlik mimarisi, bu sarmanın IPsec için IP katmanı sürümünü açıklar ve aynı katman mantığı WireGuard ve OpenVPN için de geçerlidir. İç paketi ve dış paketi ayrı nesneler olarak gösterebildiğinizde, tünel davranışının çoğu gizemli olmaktan çıkar ve okuyabildiğiniz bir yönlendirme tablosuna dönüşür.

İlgili makaleler