Generic Routing Encapsulation
Erscheinungsbild
Das Generic Routing Encapsulation (GRE) ist ein Netzprotokoll, das von der Firma Cisco Systems entwickelt wurde. Es dient dazu, andere Protokolle einzukapseln und so in Form eines Tunnels über das Internet Protocol (IP) zu transportieren.
Beispiele für GRE-Anwendungen:
- VPN-Verbindungen für PPTP,
- Aufbau von Tunneln zwischen IPv6-fähigen Netzen über IPv4-Infrastruktur oder
- Als Tunnel zwischen IPsec-Endstellen, um dynamische Routingprotokolle oder Multicastübertragungen über VPN-Grenzen fahren zu können.
- Als Tunnel für die Übertragung des IPX oder des AppleTalk-Protokolls.
GRE verwendet die IP-Protokoll-Nummer 47, ein GRE-Header hat folgenden Aufbau:
0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 ┌─┬─┬─┬─┬─┬─────┬─────────┬─────┬───────────────────────────────┐ │C│R│K│S│s│Recur│ Flags │ Ver │ Protocol Type │ ├─┴─┴─┴─┴─┴─────┴─────────┴─────┼───────────────────────────────┤ │ Checksum (optional) │ Offset (optional) │ ├───────────────────────────────┴───────────────────────────────┤ │ Key (optional) │ ├───────────────────────────────────────────────────────────────┤ │ Sequence Number (optional) │ ├───────────────────────────────────────────────────────────────┤ │ Routing (optional) │ └───────────────────────────────────────────────────────────────┘
- C (Bit 0) – Checksum Present
- R (Bit 1) – Routing Present
- K (Bit 2) – Key Present
- S (Bit 3) – Sequence Number Present
- s (Bit 4) – Strict Source Route
- Recur (Bits 5–7) – Recursion Control
- Ver (Bits 13–15) – Version Number