EoIP przez łącze VPN LTE: budowa małego laboratorium RouterOS
EoIP przenosi ramki Ethernet w GRE, a GRE niczego nie szyfruje. Zbuduj laboratorium na działającym łączu WireGuard, utrzymuj most odizolowany, zaplanuj 42 bajty.
EoIP bierze całą ramkę Ethernet, opakowuje ją w GRE i wysyła na skonfigurowany adres zdalny, dlatego wynik zachowuje się jak kabel, a nie jak trasa. Z routera wychodzi protokół IP 47 z oryginalną ramką jako ładunkiem, więc rozgłoszenia, ARP i protokoły inne niż IP przechodzą wszystkie. GRE nie dodaje własnej poufności, a ramka pozostaje czytelna dla wszystkiego, co widzi pakiet zewnętrzny. Ten jeden fakt decyduje o kolejności tego laboratorium: najpierw zbuduj zaszyfrowaną ścieżkę, potem przenoś w niej Ethernet.
Co EoIP opakowuje, a czego nie
Enkapsulacja to cały mechanizm. Ramka trafia na port w moście, otrzymuje nagłówek GRE i zewnętrzny nagłówek IP i jest dostarczana do routera partnerskiego, który usuwa oba i wstrzykuje ramkę do własnego mostu. Most odbierający uczy się źródłowego MAC dokładnie tak, jakby pochodził z portu lokalnego. Nic w tym procesie nie uwierzytelnia ramki ani jej nie ukrywa.
Poufność musi więc pochodzić ze ścieżki, po której podróżuje pakiet GRE. W tym projekcie warstwą niższą jest tunel WireGuard lub IPsec między dwoma routerami, a EoIP jest w nim przenoszony. MikroTik udostępnia też opcję automatycznego IPsec na samym interfejsie EoIP, co jest innym układem i nie tym, który konfiguruje to laboratorium.
Dla usług IP routowanych routowany VPN to mniejszy projekt i ten, który należy preferować. Po warstwę drugą sięgaj tylko wtedy, gdy urządzenie naprawdę musi widzieć ramki Ethernet z drugiej lokalizacji.
Wymagania wstępne: zaszyfrowana warstwa niższa i dwa nieużywane porty
Oba routery potrzebują nawiązanego zaszyfrowanego połączenia i adresu na nim, osiągalnego dla partnera. Strona LTE inicjuje połączenie zewnętrzne, więc koncentrator nigdy nie wybiera sieci komórkowej, a router LTE utrzymuje stan NAT wymagany przez operatora. Potwierdź, że tunel działa, zanim cokolwiek na nim dodasz, ponieważ interfejs EoIP, który nie osiąga swojego adresu zdalnego, wygląda identycznie jak błędnie skonfigurowany.
Każdy router potrzebuje też portu, który nie jest już członkiem mostu, trunkem VLAN, interfejsem zarządzania ani łączem produkcyjnym. Laboratorium, które pożycza działający port, nie jest laboratorium, a trybem awarii jest burza rozgłoszeń w działającej sieci. Przed rozpoczęciem przenieś zarządzanie na inny interfejs lub do konsoli.
Hub tunnel address: 10.44.7.1/32
LTE tunnel address: 10.44.7.2/32
Lab ports: ether7 on both routers, unused
Test hosts: 192.168.77.11/24 and 192.168.77.12/24
Te wartości są przykładem, a nie wymaganiem. Muszą znajdować się na interfejsach tunelu i być routowane chronioną ścieżką. Polityka zapory na obu routerach musi zezwalać na GRE między dwoma adresami tunelu, a GRE to protokół IP 47, nie port TCP lub UDP o numerze 47. Ten projekt nigdy nie wystawia surowego GRE na żadną z sieci WAN.
Utwórz parę tuneli z pasującymi ID
Oba końce to jeden logiczny interfejs zdefiniowany dwukrotnie, więc każde pole identyfikujące musi się zgadzać. Na koncentratorze:
/interface eoip add name=eoip-lab local-address=10.44.7.1 remote-address=10.44.7.2 tunnel-id=37 mac-address=02:1A:2B:00:00:01
Na routerze LTE adresy się odwracają, a MAC jest inny:
/interface eoip add name=eoip-lab local-address=10.44.7.2 remote-address=10.44.7.1 tunnel-id=37 mac-address=02:1A:2B:00:00:02
ID tunelu musi się zgadzać na obu końcach i nie może kolidować z inną parą już skonfigurowaną na którymkolwiek routerze. Adresy MAC to wartości administrowane lokalnie, które muszą być unikalne w domenie drugiej warstwy, do której dołączasz, więc nie używaj ponownie wartości z przykładu producenta. Nazwy interfejsów są lokalne dla każdego routera i muszą być spójne tylko dla twoich własnych skryptów.
Aktualny podręcznik EoIP dokumentuje pola punktu końcowego i ID tunelu i mówi wprost, że EoIP to Ethernet nad GRE. Nic w tym poleceniu niczego nie szyfruje, dlatego sprawdzenie warstwy niższej jest pierwsze.
Mostkuj tylko porty testowe
Most to to, co zamienia tunel w segment, a jego skład jest całą granicą bezpieczeństwa. Na koncentratorze:
/interface bridge add name=br-eoiphub protocol-mode=rstp auto-mac=no admin-mac=02:1A:2B:00:01:01
/interface bridge port add bridge=br-eoiphub interface=ether7
/interface bridge port add bridge=br-eoiphub interface=eoip-lab
Na routerze LTE:
/interface bridge add name=br-eoiplte protocol-mode=rstp auto-mac=no admin-mac=02:1A:2B:00:01:02
/interface bridge port add bridge=br-eoiplte interface=ether7
/interface bridge port add bridge=br-eoiplte interface=eoip-lab
Te polecenia tworzą nowe mosty i dodają do każdego dokładnie dwa porty. Interfejs EoIP jest członkiem drugiej warstwy; zaszyfrowany tunel pozostaje transportem routowanym i nigdy nie wolno dodawać go jako portu mostu. Nie dodawaj portu produkcyjnego i nie uruchamiaj serwera DHCP na moście laboratorium.
Daj dwóm hostom testowym adresy w nieużywanej podsieci bez konkurencyjnego serwera DHCP, na przykład 192.168.77.11/24 i 192.168.77.12/24. Nie potrzebują bramy domyślnej, aby sięgnąć się wzajemnie w tej podsieci, a adres interfejsu routera nie jest potrzebny, aby ramki przechodziły.
Zaplanuj narzut, zanim rozszerzysz sieć LAN
EoIP nad IPv4 dodaje nagłówki Ethernet, GRE i zewnętrzny IP wokół przenoszonego ładunku. Dla przypadku bez znacznika MikroTik dokumentuje 42 bajty, więc warstwa niższa z 1400 bajtami użytecznego MTU IP zostawia 1358 bajtów na ramkę wewnętrzną. Ta liczba to budżet, a nie uniwersalna wartość MSS, i nie zmusza hosta w moście do wysyłania mniejszych ramek.
Sprawdź rzeczywiste ograniczenia na ścieżce, a następnie przetestuj największą ramką, jaką urządzenie naprawdę wysyła. Ramka o rozmiarze 1500 bajtów, którą trzeba fragmentować w chronionej ścieżce, zachowuje się inaczej niż ta, która się mieści, a różnica objawia się jako zatrzymanie aplikacji, a nie jako awaria łącza.
/interface eoip print detail where name=eoip-lab
/interface bridge host print where bridge=br-eoiphub
/ping 192.168.77.12 count=4 interface=br-eoiphub
RSTP obsługuje pętle, a nie dowolne ścieżki równoległe, więc utrzymuj topologię pilotażową prostą. Rozszerzenie mostu rozszerza też zachowanie rozgłoszeń, multicastu i DHCP przez łącze komórkowe, a ten ruch zużywa przepustowość niezależnie od tego, czy porusza się użyteczna ramka.
Planuj podłączenie produkcyjne dopiero wtedy, gdy laboratorium osiągnie rozmiar ramki i zachowanie aplikacji, których naprawdę potrzebujesz. Przed tym przejściem uzgodnij adresację, członkostwo w VLAN, uprawnienia DHCP, zapobieganie pętlom i sposób, w jaki ktoś dotrze do routerów, gdy samo łącze jest niedostępne. Rozszerzenie Ethernetu łączy domeny awarii tak samo jak urządzenia, więc zasługuje na okno zmian, a nie na jeszcze jeden port w działającym moście.