This notification payload MUST be constructed as specified in section . Receiving Message #6 On receipt of message #6, the host MUST check for the presence of flags within a notification payload of type EXCHANGE_INFO: IKE_EXCHANGE_INFO_ND_BOUNDARY: If this flag is set, the host MUST set the Boundary flag for the QM SA. For more details see section . Messages #7 and #8 are constructed and processed as specified in section 3.1. Events None. Other Local Events None. Reliable Delete Details Using the notation as specified in section 4.1.1, the generalized form of an IKE Delete exchange using the Reliable Delete extension is as shown in the following figure. For more information, see section 5. Figure : IKE Delete exchange The description in this section uses the message numbers from the protocol sequence diagram. Abstract Data When this extension is implemented, the following additional state should be maintained. This is an extension to IKE Protocol version 1 as specified in . Flow state table: The following information MUST be maintained: Ni payload: The exact Ni payload that is sent with the delete message#1 should be preserved as part of the IKE MM SA state in order to validate the acknowledgment response. The Ni payload is a Nonce payload and MUST be constructed as specified in section 3.13. Timers The delete retransmission timer (for each MM and QM SA): This triggers a Delete payload retransmission. The start and duration of the timer MUST be as specified in sections , , and . Initialization None.
outgoing SAs while processing the request and the incoming SAs while processing the response." Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview. "Note that Message IDs are cryptographically protected and provide protection against message replays. In the unlikely that Message IDs grow too large to fit in 32 bits, the IKE_SA MUST be closed." Section 2.2 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview. "The management interface by the Shared Secret is provided MUST accept ASCII strings of at least 64 octets and MUST NOT add a null terminator before using them as shared secrets. It MUST also accept a HEX encoding of the Shared Secret." Section 2.15 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview. "IKEv2 simplifies this situation by Section 3.6 Not supported in
requiring that ECN be usable in the outer IP headers of all tunnel-mode IPsec SAs created by IKEv2. Specifically, tunnel encapsulators and decapsulators for all SAs created by IKEv2 MUST support the ECN full-functionality option for tunnels specified in [RFC3168] and MUST implement the tunnel encapsulation and decapsulation processing specified in [RFC4301] to prevent discarding of ECN congestion indications." Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview. "MUST be capable of being configured to send and accept the first two Hash and URL formats (with HTTP URLs)." Section 3.6 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview. [RFC4306] IKEv2 SHOULD / SHOULD NOT implementation notes
RFC Requirement RFC 4306 Section Compliance statement "The initiator SHOULD repeat the request, but now with a KEi payload from the group the responder selected." Section 1.3 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview. "…regard connections as anomalous and audit their existence should they persist." Section 1.4 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview. implementations SHOULD be of the maximum UDP message size supported." Section 2 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, closed
and Windows Server 2016 Technical Preview. "An IKE endpoint supporting a window size greater than one SHOULD be capable of processing incoming requests out of order to maximize performance in the event of network failures or packet reordering." Section 2.4 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview. "An endpoint SHOULD suspect that the other endpoint has failed based on routing information and initiate a request to see whether the other endpoint is alive." Section 2.4 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview. "…implementations SHOULD reject as invalid a message with those payloads in any other order." Section 2.5 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows
8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview. "Implementations SHOULD support in-place rekeying of SAs." Section 2.8 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview. "If redundant SAs are created though such a collision, the SA created with the lowest of the four used in the two exchanges SHOULD be by the endpoint that created it." Section 2.8 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview. "If an initiator receives a message on an SA for which it has not received a response to its Section 2.8 Not supported in Windows 7, Windows Server 2008 R2,
CREATE_CHILD_SA request, it SHOULD interpret that as a likely packet loss and retransmit the CREATE_CHILD_SA request." Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview. "If an error occurs outside the context of an IKE request (e.g., the node is getting ESP messages on a nonexistent SPI), the node SHOULD initiate an INFORMATIONAL exchange with a Notify payload describing the problem." Section 2.21 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview. "A node SHOULD treat such a message (and also a network message like ICMP destination unreachable) as a hint that there might be problems with SAs to that IP address and SHOULD initiate a liveness test for any such IKE_SA. An implementation SHOULD limit the frequency of such tests." Section 2.21 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview.
"There are cases where a NAT box decides to remove mappings that are still alive (for example, the keepalive interval is too long, or the NAT box is rebooted). To recover in these cases, hosts that are not behind a NAT SHOULD send all packets (including retransmission packets) to the IP address and port from the last valid authenticated packet from the other end." Section 2.23 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview. "To assure maximum interoperability, implementations MUST be to send at least one of ID_IPV4_ADDR, ID_FQDN, ID_RFC822_ADDR, or ID_KEY_ID, and MUST be configurable to accept all of these types. Implementations SHOULD be capable of generating and accepting all of these types." Section 3.5 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview. "Implementations SHOULD be capable of configured to send and accept Raw RSA keys." Section 3.6 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012
R2, Windows 10, and Windows Server 2016 Technical Preview. "Note that since IKE passes an indication of initiator identity in message 3 of the protocol, the responder SHOULD NOT send EAP Identity requests. The initiator SHOULD, however, respond to such requests if it receives them." Section 3.16 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview. [RFC4306] IKEv2 MAY implementation notes RFC Requirement RFC 4306 Section Compliance statement "The traffic selectors for traffic to be sent on that SA are specified in the TS payloads, which may be a subset of what the initiator of the CHILD_SA proposed." Section 1.3 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview.
and Windows Server 2016 Technical Preview. "To prevent this, the initiator MAY be willing to accept multiple responses to its first message, treat each as potentially legitimate, respond to it, and then discard all the invalid connections when it receives a valid cryptographically protected response to any one of its requests." Section 2.4 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview. "The responder in that case MAY reject the message by sending another response with a new cookie or it MAY keep the old value of <secret> around for a short time and accept cookies computed from either one." Section 2.6 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview. "An implementation MAY refuse all CREATE_CHILD_SA requests within an IKE_SA." Section 2.8 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows
and Windows Server 2016 Technical Preview. "INVALID_SELECTORS MAY be sent in an IKE INFORMATIONAL exchange when a node receives an ESP or AH packet whose selectors do not match those of the SA on which it was delivered (and that caused the packet to be dropped)." Section 3.10.11 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview. "INITIAL_CONTACT: It MAY be sent when an IKE_SA is established after a crash,…" Section 3.10.11 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview. "NAT_DETECTION_SOURCE_IP: MAY be multiple Notify payloads of this type in a message if the sender does not know which of several network attachments will be used to send the packet." Section 3.10.11 Not supported in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows
IKE fragmentation X CGA authentication Fast failover Negotiation discovery Reliable delete X IKE extension XP XP SP2 Server 2003 Vista and Server 2008 Windows 7 and Windows Server 2008 R2 Windows 8, Windows Server 2012, Windows 8.1, and Windows Server 2012 R2 Windows 10, and Windows Server 2016 Technical Preview NAT-T X X X X X X IKE X X X X X X CGA X X X X Fast failover X X X X X X Negotiation discovery X X X X Reliable delete X X X X X X X IKEv2 SA Correlation X X X IKEv2 Attributes X X X Denial of Service protection X X X X X X X Dead Peer Detection X * X Xbox Multiplayer Gaming X on
Authentication method Windows 2000 Windows XP Windows Server 2003 Windows Vista and Windows Server 2008 Windows 7 and Windows Server 2008 R2 Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview Pre-shared key (as specified in ) X X X X X X RSA signature (as specified in [RFC2409]) X X X X X X Kerberos using -API (as specified in ) X X X X X X CGA (as specified in ) X X X <5> Section 1.7: Cryptographic parameters implemented by operating system cross reference. Implemented in Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview. The following tables list the parameters that are implemented. group Windows 2000 Windows XP Windows Server 2003 Windows Vista and Windows Server 2008 Windows 7 and Windows Server 2008 R2 Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview
Default 768-bit MODP group (as specified in [RFC2409]) X X X X X X Alternate 1,024-bit MODP group (as specified in [RFC2409]) X X X X X X 2,048-bit MODP group (as specified in ) X X X X ECP256 (as specified in ) X X X ECP384 (as specified in [ECP]) X X X Authentication algorithm Windows 2000 Windows XP Windows Server 2003 Windows Vista and Windows Server 2008 Windows 7 and Windows Server 2008 R2 Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview NULL (as specified in ) X X X X X X HMAC-SHA1-96 (for more information, see ) X X X X X X HMAC-MD5-96 (as specified in ) X X X X X X
AES-MAC (for more information, see ) X X SHA-256 (for more information, see ) X X Encryption algorithm Windows 2000 Windows XP Windows Server 2003 Windows Vista and Windows Server 2008 Windows 7 and Windows Server 2008 R2 Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, and Windows Server 2016 Technical Preview NULL (as specified in [RFC2410]) X X X X X X DES-CBC (for more information, see ) X X X X X X 3DES-CBC (as specified in ) X X X X X X
Common name String representation Wire representation (MD5 hash of string) Version Microsoft implementation Windows 2000 "MS NT5 ISAKMPOAKLEY" + version number 2 1E 2B 51 69 05 99 1C 7D 7C 96 FC BF B5 87 E4 61 00 00 00 02 Windows 2000 Microsoft implementation Windows XP "MS NT5 ISAKMPOAKLEY" + version number 3 1E 2B 51 69 05 99 1C 7D 7C 96 FC BF B5 87 E4 61 00 00 00 03 Windows XP Microsoft implementation Windows Server 2003 "MS NT5 ISAKMPOAKLEY" + version number 4 1E 2B 51 69 05 99 1C 7D 7C 96 FC BF B5 87 E4 61 00 00 00 04 Windows Server 2003 Microsoft implementation Windows Vista "MS NT5 ISAKMPOAKLEY" + version number 5 1E 2B 51 69 05 99 1C 7D 7C 96 FC BF B5 87 E4 61 00 00 00 05 Windows Vista Microsoft implementation Windows Server 2008 "MS NT5 ISAKMPOAKLEY" + version number 6 1E 2B 51 69 05 99 1C 7D 7C 96 FC BF B5 87 E4 61 00 00 00 06 Windows Server 2008 Microsoft implementation Windows 7 "MS NT5 ISAKMPOAKLEY" + version number 7 1E 2B 51 69 05 99 1C 7D 7C 96 FC BF B5 87 E4 61 00 00 00 07 Windows 7 Microsoft implementation Windows Server 2008 R2 "MS NT5 ISAKMPOAKLEY" + version number 8 1E 2B 51 69 05 99 1C 7D 7C 96 FC BF B5 87 E4 61 00 00 00 08 Windows Server 2008 R2 Microsoft implementation Windows 8 "MS NT5 ISAKMPOAKLEY" + version number 9 1E 2B 51 69 05 99 1C 7D 7C 96 FC BF B5 87 E4 61 00 00 00 09 Windows 8 Microsoft implementation Windows Server 2012 "MS NT5 ISAKMPOAKLEY" + version number 9 1E 2B 51 69 05 99 1C 7D 7C 96 FC BF B5 87 E4 61 00 00 00 09 Windows Server 2012 Microsoft implementation Windows 8.1 "MS NT5 ISAKMPOAKLEY" + version number 9 1E 2B 51 69 05 99 1C 7D 7C 96 FC BF B5 87 E4 61 00 00 00 09 Windows 8.1
Index A Abstract data model CGA authentication ( 28, 39) 42 56 28 fast failover client ( 28, 42) fast failover server ( 28, 43) IKE fragmentation ( 28, 34) NAT traversal ( 28, 32) negotiation discovery ( 28, 48) reliable delete ( 28, 52) 43 18 22 22 14 C 19 CGA authentication abstract data model ( 28, 39) 39 39 41 40 38 18 18 40 40 40 40 40 41 40 41 39 91 Client 42 42 overview ( 28, 41) 42 26 26 26 26 D Data model - abstract CGA authentication ( 28, 39) 42 56 28 fast failover client ( 28, 42) fast failover server ( 28, 43) IKE fragmentation ( 28, 34) NAT traversal ( 28, 32) negotiation discovery ( 28, 48) reliable delete ( 28, 52) 43 54 16 abstract data model ( 28, 56) 56 56 57 56 55 56 56 57 56 57 56 E 20 68 F 15 Fast failover client abstract data model ( 28, 42) 43 42 42 43 42 41 receiving message #1 ( 42, 42) 42 43 42 Fast failover server abstract data model ( 28, 43) 44 43 44 44 43 44 44 44 44 43 19 21 14 G 8 H Higher-layer triggered events 39
68 70 11 25 23 23 25 O Other local events 44 49 13 13 P Packets 50 49 70 18 18 18 18 18 18 71 Protocol 30 29 31 30 30 31 29 Protocol Details 28 Q 43 43 R 11 12 11 18 15 abstract data model ( 28, 52) 54 53 53 54 53 52 receiving message #1 ( 53, 54) 53 55 54 53 17 S 53 Security 70 70 70 27 Sequencing rules 40 56 42 44 36 33 51 30 53 Server 43 43 44 overview ( 28, 43) 44 43 55 19 Syntax 21 20 20 20 T Time events 43 43 Timer events 41 57 44 37 33 52 31 54 44 Timers 39 42 54 56 42 43 37 37 35 32 49 29 53 43 91