Dvě lokality používají stejný privátní rozsah a tunel se zvedne, zatímco přes něj neprochází nic užitečného. Překlad je obvyklá odpověď a je to skutečná odpověď: předložení jiného rozsahu vzdálené straně může vyřešit překryv nebo zpáteční cestu, kterou druhá síť nedokáže směrovat. Část, která se přeskakuje, je to, že překlad mění adresy, které vidí každé pozdější rozhodnutí. Berte to jako zdokumentované konstrukční rozhodnutí s psaným mapováním, ne jako pravidlo přidávané, dokud neprojde ping.

Rozhodněte, která adresa se přepíše

Překlad zdroje mění to, co vzdálená služba a její protokoly vidí jako klienta, takže hostitel pobočky se při příchodu stane adresou brány. Překlad cíle nebo prefixu naopak představuje alternativní adresu vzdáleného zdroje. Některá nasazení potřebují koordinovaný překlad na obou stranách, aby oddělila dvě jinak identické sítě, a právě v kombinaci začíná většina zmatků.

Zapište zdroj před překladem, cíl tak, jak jej pojmenovává aplikace, a dvojici adres, na kterou každá brána páruje. Tři sloupce stačí a třetí sloupec je ten, který lidé vynechávají.

Na pořadí selektorů také záleží. Výběr a překlad politiky IPsec probíhají v definovaných fázích, takže selektor napsaný pro adresy před překladem nemusí nikdy odpovídat paketu ve fázi, kterou jste předpokládali. Zkontrolujte politiku, která je nainstalovaná, ne tu, kterou jste zamýšleli nainstalovat, protože obě se rozejdou právě tehdy, když pravidlo přijme jedna komponenta a jiná je ignoruje:

ip xfrm policy show
ip xfrm state show
nft list ruleset | grep -A4 nat

Sledujte užitečné zatížení a zpáteční cestu

Server, který zaznamenává přeložený zdroj místo jednotlivého hostitele pobočky, rozbije každé pravidlo nebo zprávu vázanou na původní adresu. Než mapování změníte, zjistěte, zda se něco níže nerozhoduje podle tohoto pole: přístupové seznamy, auditní zprávy, limity rychlosti, kontroly licencí. Každé z nich je místem, kde se překlad později projeví jako nevysvětlitelná porucha.

Protokoly, které nesou adresy uvnitř svého užitečného zatížení, vyžadují samostatné plánování, protože přepsání vnější hlavičky se vnitřní reference nedotkne. Aktivní FTP, SIP a některé produkty vzdáleného přístupu jsou klasické případy a návrh, který je ignoruje, bude fungovat pro webový provoz a selže pro aplikaci, na které záleželo.

Zpáteční provoz závisí na mapováních se stavem. Přepnutí brány může tento stav ztratit, asymetrické směrování jej může obejít a restart jej může vymazat, zatímco relace na vzdálené straně zůstávají otevřené. Proto jsou požadavek, který dorazí do cíle, a relace, která se dokončí, dva různé výsledky přijetí.

Zvažte to proti přečíslování lokality

Přečíslování jedné konfliktní lokality mapování zcela odstraní a zanechá plán adres, který lze číst bez překladových tabulek. Je provozně drahé: záznamy DNS, statické přiřazení, pravidla firewallu a každá zdokumentovaná adresa se musí změnit společně. Náklad přichází jednou, v plánovaném okně, s jasným koncovým stavem. Co kupujete, je schopnost přečíst snímek paketů o roky později bez vyhledávací tabulky.

Překlad se vyhýbá většině místních změn a vytváří mapování, které je nutné navěky udržovat v DNS, dokumentaci a řešení problémů. Náklad přichází nepřetržitě, v podobě každého budoucího inženýra, který se musí naučit, že jeden prefix uvnitř tunelu znamená něco jiného.

Pro dočasné připojení nebo partnerskou síť, kterou nekontrolujete, se průběžný náklad obvykle vyplatí. Pro dvě lokality, které vlastníte a budete vlastnit roky, je přečíslování často levnější rozhodnutí, jakmile se migrace poctivě spočítá.

Dokažte oba směry skutečnou relací

Testujte relační aplikaci, ne jediný test. Úspěšný požadavek na echo dokazuje, že jeden směr jednoho protokolu funguje, a je zcela slučitelný se zpáteční cestou, která selže pro cokoli se stavem. Použijte službu, která návrh motivovala, a přečtěte si její protokol na vzdáleném konci, abyste viděli, kterou zdrojovou adresu zaznamenala.

tcpdump -ni any host 10.40.9.20 and port 443
conntrack -L | grep 10.40.9.20
ip route get 10.40.9.20

Pak potvrďte, že přes mapování jsou dostupné pouze zamýšlené služby. Překlad mění adresování a pro autorizaci nedělá nic, takže o tom, co je povoleno, stále rozhoduje politika firewallu. Návrh, který se spoléhá na nejasný přeložený prefix jako na svou kontrolu přístupu, nemá žádnou kontrolu přístupu.

Zaznamenejte mapování, testovanou relaci a adresy, které každá strana pozorovala. Další člověk, který bude tento tunel ladit, potřebuje tyto tři skutečnosti víc než konfigurační soubor.

Související články