3.13. Traffic Selector Payload (Traffic-Selektor-Nutzdaten)
3.13. Traffic Selector Payload (Traffic-Selektor-Nutzdaten)
Das Traffic-Selector-Payload, in diesem Dokument als TS bezeichnet, ermöglicht es Peers, Paketströme zur Verarbeitung durch IPsec-Sicherheitsdienste zu identifizieren. Das Traffic-Selector-Payload besteht aus dem generischen IKE-Nutzdatenkopf, gefolgt von einzelnen Traffic Selectors wie folgt:
1 2 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Next Payload |C| RESERVED | Payload Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Number of TSs | RESERVED |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
~ <Traffic Selectors> ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Abbildung 19: Format des Traffic-Selector-Payloads
-
Number of TSs (1 Oktett) - Anzahl der bereitgestellten Traffic Selectors.
-
RESERVED - Dieses Feld MUSS als Null gesendet und beim Empfang ignoriert werden.
-
Traffic Selectors (variable Länge) - Ein oder mehrere einzelne Traffic Selectors.
Die Länge des Traffic-Selector-Payloads umfasst den TS-Kopf und alle Traffic Selectors.
Der Nutzdatentyp für das Traffic-Selector-Payload ist vierundvierzig (44) für Adressen am Ende der SA beim Initiator und fünfundvierzig (45) am Ende beim Responder.
Es ist nicht erforderlich, dass TSi und TSr dieselbe Anzahl einzelner Traffic Selectors enthalten. Sie werden daher so interpretiert: Ein Paket passt zu einem gegebenen TSi/TSr, wenn es zu mindestens einem individuellen Selektor in TSi und mindestens einem in TSr passt.
Beispielsweise würden die folgenden Traffic Selectors
TSi = ((17, 100, 198.51.100.66-198.51.100.66),
(17, 200, 198.51.100.66-198.51.100.66))
TSr = ((17, 300, 0.0.0.0-255.255.255.255),
(17, 400, 0.0.0.0-255.255.255.255))
UDP-Pakete von 198.51.100.66 zu beliebigem Ziel mit einer der vier Kombinationen Quell-/Zielports (100,300), (100,400), (200,300) und (200, 400) abbilden.
Manche Richtlinientypen erfordern daher mehrere Child-SA-Paare. Eine Richtlinie, die nur (100,300) und (200,400), nicht aber die beiden anderen Kombinationen abbildet, kann nicht als ein einzelnes Child-SA-Paar ausgehandelt werden.
3.13.1. Traffic Selector
1 2 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TS Type |IP Protocol ID*| Selector Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Start Port* | End Port* |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
~ Starting Address* ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
~ Ending Address* ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Abbildung 20: Traffic Selector
*Hinweis: Alle Felder außer TS Type und Selector Length hängen vom TS Type ab. Die gezeigten Felder gelten für TS Types 7 und 8, die einzigen derzeit definierten Werte.
-
TS Type (ein Oktett) - Gibt den Typ des Traffic Selectors an.
-
IP protocol ID (1 Oktett) - Wert für eine zugehörige IP-Protokoll-ID (z. B. UDP, TCP, ICMP). Null bedeutet, dass die Protokoll-ID für diesen Traffic Selector irrelevant ist -- die SA kann alle Protokolle tragen.
-
Selector Length (2 Oktette, vorzeichenlose Ganzzahl) - Länge dieser Traffic-Selector-Teilstruktur einschließlich Kopf.
-
Start Port (2 Oktette, vorzeichenlose Ganzzahl) - Kleinster von diesem Traffic Selector zulässiger Port. Für Protokolle ohne Port (einschließlich Protokoll 0) oder wenn alle Ports erlaubt sind, MUSS dieses Feld null sein. ICMP- und ICMPv6-Type- und -Code-Werte sowie MIPv6-MH-Type-Werte werden in diesem Feld wie in Abschnitt 4.4.1.1 von
[IPSECARCH]angegeben dargestellt. ICMP Type und Code gelten als eine 16-Bit-Portzahl, Type in den höchstwertigen 8 Bits, Code in den niederwertigsten 8 Bits. MIPv6-MH-Type-Werte gelten als 16-Bit-Portzahl, Type in den höchstwertigen 8 Bits, die niederwertigsten 8 Bits null. -
End Port (2 Oktette, vorzeichenlose Ganzzahl) - Größter zulässiger Port. Für Protokolle ohne Port oder wenn alle Ports erlaubt sind, MUSS dieses Feld 65535 sein. ICMP/ICMPv6 und MIPv6 MH wie in Abschnitt 4.4.1.1 von
[IPSECARCH]. -
Starting Address - Kleinste in diesem Traffic Selector enthaltene Adresse (Länge durch TS Type bestimmt).
-
Ending Address - Größte in diesem Traffic Selector enthaltene Adresse (Länge durch TS Type bestimmt).
Systeme gemäß [IPSECARCH], die „ANY“-Ports anzeigen wollen, MÜSSEN Startport 0 und Endport 65535 setzen; „ANY“ schließt „OPAQUE“ ein. Für nur „OPAQUE“, nicht „ANY“, MÜSSEN Start 65535 und Ende 0 sein.
Traffic-Selector-Typen 7 und 8 können sich auch auf ICMP-/ICMPv6-Type- und -Code-Felder sowie MH-Type-Felder des IPv6-Mobilitätskopfes [MIPV6] beziehen. ICMP- und MIPv6-Pakete haben jedoch keine getrennten Quell- und Zielfelder. Die Angabe für ICMP und MIPv6 ist beispielhaft in Abschnitt 4.4.1.3 von [IPSECARCH] gezeigt.
Die folgende Tabelle listet Werte für das Feld Traffic Selector Type und die zugehörigen Adressselektor-Daten. Stand nur bis RFC 4306; neuere Werte in [IKEV2IANA].
| TS Type | Wert |
|---|---|
| TS_IPV4_ADDR_RANGE | 7 |
| IPv4-Adressbereich durch zwei Vier-Oktett-Werte: Anfangs- und Endadresse (jeweils einschließlich). Alle dazwischen liegenden Adressen gehören zur Liste. | |
| TS_IPV6_ADDR_RANGE | 8 |
| IPv6-Adressbereich durch zwei Sechzehn-Oktett-Werte: Anfangs- und Endadresse (jeweils einschließlich). Alle dazwischen liegenden Adressen gehören zur Liste. |