L2TP | |
---|---|
Navn | Layer 2 Tunneling Protocol |
Niveau (ifølge OSI-modellen ) | session |
Familie | TCP/IP |
Oprettet i | 1999 |
Port/ID | 1701/ UDP ,500/ UDP (for IKE, til at administrere krypteringsnøgler),4500/ UDP (for IPSEC NAT-Traversal-tilstand),50/ ESP (for IPSEC),51/ AH (for IPSEC) |
Formål med protokollen | opbygning af en VPN |
Specifikation | RFC 2661 |
L2TP ( engelsk Layer 2 Tunneling Protocol - Layer 2 tunneling protocol ) - i computernetværk , en tunnelingsprotokol, der bruges til at understøtte virtuelle private netværk . Den største fordel ved L2TP er, at denne protokol giver dig mulighed for at oprette en tunnel ikke kun i IP-netværk, men også i netværk som ATM , X.25 og Frame Relay [1] .
Selvom L2TP fungerer som en linklagsprotokol af OSI-modellen , er det faktisk en sessionslagsprotokol og bruger den registrerede UDP - port 1701 [2] .
Tæller[ af hvem? ] at L2TP -protokollen har inkorporeret de bedste funktioner fra L2F og PPTP [1] .
Diagrammet viser, hvordan L2TP-protokollen fungerer.
Målet her er at tunnelere PPP -rammer mellem et eksternt system eller klient-LAC og en LNS hostet på LAN [3] .
Fjernsystemet initierer en PPP-forbindelse til LAC'en over det offentlige telefonnetværk (PSTN). LAC'en tunnelerer derefter PPP-forbindelsen over internettet, Frame Relay eller ATM til LNS og får således adgang til kilde-LAN'et. Adresser til fjernsystemet leveres til kilde-LAN gennem forhandling med PPP NCP . Autentificering, autorisation og regnskab kan leveres af LAN-administrationsområdet, som om brugeren var direkte forbundet til NAS -netværksadgangsserveren .
LAC-klienten (værten, der kører L2TP-programmet) kan også deltage i tunneling til kilde-LAN uden at bruge en separat LAC, hvis værten, der indeholder LAC-klientprogrammet, allerede har en internetforbindelse. En "virtuel" PPP-forbindelse oprettes, og det lokale L2TP LAC-program danner en tunnel til LNS. Som i ovenstående tilfælde vil adressering, autentificering, autorisation og regnskab blive leveret af kontrolområdet for kilde-LAN.
L2TP bruger to slags pakker: kontrol- og datameddelelser. Kontrolmeddelelser bruges ved etablering, vedligeholdelse og afslutning af tunneler og opkald. Informationsmeddelelser bruges til at indkapsle PPP-rammer, der sendes over tunnelen. Kontrolmeddelelser bruger en pålidelig kontrolkanal i L2TP for at sikre levering. Informationsmeddelelser sendes ikke igen, når de går tabt.
Protokolstruktur:
PPP rammer | |
L2TP-informationsmeddelelser | L2TP-kontrolmeddelelser |
L2TP-bærer (upålidelig) | L2TP kontrolkanal (pålidelig) |
Pakketransport (UDP, FR, ATM osv.) |
Kontrolmeddelelsen har et sekvensnummer, der bruges på kontrolkanalen for at sikre pålidelig levering. Informationsmeddelelser kan bruge sekvensnumre til at omarrangere pakker og detektere rammetab. Alle koder sendes i den rækkefølge, der accepteres for netværk.
L2TP-pakkerne til kontrol- og bærerkanalerne bruger det samme header-format:
0 | en | 2 | 3 | fire | 5 | 6 | 7 | otte | 9 | ti | elleve | 12 | 13 | fjorten | femten | 16 | 31 | |||||
T | L | x | x | S | x | O | P | x | x | x | x | Version | Længde (opt.) | |||||||||
Tunnel ID | Sessions ID | |||||||||||||||||||||
Ns (opt.) | Nr (opt.) | |||||||||||||||||||||
Offset størrelse (valgfrit) | Offset pude (opt.)...... | |||||||||||||||||||||
nyttelast data |
Den er sat til 0 for informationsmeddelelser og 1 for kontrolmeddelelser.
For kontrolmeddelelser skal denne bit sættes til 1.
Alle reserverede bits skal sættes til 0 for udgående meddelelser og ignoreres for indgående meddelelser.
S-bitten for kontrolmeddelelser skal sættes til 1.
O-bitten for kontrolmeddelelser skal sættes til 0.
Værdien 1 er reserveret til at detektere L2F-pakker, når de blandes med L2TP-pakker. Pakker modtaget med et ukendt Ver-felt slettes.
AVP-meddelelsestypen bestemmer den specifikke type kontrolmeddelelse, der skal sendes.
Styr forbindelsesstyring
Opkaldsstyring
Fejlmeddelelser
PPP session management
Den nødvendige procedure for etablering af en L2TP-tunneling PPP-session omfatter to trin:
Tunnelen og den tilsvarende styrekanal skal dannes, før indgående eller udgående opkald påbegyndes. En L2TP-session skal etableres, før L2TP kan sende PPP-rammer gennem tunnelen. Der kan være flere sessioner i den samme tunnel mellem den samme LAC og LNS.
PPP-tunneling:
Kontrolforbindelse
Er den primære, der skal implementeres mellem LAC og LNS, før du starter en session. Etablering af en kontrolforbindelse omfatter sikker identifikation af peeren, samt bestemmelse af L2TP-versionen, linkmuligheder, framing osv.
L2TP inkluderer et enkelt, valgfrit, CHAP -lignende tunnelgodkendelsessystem under etablering af kontrolforbindelse.
Session etableringEfter vellykket etablering af en kontrolforbindelse kan der dannes individuelle sessioner. Hver session svarer til én PPP-trafik mellem LAC og LNS. I modsætning til etablering af kontrolforbindelse, er sessionsetablering asymmetrisk med hensyn til LAC og LNS. LAC'en anmoder LNS'en om at få adgang til sessionen for indgående anmodninger, og LNS'en anmoder LAC'en om at starte en session for udgående anmodninger.
Når tunnelen er dannet, bliver PPP-frames fra fjernsystemet modtaget af LAC strippet for CRC'er, linkheadere osv. indkapslet i L2TP og videresendt gennem den passende tunnel. LNS modtager L2TP-pakken og behandler den indkapslede PPP-ramme, som om den var blevet modtaget gennem den lokale PPP-grænseflade.
Afsenderen af en meddelelse, der er knyttet til en bestemt session og tunnel, placerer sessions- og tunnel-id'erne (specificeret af peeren) i de relevante overskriftsfelter for alle udgående meddelelser.
Brug af sekvensnumre i en datakanalSekvensnumrene, der er defineret i L2TP-headeren, bruges til at organisere pålidelig transport af kontrolmeddelelser. Hver peer opretholder en separat nummerering for kontrolforbindelsen og for hver informationssession i tunnelen.
I modsætning til L2TP-kontrolkanalen bruger L2TP-trafikkanalen meddelelsesnummerering ikke til gentransmission, men til at detektere pakketab og/eller gendanne den oprindelige sekvens af pakker blandet under transport.
LNS kan påbegynde undertrykkelse af meddelelsesnummerering på et hvilket som helst tidspunkt under sessionen (inklusive den første informationsmeddelelse).
Keepalive (Hej) mekanismenKeepalive-mekanismen bruges af L2TP til at skelne mellem nedetid i tunnelen og lange perioder uden kontrol eller informationsaktivitet på tunnelen. Dette gøres med Hej kontrolmeddelelser, efter at der er gået et nærmere angivet tidsrum siden sidste gang, der blev modtaget en kontrolmeddelelse gennem tunnelen. Hvis Hello-meddelelsen ikke leveres, erklæres tunnelen nede, og systemet vender tilbage til sin oprindelige tilstand. Mekanismen til nulstilling af transportmediet ved at introducere Hello-meddelelser sikrer, at et linkbrud mellem LNS og LAC detekteres i begge ender af tunnelen.
SessionsafbrydelseSessionsafslutning kan initieres af LAC eller LNS og opnås ved at sende en CDN-kontrolmeddelelse. Efter den sidste session er afsluttet, kan kontrolforbindelsen også afsluttes.
Afbrydelse af kontrolforbindelsenAfslutningen af en kontrolforbindelse kan initieres af LAC eller LNS og udføres ved at sende en enkelt StopCCN kontrolmeddelelse.
L2TP-protokollen er selvdokumenterende og kører oven på transportlaget. Der er dog behov for nogle detaljer[ hvad? ] forbindelse til miljøet, for at sikre kompatibiliteten af div[ hvad? ] implementeringer.
L2TP-protokollen står over for adskillige sikkerhedsproblemer i dens drift. Nogle tilgange til løsning af disse problemer diskuteres nedenfor.
Tunnelender kan valgfrit autentificere hinanden ved etablering af en tunnel. Denne godkendelse har de samme sikkerhedsattributter som CHAP og har rimelig beskyttelse mod genafspilning og spoofangreb under tunneletableringsprocessen. For at implementere godkendelse skal LAC'er og LNS'er dele en delt hemmelighed.
At sikre L2TP-sikkerhed kræver, at transportmiljøet er i stand til at levere datakryptering, meddelelsesintegritet og tjenestegodkendelse for al L2TP-trafik. L2TP er selv ansvarlig for fortroligheden, integriteten og autentificeringen af L2TP-pakker inde i tunnelen.
Når du kører over IP , giver IPsec (sikker IP) sikkerhed på pakkeniveau. Alle L2TP-kontrol- og informationspakker i en bestemt tunnel vises for IPsec-systemet som almindelige UDP/IP-informationspakker. Ud over IP-transportsikkerhed definerer IPsec en driftstilstand, der gør det muligt at tunnelere IP-pakker, samt adgangskontroller, der er nødvendige for applikationer, der understøtter IPsec. Disse værktøjer giver dig mulighed for at filtrere pakker baseret på egenskaberne af netværket og transportlagene. I L2TP-tunnelmodellen udføres lignende filtrering på PPP eller netværkslaget over L2TP.
TCP / IP-protokoller efter lag af OSI-modellen | Grundlæggende|
---|---|
Fysisk | |
kanaliseret | |
netværk | |
Transportere | |
session | |
Repræsentation | |
Anvendt | |
Andet anvendt | |
Liste over TCP- og UDP-porte |
Virtual Private Networks (VPN'er) | |
---|---|
Teknologi | |
Software | |
VPN-tjenester |