Tikety podpory často přicházejí s již schválenou změnou firewallu a tunelem, který stále odmítá naskočit. To je očekávaný výsledek, když funkci má jen jeden konec: TCP zapouzdření podle RFC 9329 musí být implementováno a nakonfigurováno na obou koncích a dohoda proběhne uvnitř spojení, než se pohne jakýkoli chráněný provoz. Otevření portu inzeruje posluchače, který nemusí existovat, a posluchač bez odpovídající konfigurace na druhé straně přijme spojení a pak ztichne. Následující sled dává levné kontroly na první místo.

Vězte, co volba skutečně přidává

Nativní IPsec přenáší šifrovaná užitečná zatížení jako IP protokol 50, bez čísla portu, které by se povolovalo. NAT traversal tyto pakety zabaluje do UDP na port 4500, a proto tolik pravidel firewallu tento port zmiňuje. RFC 9329 přidává reprezentaci toku: pakety IKE i IPsec cestují uvnitř jednoho TCP spojení, obvykle na port 4500.

Tok není webová služba. TCP spojení na 4500 neříká nic o HTTP, TLS ani vstřícnosti k proxy a HTTP proxy v cestě obvykle rámování rozbije, místo aby ho přenesla.

Předběžná kontrola, než se dotknete firewallu

Standard staví TCP jako záložní cestu pro sítě, které zahazují UDP cestu, ne jako její náhradu. Získejte dva údaje od každého dodavatele: přesný název funkce a verzi, která implementuje RFC 9329, nikoli proprietární variantu. Označení jako IPsec over TCP se používala pro nesouvisející návrhy, proto si vyžádejte odkaz na dokument a konfigurační klíč, který ji zapíná. Bez obou odpovědí nic nepředpokládejte o kompatibilitě na drátě.

Dokažte to v laboratoři, kde jsou oba konce vaše. Brána, která odpovídá na TCP 4500, ale nikdy nedokončí IKE, je podpisem posluchače bez odpovídajícího zapouzdření na druhé straně, a odhalit to tam je mnohem levnější než během okna změny.

Na straně odpovídajícího: poslouchá něco

Začněte socketem. ss -ltnp | grep 4500 ukazuje, zda existuje TCP posluchač a který proces ho vlastní. Nepřítomnost řádku ukončuje vyšetřování u konfigurace brány, ne u sítě.

Pokud socket existuje, sledujte handshake, místo abyste hádali ze strany klienta: tcpdump -ni any 'tcp port 4500'. Dokončený třícestný handshake následovaný tichem znamená, že tok byl přijat a výměna IKE v něm selhala, zatímco SYN bez odpovědi ukazuje na filtrování nebo na špatnou adresu.

Porovnejte s UDP cestou ve stejném okně zachycení, aby se obě nepletly: tcpdump -ni any 'udp port 4500 or proto 50'. Provoz na protokolu 50 nebo UDP portu 4500, když věříte, že se používá TCP, znamená, že se konce nikdy nedohodly na záložní cestě. Zachycujte i na bráně, pokud můžete, protože zachycení na straně klienta nemůže ukázat, co poslal vzdálený konec.

Přijímejte ve čtyřech samostatných fázích

Berte nastartování jako čtyři výsledky. Každý může selhat z jiného důvodu a jediné prošlo či neprošlo skrývá, který to byl, takže se zastavte u první fáze, která selže, a začněte znovu od začátku.

StageWhat you checkWhat it proves
1TCP connection established to 4500A listener exists and the path permits it
2IKE_SA authenticated in the gateway logBoth peers agreed on the encapsulation
3CHILD_SA installed, visible with ip xfrm stateKeys exist for the protected traffic
4A new application exchange succeedsThe data path works, not just the control path

Čtvrtá fáze je ta, která se přeskakuje. Existující relace může dál fungovat na kešovaném stavu, takže před uzavřením změny otevřete nové spojení k hostiteli za bránou. Pokud druhá fáze selže, zatímco první projde, neshoda je v návrhu nebo v nastavení zapouzdření, ne ve firewallu.

Vrácení zpět a cena za to, že to necháte zapnuté

Naplánujte odvolání před změnou: vypněte volbu zapouzdření na obou koncích a potvrďte, že se tunel vrací přes UDP. Pravidlo TCP ponechte jeden revizní cyklus pro případ, že bude záložní cesta znovu potřeba, a poté je odstraňte. Nevyužitý posluchač na 4500 je povrch bez provozní hodnoty.

Sledujte výkonnostní podpis, jakmile ponese skutečnou práci. TCP v TCP přidává vrstvy potvrzení, které se zaseknou při jediné ztrátě, a toky sdílející jedno spojení se mohou navzájem blokovat, proto měřte aplikaci, která tunel bude používat, místo ping.

Seznam přijetí

Potvrďte název a verzi funkce na obou koncích, posluchače na straně odpovídajícího, zachycení s dokončeným handshake a čtyři fáze zaznamenané s časovými razítky. Přidejte důvod záložní cesty do záznamu změny, aby další inženýr věděl, proč tam TCP je. Nacvičte vrácení zpět, než ho budete potřebovat.

Pokud některá fáze selže, opravte jen tu fázi. Změna šifrovací sady nebo nastavení identity při honbě za transportním problémem obvykle přidá druhý, nesouvisející problém navrch prvního.

Související články