To lokationer bruger begge samme private område, og tunnelen kommer op, mens intet nyttigt krydser den. Oversættelse er det sædvanlige svar, og det er et reelt svar: at præsentere et andet område for den fjerne side kan løse et overlap eller en returvej, som det andet netværk ikke kan route. Den del, der springes over, er, at oversættelse ændrer de adresser, som hver senere beslutning ser. Behandl det som en dokumenteret designbeslutning med en skriftlig mapping, ikke som en regel, der tilføjes, indtil en ping lykkes.

Beslut hvilken adresse der skrives om

Kildeoversættelse ændrer, hvad den fjerne tjeneste og dens logfiler ser som klient, så en filialvært bliver en gatewayadresse ved ankomsten. Mål- eller præfiksoversættelse præsenterer i stedet en alternativ adresse for en fjern ressource. Nogle udrulninger har brug for koordineret oversættelse på begge sider for at adskille to ellers identiske netværk, og kombinationen er, hvor det meste forvirring starter.

Skriv kilden ned før oversættelse, destinationen som applikationen kalder den, og det adressepar, som hver gateway matcher på. Tre kolonner er nok, og den tredje kolonne er den, folk udelader.

Rækkefølgen af selektorer betyder også noget. Valg og oversættelse af IPsec-politik sker på definerede trin, så en selektor skrevet til adresser før oversættelse matcher måske aldrig pakken på det trin, du antog. Kontroller den politik, der er installeret, i stedet for den, du havde til hensigt at installere, fordi de to divergerer præcis, når en regel accepteres af én komponent og ignoreres af en anden:

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

Følg nyttelasten og returvejen

En server, der logger den oversatte kilde i stedet for den enkelte filialvært, vil bryde enhver regel eller rapport, der er knyttet til den oprindelige adresse. Før du ændrer mappingen, skal du finde ud af, om noget længere nede træffer en beslutning ud fra det felt: adgangslister, revisionsrapporter, hastighedsgrænser, licenskontroller. Hver af dem er et sted, hvor oversættelsen senere dukker op som en uforklarlig fejl.

Protokoller, der bærer adresser inde i deres nyttelast, kræver separat planlægning, fordi omskrivning af det ydre headern ikke rører den indre reference. Aktiv FTP, SIP og nogle fjernadgangsprodukter er de klassiske tilfælde, og et design, der ignorerer dem, vil virke for webtrafik og fejle for den applikation, der betød noget.

Returtrafik afhænger af stateful mappings. Gateway-failover kan miste den tilstand, asymmetrisk routing kan omgå den, og en genstart kan rydde den, mens sessioner forbliver åbne på den fjerne side. Derfor er en anmodning, der når destinationen, og en session, der fuldføres, to forskellige acceptresultater.

Afvej det mod at omnummerere en lokation

Omnummerering af én konfliktende lokation fjerner mappingen helt og efterlader en adresseplan, der kan læses uden oversættelsestabeller. Det er operationelt dyrt: DNS-poster, statiske tildelinger, firewallregler og hver dokumenteret adresse skal ændres sammen. Omkostningen falder én gang, i et planlagt vindue, med en klar sluttilstand. Det, du køber, er evnen til at læse en pakkefangst år senere uden en opslagstabel.

Oversættelse undgår de fleste lokale ændringer og skaber en mapping, der skal vedligeholdes i DNS, dokumentation og fejlfinding for evigt. Omkostningen falder løbende i form af enhver fremtidig ingeniør, der skal lære, at ét præfiks betyder noget andet inde i tunnelen.

For en midlertidig forbindelse eller et partnernetværk, du ikke kontrollerer, er den løbende omkostning normalt værd at betale. For to lokationer, du ejer og vil eje i årevis, er omnummerering ofte den billigere beslutning, når migreringen regnes ærligt.

Bevis begge retninger med en rigtig session

Test en applikationssession i stedet for en enkelt probe. En vellykket ekkoanmodning beviser, at én retning af én protokol virker, og den er helt forenelig med en returvej, der fejler for alt stateful. Brug den tjeneste, der motiverede designet, og læs dens log i den fjerne ende for at se, hvilken kildeadresse den registrerede.

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

Bekræft derefter, at kun de tilsigtede tjenester kan nås gennem mappingen. Oversættelse ændrer adressering og gør intet ved autorisation, så firewallpolitikken afgør stadig, hvad der er tilladt. Et design, der stoler på et uklart oversat præfiks som sin adgangskontrol, har ingen adgangskontrol overhovedet.

Registrer mappingen, den testede session og de adresser, hver side observerede. Den næste person, der fejlfinder denne tunnel, har mere brug for de tre fakta end for konfigurationsfilen.

Relaterede artikler