’n Tonnel koop topologie, nie enkripsie of latensie nie
’n Tonnel gee jou ’n logiese pad, en miskien ’n aparte aanstuurkonteks. Dit verskaf nie self enkripsie nie en belowe nie latensie nie.
Die aanname is dat ’n tonnel ’n privaat, vinnige draad is: jy bou een, en die verkeer binne is geënkripteer, die pad is korter en die skakel gedra hom soos ’n kabel tussen twee terreine. Elke deel van daardie aanname is ’n aparte eienskap, en die tonnel lewer net die eerste ding waarvoor jy dit gevra het, naamlik ’n logiese pad. Alles anders moet doelbewus gekies en opgestel word. Om die eienskappe te verwar, is hoe ’n ontwerp eindig met ’n geënkripteerde skakel wat niemand kan ontfout nie en ’n latensiebelofte wat niemand kan nakom nie.
Die mite: een tonnel, drie waarborge
’n Tonnel doen een ding betroubaar. Dit laat twee eindpunte wat nie direk verbind is nie, optree asof hulle vir een of ander doel aangrensend is, terwyl die tussenliggende netwerk die buitenste pakkette dra. Dit is ’n topologieverandering, en dit is op sigself werklik nuttig.
Enkripsie, protokolvervoer en aanstuurisolasie is aparte besluite wat bo-op dit gelê word. ’n GRE-tonnel het nie een van die drie in die kriptografiese sin nie, en ’n IP-in-IP-tonnel is ’n geldige ontwerp met geen vertroulikheid hoegenaamd nie. Nie een van dié is ’n fout nie; dit is tonnele wat presies doen wat tonnele doen. Die etiket op die diagram sê nie watter eienskappe teenwoordig is nie.
Sodra jy die eienskappe skei, word die vrae beantwoordbaar: dra hierdie tonnel ’n roeteringsaangrensing, dra dit rame, verberg dit die binne-adresse, belowe dit enigiets oor vertraging? Dit is vier verskillende antwoorde met vier verskillende opstellingsgevolge.
Wat die tonnel werklik by die kaart voeg
Die eindpunte kry ’n pad wat hulle nie voorheen gehad het nie. Of daardie pad soos ’n geroteerde hop of soos ’n Ethernet-segment optree, hang heeltemal van die enkapsulering af, en die verskil verander wat die twee terreine daarmee kan doen. ’n Geroteerde tonnel gee jou ’n volgende hop en ’n voorvoegsel; ’n Ethernet-uitbreiding gee jou uitsaaigedrag en ’n veel groter foutdomein.
’n IP-tonnel maak nie outomaties die verre terrein deel van dieselfde subnet nie, en dit laat nie ’n roeteringsprotokol daaroor loop nie, tensy die implementering daardie aangrensing ondersteun. Multicast is nog ’n aparte vraag met sy eie antwoord.
ip -d link show type gre ip route get 10.20.0.5 traceroute -n -T -p 443 10.20.0.5 mtr -n --report -c 20 10.20.0.5
Daardie opdragte beantwoord verskillende dele van die vraag. Die eerste sê watter soort koppelvlak bestaan, die tweede sê watter pad die kern sou kies, en die laaste twee wys die onderlaag se werklike gedrag eerder as die etiket se belofte.
Vervoer is ’n aparte besluit van bereikbaarheid
’n Tonnel kan ’n protokol dra wat die onderlaag nie aanstuur nie. IPv6 oor ’n IPv4-pad is die klassieke geval, en dit werk omdat die eindpunte albei families verstaan, terwyl die routers tussen hulle net die buitenste pakkette hoef te lewer. Die onderlaag het ’n werkende pad na die tonnel-eindpunt nodig en niks meer nie.
Die eindpunte het egter volle ondersteuning nodig: aansturing, adresse en ’n toepassing wat werklik die binne-familie gebruik. Om ’n IPv6-voorvoegsel aan ’n tonnel toe te ken, maak nie ’n IPv4-only diens oor IPv6 bereikbaar nie, en dit maak nie die onderlaag dubbelstapel nie.
Raamvervoer is ’n groter verbintenis as protokolvervoer. Om ’n uitsaaidomein oor ’n tonnel uit te brei, verskuif spanning-tree-gedrag, ARP en foutvoortplanting saam, wat ’n ontwerpbesluit is eerder as ’n kenmerk-skakelaar.
Isolasie is nie vertroulikheid nie
Verskaffer-VPN's hou kliëntroetes en verkeer in aparte aanstuurkontekste, en daardie skeiding is werklik en waardevol. Dit is nie enkripsie nie. Die BGP/MPLS VPN-spesifikasie sê uitdruklik dat sy privaatheid uit die aanstuurmodel kom eerder as uit kriptografie, en dit is presies die onderskeid wat verlore gaan in ’n skyfie wat net «VPN» sê.
As jy vertroulikheid nodig het, het jy ’n kriptografiese meganisme met verifikasie en sleutelbestuur nodig, en jy moet weet waar dit eindig. ’n Tonnel wat skeiding bied en ’n tonnel wat enkripsie bied, kan dieselfde tonnel wees, maar net wanneer iemand albei opgestel het.
Die praktiese gevolg is dat «dit is in ’n VPN» ’n vraag oor roeteringskonteks beantwoord en jou niks vertel oor wie die grepe op die pad kan lees nie. Twee spanne kan albei korrek wees en steeds verskillende dinge beskryf. Wanneer die sekuriteitsvraag opkom, vra waar die kripto eindig en wat die eweknieë verifieer, nie of ’n tonnel bestaan nie.
Latensie en QoS volg die onderlaag
’n Logiese rand is nie ’n korter fisiese pad nie. Die buitenste pakkette beweeg steeds deur dieselfde skakels, toue en verskaffers, en enkapsulering voeg oorhoofse koste per pakket plus verwerking aan albei kante by. ’n Tonnel kan vinnig wees omdat die onderlaag goed is, nooit omdat dit ’n tonnel is nie.
Kwaliteit-van-diens-behandeling is erger as dit, want dit hang af van administratiewe domeine wat jy dalk nie beheer nie. Binne-merke moet doelbewus na buitenste merke gekarteer word, en elke verskaffer op die pad moet die behandeling bied wat jy verwag. Enkripsie skep nie prioriteit nie; dit verberg die veld wat ’n middelkassie dalk sou gebruik het om die vloei te klassifiseer.
Meet die onderlaag voordat jy enigiets belowe. ’n Verslag wat stabiele vertraging en geen verlies op die buitenste pad wys, is bewyse; ’n diagram met ’n tonnel daarop is nie.
Kies die tonnel vir die netwerkverhouding wat jy nodig het, spesifiseer dan enkripsie, toegangsbeleid, pakketgrootte en werkverrigting afsonderlik. Vier besluite, vier stukke bewyse, en geen enkele etiket wat vir enige van hulle instaan nie.