Tryb transportowy czy tunelowy: decyduj po pakiecie, nie po rysunku
Transport i tunel opisują, co jest wewnątrz ESP, a nie to, czy uczestniczy host lub brama. Trzy pytania rozstrzygają, jakiego trybu potrzebuje wdrożenie.
Rysunki z podręczników łączą tryb transportowy z dwoma hostami, a tryb tunelowy z dwiema bramami, i ta zasada obowiązuje aż do pierwszego wdrożenia, które jej przeczy. Tryb opisuje, co pakiet ESP opakowuje, a nie kim są strony. Brama może chronić ruch w trybie transportowym, a para hostów może użyć trybu tunelowego, jeśli tak wybierze. Trzy pytania rozstrzygają, czego potrzebuje konkretne wdrożenie.
Tryb to układ, nie topologia
W trybie transportowym nagłówek ESP trafia po nagłówku IP i przed ładunkiem następnej warstwy, więc pierwotny nagłówek IP zostaje na zewnątrz i jest widoczny. W trybie tunelowym chroniona treść to pełny pakiet IP, a nowy nagłówek zewnętrzny nazywa obie strony IPsec.
| Mode | What follows the outer IP header | Headers a capture shows |
|---|---|---|
| Transport | ESP, then the next-layer payload | One IP header |
| Tunnel | ESP, then a whole inner IP packet | Outer and inner headers |
Przy wybranej poufności chroniony obszar w trybie tunelowym obejmuje ten wewnętrzny nagłówek IP, dlatego zapis bez kluczy nie powie ci prawdziwych punktów końcowych. Nagłówek zewnętrzny pozostaje czytelny w obu przypadkach, i właśnie to w ogóle umożliwia rozwiązywanie problemów.
Pytanie pierwsze: co dokładnie jest w ESP
Spójrz na pakiet, który tworzy aplikacja, i zapytaj, która granica go chroni. Jeśli odpowiedź brzmi ładunek transportowy między dwoma już poprawnymi adresami, tryb transportowy pasuje bez wymyślania drugiego nagłówka. Jeśli chroniona treść potrzebuje własnych adresów, bo prawdziwe punkty końcowe różnią się od stron przenoszących ruch, robotę wykonuje tryb tunelowy. Oba przypadki istnieją w tej samej organizacji, dlatego jedna deklaracja polityki rzadko obejmuje wszystko.
Na to pytanie można odpowiedzieć na podstawie zapisu i tabeli tras. Nie można na nie odpowiedzieć na podstawie rysunku, który nazywa ramki klientem i serwerem. Zapis wykonany po którejkolwiek stronie pokazuje w kilka sekund, na którą z dwóch patrzysz.
Pytanie drugie: czy tunel jest już w środku
L2TP to historyczny kontrprzykład, który pokazuje tę kwestię. Usługa przenosi PPP w sesji L2TP, a IPsec chroni tę wymianę; układ określa tryb transportowy, a tryb tunelowy jest dopuszczony jako opcja. Widocznym wynikiem jest tunel na poziomie usługi, którego zewnętrzna ochrona używa trybu transportowego.
Słowo tunel w opisie produktu nie mówi zatem nic o trybie warstwy pod nim. Zapisz, które pytanie to rozstrzygnęło, bo następny recenzent zapyta o to samo. Czytaj specyfikację tego połączenia, zamiast wnioskować z nazwy, bo ten nawyk zapobiega większości sporów o to, co produkt powinien obsługiwać.
Pytanie trzecie: czego wymaga strona
Dwie strony muszą się zgodzić, a propozycja, która oferuje jeden tryb, gdy druga wymaga drugiego, zawodzi podczas negocjacji, zamiast cicho się pogarszać. Zapytaj właściciela drugiego końca, jaki tryb wymienia polityka, i sprawdź propozycję, a nie streszczenie dokumentacji.
Środowiska mieszane są częste: jedna brama kończy sesje w trybie transportowym dla starszego produktu i sesje w trybie tunelowym dla łącza lokalizacji. Tryb jest na asocjację, nie na urządzenie. Poproś o listę asocjacji, a nie nazwę funkcji, bo nazwa podróżuje szybciej niż konfiguracja.
Czytanie istniejącej asocjacji
Do przeglądu wypisz strony, tryb, selektory i protokół następnej warstwy, a potem dodaj dowolną kapsulację owiniętą wokół wyniku. Translacja adresów dodaje własny widok zewnętrzny i nie jest trybem; przetłumaczony strumień nadal może być jednym z dwóch. Lista jest jedynym artefaktem, który pokazuje asocjację tak, jak jest zainstalowana, a nie tak, jak była zamierzona.
Zakończ pytaniem o routing i autoryzację, bo poprawny układ pakietu nie mówi nic o tym, które podsieci są dozwolone ani czy istnieje droga powrotna. Te żyją w polityce i w tabeli tras, i żadne z nich nie zmienia argumentu o trybie.