TAP przekazuje ramki Ethernet systemowi operacyjnemu, co jest większą możliwością, niż potrzebuje większość projektów dostępu zdalnego, i mniejszą niż most. Jądro może je adresować, trasować przez nie i chronić je zaporą ogniową bez przyłączania go do żadnego segmentu fizycznego. Warto najpierw zrozumieć ten układ: odizolowany wirtualny segment Ethernet, którego serwer działa jako router w stronę prawdziwej sieci LAN. Daje zachowanie drugiej warstwy wewnątrz tunelu i zwykłe przekazywanie IP na zewnątrz, a to dwie różne obietnice. Reszta to budowa, trasa, droga powrotna i wycofanie.

Zbuduj odizolowany segment

W Linuksie interfejs przyjmuje trzy polecenia: utwórz go, podnieś go, nadaj mu adres wewnątrz zamierzonego segmentu. Wybierz prefiks, który nie koliduje z siecią LAN biura, i zapisz go, bo kolizja jest niewidoczna, dopóki nie odpowie host, którego nie powinno być.

ip tuntap add dev tap0 mode tap
ip link set tap0 up
ip addr add 10.77.0.1/24 dev tap0

Nic tutaj nie wymaga mostu i nic nie przeszkadza dodać go później. Dokumentacja jądra dotycząca TUN/TAP opisuje sam interfejs; przynależność do mostu i polityka przekazywania to osobne decyzje, które podejmujesz później.

Trasuj przez granicę

Włącz przekazywanie, zezwól na oba prefiksy w łańcuchu przekazywania i dodaj trasę w stronę prefiksu biura z routerem sieci LAN jako następnym skokiem. Strona VPN wysyła wtedy ruch kierowany do biura do serwera jako swojej bramy, a serwer przekazuje te pakiety jako on sam, nie jako most. Interfejs TAP z wyłączonym przekazywaniem to segment, który odpowiada lokalnie i nie osiąga niczego poza sobą, co jest zwykłym na wpół gotowym stanem. Sprawdź potem liczniki interfejsu po obu stronach, bo rosnący licznik odbioru przy płaskim liczniku wysyłania po stronie sieci LAN oznacza spadek w łańcuchu przekazywania, a nie złą trasę.

Napisz trasę i regułę zapory jako jedną zmianę, bo każda osobno tworzy stan, który od strony klienta wygląda jak awaria trasowania.

Zdecyduj o drodze powrotnej

Albo router sieci LAN uczy się trasy powrotnej do prefiksu VPN, albo serwer tłumaczy adresy źródłowe na wyjściu. Tłumaczenie czyni drogę powrotną trywialną i niszczy tożsamość źródła, więc dzienniki miejsc docelowych będą pokazywać adres serwera dla każdego klienta za nim. Trasowany prefiks zachowuje tożsamość i wymaga zmiany na sprzęcie, którym możesz nie zarządzać.

Wybieraj świadomie, a nie według tego, co szybciej wpisać. Jeden trasowany prefiks jest zwykle czystszy niż tłumaczenie, a tłumaczenie jest zwykle lepsze niż uczenie niezarządzanego routera nowego prefiksu dla jednego laboratorium.

Utrzymuj zasięg rozgłaszania świadomie

Wewnątrz wirtualnego segmentu DHCP, wykrywanie i ogłaszanie sąsiadów zachowują się jak na przełączniku, bo to jedno łącze. Za trasowaną granicą już tak nie jest, więc DHCP biura i wykrywanie usług wymagają wyraźnego projektu, a nie założenia, że TAP je obejmuje. Typ interfejsu nie jest przekaźnikiem dla usług, które żyją gdzie indziej.

To jest uczciwy powód, by w ogóle wybrać TAP: coś w wirtualnym segmencie potrzebuje zachowania lokalnego dla łącza. Jeśli nic tego nie potrzebuje, urządzenie TUN z trasowanym prefiksem jest mniejsze i mniej trzeba tłumaczyć, gdy się psuje.

Sprawdź, a potem napisz wycofanie

Z klienta VPN pinguj router sieci LAN, pinguj host i otwórz jedną ważną usługę przez TCP. Potem sprawdź liczniki i łańcuch przekazywania, bo spadek z powodu polityki z daleka wygląda dokładnie jak brakująca trasa. Wycofanie jest odwrotnością budowy i należy do rejestru zmian przed rozpoczęciem: usuń trasę, usuń adres, usuń interfejs.

Jeśli wymaganiem naprawdę jest jeden segment Ethernet obejmujący dwie lokalizacje, most jest uczciwą odpowiedzią i innym projektem o innym promieniu oddziaływania. Jeśli wymaganiem jest osiągalność, odizolowany segment z trasowanym łączem nadrzędnym wykonuje zadanie z mniejszą liczbą późniejszych wyjaśnień.

Powiązane artykuły