Podkast 22T22 Split Tunneling

Więcej miejsc do posłuchania:

Spotify

WERSJA TEKSTOWA

Cześć, witam Cię w dzisiejszym odcinku mojego podkastu. Dzisiejszy temat to Split Tunneling. Czym to jest? Może zacznijmy od strony funkcjonalnej. Wyobraź sobie, że łączysz się VPN-em do swojej firmy. Teraz powstaje pytanie – jak Twój ruch do zasobów firmowych i do zasobów publicznych w internecie jest kierowany? Mamy dwie opcje. Możemy albo cały ruch kierować do tunelu i wtedy używamy tego tunelu jako jednej wielkiej rury a politykę, na co zezwala firma albo co blokuje, realizuje na Firewallu. Jest to bardzo podstawowy scenariusz.

Opcją jest rozdzielenie ruchu publicznego. Jak pracujesz z domu i łączysz się z zasobami publicznymi, to do tego Internetu wychodzisz lokalnie, czyli przez swój router i bezpośrednio przez router operatora idziesz dalej do publicznego zasobu. Natomiast do systemów wewnętrznych, swoich firmowych w Data Center idziesz tunelem. Żeby skonfigurować tego typu funkcjonalność, potrzebujesz jakoś rozróżnić ten ruch. To co się robi, to bazuje się na adresach IP, czyli na klasach adresowych. Przy włączeniu takiego Split Tunnelingu trzeba wskazać, które sieci dotyczą zasobów wewnętrznych, czyli przez które sieci będziemy się łączyć tunelem cały ruch pozostały będzie szedł default gateway-em, czyli domyślną trasą dla ruchu publicznego.

Możemy tutaj oczywiście jeszcze sterować tym priorytetem, bo realizacja tego na poziomie stacji końcowej opiera się o tabele routingu i mamy tam metryki. Jeśli chcesz sobie zobaczyć w swoim Windowsie to poleceniem netstat -rn pokazuje tablicę routingu. Gdy włączysz sobie VPN-a, który jest dedykowany – cały ruch ma iść do niego, to będziesz miał domyślną trasę z niższą metryką, czyli z większą preferencją zastosowaną dla swojej tablicy routingu. Cały ruch będzie kierowany do tunelu. W przypadku, gdy natomiast skonfigurujesz sobie Split Tunneling, to będziesz miał niezmodyfikowaną trasę domyślną, będzie ta sama, którą miałeś przed zestawieniem tunelu. Dodatkowo będziesz miał wpis z odpowiednią metryką dla danej klasy czy zestawu sieci, które są dostępne przez tunel. Dzięki temu, jeśli pakiet jest kierowany do wewnętrznych zasobów, trafia w tablicę routingu na specyficzny wpis dotyczący danej klasy adresowej i jest adresowany na odpowiedni interface tunelu.

Jeśli miałbyś więcej takich połączeń, to oczywiście przy Split Tunnelingu jest taka opcja, że mógłbyś mieć wiele specyficznych wpisów w tablicy routingu dotyczących różnych tuneli, a jedną domyślną trasą wychodzić do sieci publicznej przez swój lokalny router. Jeżeli natomiast skonfigurowałbyś dwa dostępy VPN-owe z domyślną trasą, czyli cały ruch miałbyś do tunelu, to tu oczywiście coś nie zadziała. Zawsze będzie tak, że któryś z tych wpisów w trasie routingu będzie miał preferencje – odpowiednio wyższą metrykę i ruch będzie wtedy kierowany do jednego interfejsu tunelowego. Więc jeśli chcesz rozróżnić kierowanie ruchem to oczywiście Split Tunneling jest funkcją, którą należy zastosować.

Dodatkowe zagadnienie dotyczące Split Tunnelingu to temat dotyczący DNS-ów. Ponieważ możesz mieć w swoim wewnętrznym DNS-ie wpisy jakiś wewnętrznych systemów, które nie są publicznie znane w innych DNS-ach. Jeżeli są to publiczne wpisy to nie ma znaczenia, który DNS odpytasz, odpowiedź dostaniesz. Natomiast jeśli potrzebujesz odpowiednio skierować zapytanie DNS-owe do wewnętrznych zasobów, to taką opcję też przy konfiguracji VPN-a powinieneś zaznaczyć. Dlatego że jeżeli domyślnie będzie wychodził ten ruch do DNS-a publicznego a ty się odwołujesz do wewnętrznych nazw domenowych, to nie otrzymasz odpowiedzi a w związku z tym się nigdzie nie podłączysz.

Dodatkowo w takich konfiguracjach można sobie skonfigurować preferencje. Czyli co się stanie, jeśli będziesz miał kolizję. Masz wpis routingu dotyczący VPN-a, masz wpis routingu dotyczący twojego klienta, czyli jakiś sieci lokalnych i co ma się zadziać w momencie, w którym są one ze sobą w kolizji? Możesz mieć taką sytuację, że sobie w domu zbudowałeś sieć i nadałeś jakąś prywatną adresację jakiejś podsieci u siebie w środowisku i akurat ta adresacja jest również wykorzystywana w firmie – gdzieś w zdalnym środowisku i jest ta sama klasa adresowa. Trzeba podjąć decyzję. Urządzenie końcowe – najczęściej twój komputer – musi podjąć decyzję, z której trasy skorzysta. Jeżeli masz odpowiednio zaawansowane rozwiązanie VPN-owe to możesz to sobie ustalić. Czy mają być profilowane trasy stacji końcowej, czy te, które są wysyłane przez koncentrator VPN-owy. To oczywiście jest najczęściej realizowane bazując na metryce, czyli odpowiednio system ma zaprogramowane jaki poziom ważności tej trasy powinien dodać, żeby zadziałał tak, jak potrzebujesz w swoim scenariuszu.

Mam nadzieję, że to było wyczerpujące opisanie tego tematu. W przypadku pytań – pisz w komentarzu. Dziękuję i do usłyszenia już za tydzień 🙂


Podobne wpisy

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *