8. L2TP Over Specific Media (L2TP über spezifische Medien)
Dieses Kapitel beschreibt Implementierungsdetails von L2TP über spezifische Medientypen. L2TP ist für den Betrieb über verschiedene Pakettransportmedien konzipiert, einschließlich UDP/IP, Frame Relay, ATM usw.
8.1 L2TP over UDP/IP (L2TP über UDP/IP)
L2TP verwendet den registrierten UDP-Port 1701 für die Kommunikation zwischen Tunnelendpunkten. UDP bietet Pakettransportdienste sowohl für L2TP-Kontrollnachrichten als auch für Datennachrichten.
Portzuweisung:
- Quellport: Der Sender kann jeden verfügbaren UDP-Port als Quellport verwenden.
- Zielport: Muss UDP-Port 1701 verwenden.
Paketkapselung:
Das Kapselungsformat für L2TP-Pakete über UDP/IP lautet wie folgt:
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP-Header |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| UDP-Header |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| L2TP-Header |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| L2TP-Kontrollnachricht oder |
| PPP-Nutzlast |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
UDP-Prüfsumme:
Die UDP-Prüfsumme sollte berechnet und in allen L2TP-Paketen enthalten sein. Empfänger müssen die Prüfsumme überprüfen, falls vorhanden. Wenn die Prüfsummenüberprüfung fehlschlägt, muss das Paket verworfen werden.
MTU-Überlegungen:
Da L2TP zusätzliche Kapselungsschichten hinzufügt (L2TP-Header + UDP-Header + IP-Header), müssen Implementierungen die Pfad-MTU berücksichtigen. Typischer Kapselungs-Overhead:
- IP-Header: 20 Bytes (IPv4) oder 40 Bytes (IPv6)
- UDP-Header: 8 Bytes
- L2TP-Header: Mindestens 6 Bytes (abhängig von Optionen möglicherweise mehr)
Fragmentierung:
L2TP-Implementierungen wird empfohlen, IP-Fragmentierung zu vermeiden. Dies kann erreicht werden durch:
- Pfad-MTU-Erkennung
- Aushandlung der MRU (Maximum Receive Unit) während der Tunneletablierung
- Durchführung der Fragmentierung auf PPP-Ebene statt auf IP-Ebene
8.2 IP (Internetprotokoll)
L2TP-Pakete verwenden IP als Pakettransportprotokoll. IP bietet End-to-End-Pakettransportdienste für L2TP.
IP-Versionsunterstützung:
L2TP ist für den Betrieb über IPv4 [RFC791] und IPv6 [RFC2460] konzipiert. Implementierungen sollten mindestens eine IP-Version unterstützen und können optional beide unterstützen.
IPv4-spezifische Überlegungen:
- Protokolltyp: Bei Verwendung von UDP-Kapselung wird das IP-Protokollfeld auf 17 (UDP) gesetzt.
- Diensttyp (TOS): L2TP-Implementierungen können das IP-TOS-Feld setzen, um Anforderungen an die Dienstqualität anzuzeigen. Kontrollnachrichten können eine höhere Priorität als Datennachrichten erfordern.
- Lebensdauer (TTL): Es sollte ein geeigneter TTL-Wert gesetzt werden, um zu verhindern, dass Pakete unbegrenzt im Netzwerk kreisen.
IPv6-spezifische Überlegungen:
- Nächster Header: Bei Verwendung von UDP-Kapselung auf 17 (UDP) gesetzt.
- Flussetikett: Das IPv6-Flussetikett kann verwendet werden, um Paketflüsse zu identifizieren, die zum selben Tunnel gehören, für die QoS-Verarbeitung.
- Hop-Limit: Entspricht dem TTL von IPv4.
Adressauswahl:
LACs und LNSs müssen in der Lage sein, die IP-Adresse des Peers zu bestimmen. Dies kann erreicht werden durch:
- Statische Konfiguration
- DNS-Auflösung
- Dynamische Erkennungsmechanismen
Multi-Homing-Überlegungen:
Wenn ein Tunnelendpunkt mehrere IP-Adressen hat (Multi-Homing), müssen Implementierungen sicherstellen, dass alle Pakete für einen Tunnel eine konsistente Quelladresse verwenden. Dies ist entscheidend für die Aufrechterhaltung des Tunnelzustands und zur Vermeidung von Verwirrung.
Sicherheit:
Wenn L2TP über IP betrieben wird, wird dringend empfohlen, IPsec [RFC2401] zum Schutz des Tunnelverkehrs zu verwenden. IPsec kann bieten:
- Vertraulichkeit: Durch ESP-Verschlüsselung
- Integrität: Durch AH- oder ESP-Authentifizierung
- Endpunkt-Authentifizierung: Durch IKE
Detaillierte Sicherheitsüberlegungen werden in Kapitel 9 behandelt.
Implementierungshinweise:
-
Port-Multiplexing: Mehrere Tunnel können zwischen demselben IP-Adresspaar eingerichtet werden, unterschieden durch Tunnel-ID.
-
NAT-Durchquerung: Wenn L2TP NAT-Geräte durchqueren muss, können zusätzliche Mechanismen erforderlich sein (wie L2TP/IPsec NAT-T).
-
Firewall-Überlegungen: Firewalls müssen bidirektionale Kommunikation über UDP-Port 1701 zulassen, um L2TP zu unterstützen.
-
QoS-Zuordnung: Implementierungen können QoS-Anforderungen von der PPP-Ebene auf das DSCP- oder TOS-Feld der IP-Ebene abbilden.