WireGuard içinde kurumsal VPN: hangi katman önce gelir?
Tek makinede iki istemci ancak dış tünel iç istemcinin kendi bağlantısını taşıdığında ve metrikler her önek için doğru arayüzü seçtiğinde çalışır.
Bir geliştiricinin dizüstü bilgisayarında tünelleri iç içe koymak için iki geçerli neden vardır. Ya kurumsal istemci belirli bir ülkeden geliyormuş gibi görünmelidir, ya da iki özel ağ aynı anda erişilebilir olmalıdır. Her iki durumda da dış tünel, iç istemcinin kendi bağlantısını taşımalıdır.
İki istemciyi herhangi bir sırayla başlatmak bunu üretmez. Bunu yönlendirme üretir.
Olası iki sırayı karşılaştırın
Uç noktasına genel internetten erişilebilen tüneli dış katman olarak seçin. İç katman, sunucusu yalnızca o çıkış üzerinden yanıt veren tüneldir. Windows'ta pratik ayrım dışarıda WireGuard ve içeride kurumsal istemcidir. Belirleyici etken denetimdir.
Resmî WireGuard istemcisi, yollar ve DNS dahil tam bir yapılandırma dosyası uygular. Ticari kurumsal istemciler genellikle ikisini de gizler. Gizli bir istemciyi dışarıya koymak, altındaki yol hakkında tahmin yürütmenize bırakır.
Ters sıra imkânsız değildir. Yalnızca üzerinde düşünmek daha zordur, çünkü dış istemci yolları hiç görmediğiniz bir zamanlamaya göre yeniden yazar.
AllowedIPs yalnızca kurumsal aralığı adlandırsın
AllowedIPs WireGuard'ın tünele yönlendirdiği hedefleri listeler. İç içe koymak için yalnızca iç sunucunun adresine ve kurumsal öneklere ihtiyaç duyar. Geri kalan her şey yerel ağda kalır, yazıcılar ve hipervizör dahil. Bu tasarım gereği bölünmüş bir tüneldir ve dışlama sorunundan tamamen kaçınır.
Tam tünelli bir dış katman 0.0.0.0/0 eksi yerel aralıklara ihtiyaç duyar. Biçim bir dışlamayı ifade edemez, bu yüzden tümleyen hesaplanıp yapıştırılmalıdır.
[Interface]
PrivateKey = ...
Address = 10.99.4.2/32
[Peer]
PublicKey = ...
Endpoint = 198.51.100.44:51820
AllowedIPs = 198.51.100.44/32, 10.20.0.0/16, 10.21.0.0/16
İç istemci kendi yollarını kurmadığında kurumsal önekleri kendiniz listeleyin. O satırdan eksik kalan bir önek, dış tünelin hiç taşımadığı bir hedeftir. Listenin eski bir kopyası hiç olmamasından kötüdür, çünkü hâlâ doğru görünür.
Sıra, metrikler ve ikinci bağdaştırıcı
Önce dış tünele bağlanın, sonra kurumsal istemciyi başlatın. O zaman uç nokta bağlantısı yerel ağ geçidi yerine WireGuard üzerinden çıkar. Kurumsal arayüze daha düşük bir metrik verin ki önekleri sahip olduğu adreslerde kazansın.
# which interface currently claims the corporate prefix?
Find-NetRoute -RemoteIPAddress 10.20.10.5 | Select-Object -First 1
# prefer the corporate interface for its own prefixes
Set-NetIPInterface -InterfaceAlias 'Corp VPN' -InterfaceMetric 3
Set-NetIPInterface -InterfaceAlias 'wg-personal' -InterfaceMetric 40
wg show interfaces
Metrikler insanların atladığı adımdır. Bir sıra olmadan, örtüşen önek için en son kurulan yol kazanır. Bu açılışlar arasında değişir, bu yüzden sorun aralıklı görünür.
OpenVPN 2.6 üzerine kurulu istemciler kendi tuzaklarını ekler. Veri kanalı boşaltma bağdaştırıcısı zaten meşgulse, ikinci örnek başlamayı reddeder. Profile disable-dco eklemek eski TAP yoluna döner ve o zaman ikisi yan yana çalışır.
İç içe yolun koptuğu yer
Dış tünelin bağlantısını kesmek içtekini öldürür. Yalnızca iç istemciyi yeniden bağlamak onu çoğu zaman doğrudan internete gönderir ve iç içeliği sessizce kaldırır. Her seferinde iki tünel de durdurulmuş hâlde sırayı baştan test edin.
Daha küçük kullanılabilir bir MTU bekleyin. Her katman ek yük ekler, bu yüzden 1420 ve 1400 civarında bir başlangıç çifti iyi bir başlangıçtır. Büyük paketlerde takılırken küçük isteklerin başarılı olduğu bir aktarım olağan işarettir. Kurumsal politika diğer sınırdır, çünkü yönetilen cihaz isteyen bir istemci iç içe yolu ihlal sayabilir.
İki uç da sabit ağlarsa, ağ geçitleri arasındaki siteden siteye tünel sıra sorununu yönetmek yerine ortadan kaldırır. Tek bir dizüstünde iki tünel ancak her birinin kendi arayüzü ve öneke göre hedef seçen bir kuralı olduğunda bir arada bulunur.