AllowedIPs bir yönlendirme listesidir, güvenlik duvarı kuralı değil
Giden trafik için bir eş seçer ve gelen kaynakları doğrular. Erişim listesi değildir ve rota yönetimini kapatmak bölünmüş tüneli düzeltmez.
Çoğu kişi AllowedIPs alanını bir izin listesi olarak okur; bir eşe bağlanabilecek adresler kümesi, neredeyse bir tünel için yazılmış güvenlik duvarı kuralı gibi. Öyle değil. Alan, iki yönde çalışan bir yönlendirme tablosudur: giden paket için bir eş seçer ve gelen paketin kaynağını doğrular. Onu erişim listesi olarak okumak, kimsenin istemediği trafiği yönlendiren yapılandırmalar üretir.
Bir alan, iki okuyucu: giden seçimi ve kaynak denetimi
İstemcide önekler, hangi hedeflerin o eşe gittiğini ve hangilerinin olağan ağda kaldığını belirler. Bu yüzden 0.0.0.0/0 için bir giriş her IPv4 hedefini yakalar ve bu yüzden tam tünel profili içe aktarmak olağan taramayı uzak makine üzerinden gönderir. Dar girişler tersini yapar: yalnızca listelediğiniz ağları yönlendirir ve geri kalan her şeyi olduğu yerde bırakır. WireGuard belgelerindeki şifre anahtarı yönlendirmesi bölümü iki işi tek yerde belirtir: giden eş seçimi ve gelen kaynağın doğrulanması.
Sunucuda aynı alan, her eşin hangi kaynak adresleri kullanabileceğini tanımlar. Bu bir paket filtresi değil, kriptografik bir denetimdir: iç kaynağı eşin listesiyle eşleşmeyen bir paket, ana bilgisayardaki herhangi bir güvenlik duvarı onu görmeden önce WireGuard içinde düşürülür. İki iş tek bir listeyi paylaşır ve listeyi başka bir yerden kopyalamanın düşünmediğiniz bir yerde yanlış davranmasının nedeni tam olarak budur.
İstemci bloğu bu karışıklığın çoğunun başladığı yerdir. Bölünmüş tünel uzak ağları adlandırır ve tam tünel aynı alanın varsayılan önekli hâlidir:
[Peer]
# split tunnel: only these networks
AllowedIPs = 10.77.0.0/24, 192.168.30.0/24
[Peer]
# full tunnel: everything, both families
AllowedIPs = 0.0.0.0/0, ::/0
Her iki biçim de kendi başına tamdır ve bunlar adım değil alternatiftir. Birincisi yalnızca o iki ağı tünelden geçirir; ikincisi her hedefi gönderir ve ::/0 girişi IPv4 varsayılanına IPv6 ekler. Hangisini seçerseniz seçin, wg-quick rotaları kurmaya başladığında o önekler o eş için tüm yönlendirme kararıdır.
Hub'ın farklı bir listeye ihtiyacı var
Bir hub, her istemcinin tünel adresini ana bilgisayar öneki olarak listeler; ayrıca o istemcinin gerçekten arkasında duran her ağı listeler. Bir istemcinin geniş listesini her hub eşine kopyalamak, hub'a birçok eşin aynı adresleri kaynak olarak kullanabileceğini söyler ve bu bir adres planı değildir. Endpoint alanı tamamen başka bir katmana aittir: eşin dış adresini ve bağlantı noktasını adlandırır, asla tünelin içindeki bir hedefi değil.
[Peer]
# laptop: tunnel address 10.77.0.2, office LAN behind it
AllowedIPs = 10.77.0.2/32, 192.168.30.0/24
Ana bilgisayar öneki tünel adresini taşır ve ağ öneki istemcinin arkasındakini taşır; ikisi de gereklidir. Ana bilgisayar öneki olmadan hub istemcinin kendi trafiğini geri gönderemez ve ağ öneki olmadan arkasındaki LAN erişilemez kalır; arkasında hiçbir şey olmayan bir eş yalnızca ana bilgisayar önekini alır.
Rota kurulumunu atlamak bir boşluk bırakır
wg-quick, bir yapılandırma dosyasından arayüzü kaldıran yardımcı, bu işin parçası olarak arayüz adreslerini ve rotaları kurar. Table = off ayarlamak yardımcıya rota işini atlamasını söyler; bu, yerine koyucuları kurmaz ve özel ağı erişilebilir yapmaz. Otomatik rotalar işi zaten yapıyorsa gereken önekleri adlandırmak daha açık bir yapılandırmadır. Rota yönetimini kapatıp yerine koyucuyu yazmamak bir tasarım değil, bir eksikliktir.
Temel wg aracı farklı davranır: arayüzü yapılandırır ve rotalara asla dokunmaz, bu yüzden doğrudan onun üzerine kurulmuş bir düzen kendi rota komutlarına ihtiyaç duyar. Bir araç için yazılmış talimatlar diğeriyle izlendiğinde yanlış görünebilir. Başarılı bir ping de zayıf bir kanıttır, çünkü ihtiyaç duyduğunuz her uygulama yolunu değil tek bir yolu dener.
DNS ve IPv6 ayrı ayrı kararlaştırılır
Tünelin duyurduğu DNS sunucusu adresini kontrol edin ve seçtiğiniz önekler üzerinden o adrese bir rota bulunduğunu doğrulayın. Bir çözümleyici ayarı çözümleyiciyi erişilebilir kılmaz ve tüneli daraltmak oraya giden rotayı sessizce kaldırabilir. IPv6'yı da ayrıca inceleyin, çünkü doğru bir IPv4 bölünmesi hâlâ fiziksel bağlantıya işaret eden bir IPv6 varsayılan rotası hakkında hiçbir şey söylemez. Bir eş bloğunu düzenlediğinizde üç ayrı karar aynı anda değişebilir.
Ardından bilinen bir başlangıç yapılandırmasından bir özel kaynak ve bir sıradan web sitesi açın. Kaynak yanıt verirse ve tarama hâlâ yerel bağlantıdan çıkıyorsa bölünme istediğinizi yapıyor demektir. Tarama aynı anda bozulursa tünel varsayılan rotayı almıştır ve önek listesi bakılacak yerdir.