En testsida rapporterar en global IPv6-adress och slutsatsen hoppar direkt till trafik som kringgår VPN. Den slutsatsen kräver två fakta som sidan aldrig visade: vilken applikation som skickade begäran och vilken rutt kärnan valde för den. Adressens omfång beskriver hur långt en adress får routas. Det säger ingenting om vart just det här paketet tog vägen.

Omfång och roll är olika frågor med olika bevis.

Omfånget svarar på vem som får routa den, inte vem som gör det

Globala unicast-adresser går i princip att routa på det öppna internet, unika lokala adresser är avsedda för intern topologi och länklokala adresser finns bara på en enda länk. Det är egenskaper hos adressblocket. Om ett paket till en given destination lämnar genom tunneln avgörs av routingtabellen och av policyn som är knuten till gränssnittet, och båda kan peka åt vilket håll som helst.

En adress kan ha globalt omfång och ändå bäras inne i en tunnel, eftersom tunneln är en väg och inte en adressplan.

Läs alla adresser på gränssnittet, inte webbtestet

Gränssnittets utdata visar flera adresser samtidigt: den yttre adressen på den fysiska länken, tunneladressen och en länklokal adress per gränssnitt. Webbtestet visar bara källadressen för en enda begäran. Börja med ip -6 addr show och notera vilket gränssnitt som äger varje adress och vilken prefixlängd den bär, och fråga sedan vilket gränssnitt begäran faktiskt använde.

Jämför det med ip -6 route get 2606:4700::1111, som skriver ut det gränssnitt och den källa som kärnan skulle välja för en destination.

Hur ett globalt prefix hamnar inne i en tunnel

Två konstruktioner ger en global adress på ett tunnelgränssnitt. Leverantören kan delegera ett prefix som routas till klienten genom tunneln, vilket gör adressen global medan vägen fortfarande är tunneln. Eller så behåller klienten sin egen globala adress och tunneln bär den som inre trafik medan det yttre huvudet gör jobbet. Ingen av konstruktionerna kräver översättning, och förvirringen börjar där vanor från IPv4 NAT behandlas som ett krav för IPv6.

Fråga administratören vilken av de två som gäller. Svaret avgör vad en server på andra sidan ser som din källa.

Varför en adress som ser privat ut inte är en tillförlitlighetssignal

En unik lokal adress säger att operatören avser den för intern routing, och inget mer. Den bevisar inte att enheten hanteras, att programvaran är pålitlig eller att trafiken är krypterad. Omvänt bevisar en global adress inte att trafiken slapp ut ur tunneln, och det är just det antagandet hela den här artikeln finns för att bryta ner.

Bedöm tillit utifrån policy, autentisering och kryptering. En adress utseende är en svag heuristik som misslyckas åt båda hållen.

Testa rutt och policy som två frågor

Först rutten: kör curl -6 https://ifconfig.me genom tunneln och sedan över det fysiska gränssnittet, och jämför svaren. Därefter policyn: bekräfta vilket prefix tunneln faktiskt bär och om andra sidan har en returrutt för det. En lyckad begäran till en offentlig webbplats bevisar inget av detta, eftersom destinationen går att nå varifrån som helst. Använd en intern destination för policytestet.

Notera källadressen som varje väg gav. Det är beviset som ett påstående om kringgående faktiskt behöver.

Relaterade artiklar