Lag 2 Tunneling Protocol - Layer 2 Tunneling Protocol

I datanettverk er Layer 2 Tunneling Protocol ( L2TP ) en tunnelprotokoll som brukes til å støtte virtuelle private nettverk (VPN) eller som en del av levering av tjenester fra Internett -leverandører. Den bruker kryptering ('skjuler') bare for sine egne kontrollmeldinger (ved hjelp av en valgfri forhåndsdelt hemmelighet), og gir ikke noen kryptering eller konfidensialitet av innhold i seg selv. Den gir heller en tunnel for Layer 2 (som kan være kryptert), og selve tunnelen kan passeres over en Layer 3 -krypteringsprotokoll, for eksempel IPsec .

Historie

Publisert i 2000 som foreslått standard RFC 2661, har L2TP sin opprinnelse hovedsakelig i to eldre tunneling protokoller for punkt-til-punkt-kommunikasjon: Cisco 's Layer 2 Forwarding Protocol (L2F) og Microsoft ' s Point-to-Point Tunneling Protocol (PPTP ). En ny versjon av denne protokollen, L2TPv3 , dukket opp som foreslått standard RFC 3931 i 2005. L2TPv3 gir ekstra sikkerhetsfunksjoner, forbedret innkapsling og muligheten til å bære andre datakoblinger enn bare Point-to-Point Protocol (PPP) over et IP-nettverk (for eksempel: Frame Relay , Ethernet , ATM , etc.).

Beskrivelse

Hele L2TP -pakken, inkludert nyttelast og L2TP -topptekst, sendes i et UDP -datagram ( User Datagram Protocol ). En dyd for overføring over UDP (i stedet for TCP) er at den unngår "TCP -nedsmeltingsproblemet". Det er vanlig å gjennomføre OPS -økter i en L2TP -tunnel. L2TP gir ikke konfidensialitet eller sterk autentisering i seg selv. IPsec brukes ofte til å sikre L2TP -pakker ved å gi konfidensialitet, autentisering og integritet. Kombinasjonen av disse to protokollene er generelt kjent som L2TP/IPsec (diskutert nedenfor).

De to endepunktene til en L2TP -tunnel kalles L2TP -tilgangskonsentratoren (LAC) og L2TP -nettverksserveren (LNS). LNS venter på nye tunneler. Når en tunnel er etablert, er nettverkstrafikken mellom jevnaldrende toveis. For å være nyttig for nettverk kjøres protokoller på høyere nivå deretter gjennom L2TP-tunnelen. For å lette dette etableres det en L2TP- økt i tunnelen for hver protokoll på høyere nivå, for eksempel PPP. Enten LAC eller LNS kan starte økter. Trafikken for hver økt er isolert av L2TP, så det er mulig å sette opp flere virtuelle nettverk over en enkelt tunnel.

Pakkene som utveksles i en L2TP -tunnel er kategorisert som enten kontrollpakker eller datapakker . L2TP gir pålitelighetsfunksjoner for kontrollpakkene, men ingen pålitelighet for datapakker. Pålitelighet, hvis ønskelig, må gis av de nestede protokollene som kjører innenfor hver økt i L2TP -tunnelen.

L2TP tillater opprettelse av et virtuelt privat oppringt nettverk (VPDN) for å koble en ekstern klient til bedriftsnettverket ved å bruke en delt infrastruktur, som kan være Internett eller en tjenesteleverandørs nettverk.

Tunnelmodeller

En L2TP-tunnel kan strekke seg over en hel PPP-økt eller bare over et segment av en to-segment økt. Dette kan representeres av fire forskjellige tunnelmodeller, nemlig:

  • frivillig tunnel
  • obligatorisk tunnel - innkommende samtale
  • obligatorisk tunnel - fjernkontroll
  • L2TP multihop -tilkobling

L2TP -pakkestruktur

En L2TP -pakke består av:

Bit 0–15 Bit 16–31
Flagg og versjonsinfo Lengde (opt)
Tunnel -ID Øktnummer
Ns (opt) Nr (opt)
Forskyvningsstørrelse (opt) Offset Pad (opt) ......
Nyttelastdata

Feltbetydninger:

Flagg og versjon
kontrollflagg som indikerer data/kontrollpakke og tilstedeværelse av felt for lengde, sekvens og offset.
Lengde (valgfritt)
Total lengde på meldingen i byte, bare tilstede når lengdeflagg er angitt.
Tunnel -ID
Angir identifikatoren for kontrolltilkoblingen.
Øktnummer
Angir identifikatoren for en økt i en tunnel.
Ns (valgfritt)
sekvensnummer for denne data- eller kontrollmeldingen, som begynner på null og øker med ett (modulo 2 16 ) for hver melding som sendes. Presenteres bare når sekvensflagg er angitt.
Nr (valgfritt)
sekvensnummer for forventet melding som skal mottas. Nr er satt til Ns for den siste ordren som ble mottatt pluss en (modulo 2 16 ). I datameldinger er Nr reservert, og hvis den er tilstede (som angitt av S -biten), MÅ ignoreres ved mottak ..
Forskyvningsstørrelse (valgfritt)
Angir hvor nyttelastdata er plassert forbi L2TP -overskriften. Hvis forskyvningsfeltet er tilstede, slutter L2TP -toppteksten etter den siste byten av forskyvningen. Dette feltet eksisterer hvis offset -flagget er angitt.
Offset Pad (valgfritt)
Variabel lengde, som spesifisert av forskyvningsstørrelsen. Innholdet i dette feltet er udefinert.
Nyttelastdata
Variabel lengde (maks nyttelast = maks størrelse på UDP -pakke - størrelse på L2TP -topptekst)

L2TP -pakkeutveksling

På tidspunktet for oppsett av L2TP -tilkobling, utveksles mange kontrollpakker mellom server og klient for å etablere tunnel og økt for hver retning. Den ene kameraten ber den andre om å tildele en bestemt tunnel og økt -ID gjennom disse kontrollpakkene. Ved å bruke denne tunnelen og sesjons -ID utveksles datapakker med de komprimerte PPP -rammene som nyttelast.

Listen over L2TP -kontrollmeldinger som utveksles mellom LAC og LNS, for håndtrykk før etablering av tunnel og økt i frivillig tunnelmetode, er

L2TP -pakke exchange.svg

L2TP/IPsec

På grunn av mangel på konfidensialitet i L2TP -protokollen, implementeres den ofte sammen med IPsec . Dette kalles L2TP/IPsec, og er standardisert i IETF RFC 3193. Prosessen med å sette opp en L2TP/IPsec VPN er som følger:

  1. Forhandling av IPsec security association (SA), vanligvis gjennom internettnøkkelutveksling (IKE). Dette utføres over UDP-port 500, og bruker vanligvis enten et delt passord (såkalte " forhåndsdelte nøkler "), offentlige nøkler eller X.509- sertifikater i begge ender, selv om andre tastemetoder eksisterer.
  2. Etablering av Encapsulating Security Payload (ESP) kommunikasjon i transportmodus. IP -protokollnummeret for ESP er 50 (sammenlign TCPs 6 og UDP's 17). På dette tidspunktet er det etablert en sikker kanal, men ingen tunneling finner sted.
  3. Forhandling og etablering av L2TP -tunnel mellom SA -endepunktene. Selve forhandlingen av parametere skjer over SAs sikre kanal, innenfor IPsec -kryptering. L2TP bruker UDP -port 1701.

Når prosessen er fullført, blir L2TP -pakker mellom endepunktene innkapslet av IPsec. Siden selve L2TP -pakken er pakket inn og skjult i IPsec -pakken, er den opprinnelige kilden og destinasjons -IP -adressen kryptert i pakken. Det er heller ikke nødvendig å åpne UDP -port 1701 på brannmurer mellom endepunktene, siden de indre pakkene ikke blir påvirket før etter at IPsec -data er blitt dekryptert og fjernet, som bare finner sted ved endepunktene.

Et potensielt forvirringspunkt i L2TP/IPsec er bruken av begrepene tunnel og sikker kanal . Begrepet tunnelmodus refererer til en kanal som gjør at uberørte pakker med ett nettverk kan transporteres over et annet nettverk. Når det gjelder L2TP/PPP, tillater det at L2TP/PPP -pakker transporteres over IP. En sikker kanal refererer til en forbindelse der konfidensialiteten til alle data er garantert. I L2TP/IPsec gir først IPsec en sikker kanal, deretter gir L2TP en tunnel. IPsec spesifiserer også en tunnelprotokoll: denne brukes ikke når en L2TP -tunnel brukes.

Windows -implementering

Windows har hatt innebygd støtte (konfigurerbar i kontrollpanel) for L2TP siden Windows 2000 . Windows Vista la til 2 alternative verktøy, en MMC-snap-in kalt "Windows Firewall with Advanced Security" (WFwAS) og kommandolinjeverktøyet " netsh advfirewall". En begrensning med både WFwAS- og netsh -kommandoene er at servere må spesifiseres med IP -adresse. Windows 10 har lagt den " Add-VpnConnection " og " Set-VpnConnectionIPsecConfiguration " Powershell kommandoer. En registernøkkel må opprettes på klienten og serveren hvis serveren står bak en NAT-T-enhet. [1]

L2TP i ISP -nettverk

L2TP brukes ofte av Internett -leverandører når internettjeneste over for eksempel ADSL eller kabel selges videre . Fra sluttbrukeren reiser pakker over et grossistnettverksleverandørs nettverk til en server som kalles en bredbånds ekstern tilgangsserver ( BRAS ), en protokollomformer og ruter kombinert. På eldre nettverk kan banen fra utstyret til sluttbrukernes lokaler til BRAS være over et minibanknettverk . Derfra går det over et IP -nettverk en L2TP -tunnel fra BRAS (fungerer som LAC) til et LNS som er en kantrouter på grensen til den endelige destinasjonen ISPs IP -nettverk. Se eksempel på forhandler -ISP -er som bruker L2TP .

RFC -referanser

  • RFC  2341 Cisco Layer Two Forwarding (Protocol) "L2F" (en forgjenger til L2TP)
  • RFC  2637 Point-to-Point Tunneling Protocol (PPTP)
  • RFC  2661 Layer Two Tunneling Protocol "L2TP"
  • RFC  2809 Implementering av L2TP obligatorisk tunnelering via RADIUS
  • RFC  2888 Sikker ekstern tilgang med L2TP
  • RFC  3070 Layer Two Tunneling Protocol (L2TP) over Frame Relay
  • RFC  3145 L2TP Koble årsaksinformasjon
  • RFC  3193 Sikring av L2TP ved hjelp av IPsec
  • RFC  3301 Layer Two Tunneling Protocol (L2TP): ATM -tilgangsnettverk
  • RFC  3308 Layer Two Tunneling Protocol (L2TP) differensierte tjenester
  • RFC  3355 Layer Two Tunneling Protocol (L2TP) Over ATM Adaptation Layer 5 (AAL5)
  • RFC  3371 Layer Two Tunneling Protocol "L2TP" Management Information Base
  • RFC  3437 Layer Two Tunneling Protocol Extensions for PPP Link Control Protocol Negotiation
  • RFC  3438 Layer Two Tunneling Protocol (L2TP) Internett -tildelte numre: Internet Assigned Numbers Authority (IANA) Update Update
  • RFC  3573 Signalering av Modem-On-Hold-status i Layer 2 Tunneling Protocol (L2TP)
  • RFC  3817 Layer 2 Tunneling Protocol (L2TP) Active Discovery Relay for PPP over Ethernet (PPPoE)
  • RFC  3931 Layer Two Tunneling Protocol - versjon 3 (L2TPv3)
  • RFC  4045- utvidelser for å støtte effektiv gjennomføring av multicast-trafikk i Layer-2 Tunneling Protocol (L2TP)
  • RFC  4951 Fail Over Extensions for Layer 2 Tunneling Protocol (L2TP) "failover"

Se også

Referanser

Eksterne linker

Implementeringer

Annen