<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<!-- $Id: draft-ietf-softwire-security-requirements-01.xml 14 2006-11-24 01:57:32Z parent $ -->
<!-- $Rev: 14 $ -->
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<?rfc toc="yes"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<?rfc comments="no"?>
<?rfc inline="yes"?>
<?rfc editing="no"?>
<rfc category="std" docName="draft-ietf-softwire-security-requirements-09"
     ipr="trust200902">
  <front>
    <title abbrev="Softwire security considerations">Softwire Security
    Analysis and Requirements</title>

    <author fullname="Shu Yamamoto" initials="S." surname="Yamamoto">
      <organization>NICT/KDDI R&amp;D Labs</organization>

      <address>
        <postal>
          <street>1-13-16 Hakusan, Bunkyo-ku</street>

          <city>Tokyo</city>

          <region></region>

          <code>113-0001</code>

          <country>Japan</country>
        </postal>

        <phone>+81-3-3868-6913</phone>

        <email>shu@nict.go.jp</email>
      </address>
    </author>

    <author fullname="Carl Williams" initials="C." surname="Williams">
      <organization>KDDI R&amp;D Labs</organization>

      <address>
        <postal>
          <street></street>

          <city>Palo Alto</city>

          <region>CA</region>

          <code>94301</code>

          <country>USA</country>
        </postal>

        <phone>+1-650-279-5903</phone>

        <email>carlw@mcsr-labs.org</email>
      </address>
    </author>

    <author fullname="Florent Parent" initials="F." surname="Parent">
      <organization>Beon Solutions</organization>

      <address>
        <postal>
          <street></street>

          <city>Quebec</city>

          <region>QC</region>

          <code></code>

          <country>Canada</country>
        </postal>

        <email>Florent.Parent@beon.ca</email>
      </address>
    </author>

    <author fullname="Hidetoshi Yokota" initials="H." surname="Yokota">
      <organization>KDDI R&amp;D Labs</organization>

      <address>
        <postal>
          <street>2-1-15 Ohara</street>

          <city>Fujimino</city>

          <region>Saitama</region>

          <code>356-8502</code>

          <country>Japan</country>
        </postal>

        <phone>+81-49-278-7894</phone>

        <email>yokota@kddilabs.jp</email>
      </address>
    </author>

    <date month="June" year="2009" />

    <area>Internet</area>

    <keyword>IPv6</keyword>

    <keyword>Tunnel</keyword>

    <keyword>Softwire</keyword>

    <keyword>Transition</keyword>

    <abstract>
      <t>This document describes the security guidelines for the softwire
      "Hubs and Spokes" and "Mesh" solutions. Together with the discussion of
      the softwire deployment scenarios, the vulnerability to the security
      attacks is analyzed to provide the security protection mechanism such as
      authentication, integrity and confidentiality to the softwire control
      and data packets.</t>
    </abstract>
  </front>

  <middle>
    <section title="Introduction">
      <t>The Softwire Working Group specifies the standardization of
      discovery, control and encapsulation methods for connecting IPv4
      networks across IPv6 networks and IPv6 networks across IPv4 networks.
      The softwire provides the connectivity to enable global reachability of
      both address families by reusing or extending existing technology. The
      Softwire Working Group is focusing on the two scenarios that emerged
      when discussing the traversal of networks composed of differing address
      families. This document provides the security guidelines for such two
      softwire solution spaces such as "Hubs and Spokes" and "Mesh" scenarios.
      "Hubs and Spokes" and "Mesh" problems are described in <xref
      target="RFC4925"></xref> Section 2 and Section 3, respectively. The
      protocols selected for softwire connectivity require the security
      considerations on more specific deployment scenarios for each solution.
      The scope of this document provides the analysis on the security
      vulnerabilities for the deployment scenarios and specifies the proper
      usage of the security mechanisms applied to the softwire deployment.</t>

      <t>Layer Two Tunneling Protocol (L2TPv2) is selected as phase 1 protocol
      to be deployed in the "Hubs and Spokes" solution space. If L2TPv2 is
      used in the unprotected network, it will be vulnerable to various
      security attacks and MUST be protected by appropriate security protocol
      such as IPsec described in <xref target="RFC3193"></xref>. The new
      implementation SHOULD use IKEv2 in the key management protocol for IPsec
      because of more reliable protocol and integration of required protocols
      in a single platform. This document provides the implementation guidance
      and proper usage of IPsec as the security protection mechanism by
      considering the security vulnerabilities in "Hubs and Spokes" scenario.
      The document also addresses the cases where the security protocol is not
      necessarily mandated.</t>

      <t>The softwire "Mesh" solution MUST support various levels of security
      mechanism to protect the data packets from an attacker being transmitted
      on a softwire tunnel from the access networks with one address family
      across the transit core operating with different address family <xref
      target="RFC4925"></xref>. The security mechanism for the control plane
      is also required to be protected from control data modification,
      spoofing attack, etc. In the "Mesh" solution, BGP is used for
      distributing softwire routing information in the transit core while the
      security issues for BGP is being discussed in other working groups. This
      document provides the proper usage of the security mechanisms for the
      softwire mesh deployment scenarios.</t>
    </section>

    <section title="Terminology">
      <section title="Abbreviations">
        <t>The terminology is based on the softwire problem statement document
        <xref target="RFC4925"></xref>.</t>

        <t>AF(i) - Address Family. IPv4 or IPv6. Notation used to indicate
        that prefixes, a node or network only deal with a single IP AF.</t>

        <t>AF(i,j) - Notation used to indicate that a node is dual-stack or
        that a network is composed of dual-stack nodes.</t>

        <t>Address Family Border Router (AFBR) –A dual-stack router that
        interconnects two networks that use either the same or different
        address families. An AFBR forms peering relationships with other
        AFBRs, adjacent core routers and attached CE routers, perform softwire
        discovery and signaling, advertises client ASF(i) reachability
        information and encapsulates/decapsulates customer packets in softwire
        transport headers.</t>

        <t>Customer Edge (CE) - A router located inside AF access island that
        peers with other CE routers within the access island network and with
        one or more upstream AFBRs.</t>

        <t>Customer Premise Equipment (CPE) - An equipment, host or router,
        located at a subscriber’s premises and connected with a carrier’s
        access network.</t>

        <t>Provider Edge (PE) - A router located at the edge of transit core
        network that interfaces with CE in access island.</t>

        <t>Softwire Concentrator (SC) - The node terminating the softwire in
        the service provider network.</t>

        <t>Softwire Initiator (SI) - The node initiating the softwire within
        the customer network.</t>

        <t>Softwire Encapsulation Set (SW-Encap) - A softwire encapsulation
        set contains tunnel header parameters, order of preference of the
        tunnel header types and the expected payload types (e.g. IPv4) carried
        inside the softwire.</t>

        <t>Softwire Next_Hop (SW-NHOP) - This attribute accompanies client AF
        reachability advertisements and is used to reference a softwire on the
        ingress AFBR leading to the specific prefixes. It contains a softwire
        identifier value and a softwire next_hop IP address denoted as &lt;SW
        ID:SW-NHOP address&gt;. Its existence in the presence of client AF
        prefixes (in advertisements or entries in a routing table) infers the
        use of softwire to reach that prefix.</t>
      </section>

      <section title="Requirements Language"></section>

      <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
      "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
      document are to be interpreted as described in <xref
      target="RFC2119"></xref>.</t>
    </section>

    <section anchor="hubs_and_spokes"
             title="Hubs and Spokes Security Guidelines">
      <section title="Deployment Scenarios">
        <t>To provide the security guidelines, the discussion of the possible
        deployment scenario and the trust relationship in the network is
        important.</t>

        <t>The softwire initiator (SI) always resides in the customer network.
        The node, in which the SI resides, can be the CPE access device,
        another dedicated CPE router behind the original CPE access device or
        any kind of host device such as PC, appliance, sensor etc.</t>

        <t>However, the host device may not always have direct access to its
        home carrier network, to which the user has subscribed. For example,
        the SI in the laptop PC can access various access networks such as
        Wi-Fi hot-spots, visited office network. This is the nomadic case,
        which the softwire SHOULD support.</t>

        <t>As the softwire deployment model, the following three cases as
        shown in <xref target="HS_model"></xref> should be considered. Case 2
        and 3 are typical for a nomadic node, but are also applicable to a
        stationary node. In order to securely connect legitimate SI and SC
        each other, the authentication process between SI and SC is performed
        normally using AAA servers.</t>

        <figure anchor="HS_model"
                title="Authentication model for Hubs and Spokes">
          <artwork>
         visited network            visited network
         access provider            service provider
                +---------------------------------+
                |                                 |
         +......v......+    +.....................|......+
         .             .    .                     v      .
+------+  .  (case 3)   .    .  +------+      +--------+  .
|      |=====================.==|      |      |        |  .
|  SI  |__.________     .    .  |  SC  |&lt;----&gt;|  AAAv  |  .
|      |---------- \    .    .  |      |      |        |  .
+------+  .        \\   .    .  +------+      +--------+  .  
         .         \\  .    .                     ^      .
  ^      +..........\\.+    +.....................|......+
  |                  \\                           |
  |          (case 2) \\                          |
  |                    \\                         |
  |                     \\                        |
  |      +............+  \\ +.....................|......+
         .            .   \\.                     v      .
+------+  .            .    \\__+------+      +--------+  .
|      |  . (case 1)   .     ---|      |      |        |  .
|  SI  |=====================.==|  SC  |&lt;----&gt;|  AAAh  |  .
|      |  .            .     .  |      |      |        |  .
+------+  .            .     .  +------+      +--------+  .
         .            .     .                            .
         +............+     +............................+
          home network                home network
         access provider            service provider 
</artwork>
        </figure>

        <t>The AAA server shown in <xref target="HS_model"></xref> interacts
        with the SC which acts as an AAA client. The AAA may consists of
        multiple AAA servers and the proxy AAA may be intermediate between the
        SC and the AAA servers. This document refers to the AAA server in the
        home network service provider as the home AAA server (AAAh) and that
        in the visited network service provider as the visited AAA server
        (AAAv).</t>

        <t>The softwire problem statement <xref target="RFC4925"></xref>
        states that the softwire solution must be able to be integrated with
        common deployed AAA solution. L2TPv2 used in softwire supports PPP and
        L2TP authentications which can be integrated with common AAA
        servers.</t>

        <t>When the softwire is used in an unprotected network, a stronger
        authentication process is required (e.g., IKEv2). The proper selection
        of the authentication processes is discussed in Section 3.4 with
        respect to the various security threats.</t>

        <t>Case 1: The SI connects to the SC that belongs to the home network
        service provider via the home access provider network operating
        different address family. It is assumed that the home access network
        and the home network providing SC are under the same administrative
        system.</t>

        <t>Note that the IP address of the host device, in which SI resides,
        is static or dynamic depending on the subscribed service. The
        discovery of the SC may be automatic. But in this document, the
        information on the SC, e.g. the DNS name or IP address, is assumed to
        be configured by the user or the provider of the SI in advance.</t>

        <t>Case 2: The SI connects to the SC that belongs to the home network
        service provider network via the visited access network. For the
        nomadic case, the SI/user does not subscribe to the visited access
        provider. For the network access through the public network such as
        WiFi hot-spots, the home network service provider does not have the
        trust relationship with the access network.</t>

        <t>Note that the IP address of the host device, in which SI resides,
        may be changed periodically due to the home network service provider's
        policy.</t>

        <t>Case 3: The SI connects to the SC that belongs to the visited
        network service provider via the visited access network. This is
        typical of nomadic access case. When the SI is mobile, it may roam
        from the home ISP providing the home access network to the visited
        access network, e.g. WiFi hot-spot network provided by the different
        ISP. The SI does not connect to the SC in the home network, for
        example, due to the geographical reason. The SI/user does not
        subscribe to the visited network service provider, but the visited
        network service provider has some roaming agreement with the home
        network service provider.</t>

        <t>Note that the IP address of the host, in which SI resides, is
        provided the visited network service provider's policy.</t>
      </section>

      <section anchor="trust_model" title="Trust Relationship">
        <t>The establishment of the trust relationship between SI and SC is
        different for three cases. The security consideration must be taken
        into account for each case.</t>

        <t>In Case 1, the SC and the home AAA server in the same network
        service provider MUST have a trust relationship and communications
        between them MUST be secured. When the SC authenticates the SI, the SC
        transmits the authentication request message to the home AAA server
        and obtains the accept message together with the Attribute Value Pair
        for the SI authentication. Since the SI in the service provider
        network, the provider can take measures to protect the entities (e.g.,
        SC, AAA servers) against a number of security threats, including the
        communication between them.</t>

        <t>In Case 2, when the SI is mobile, the access to the home network
        service provider through the visited access network provider is
        allowed. The trust relationship between SI and the SC in the home
        network MUST be established. When the visited access network is a
        public network, the various security attacks must be considered.
        Especially for SI to connect to the legitimate SC, the authentication
        from SI to SC MUST be performed together with that from SC to SI.</t>

        <t>In Case3, if the SI roams into a different network service
        provider's administrative domain and the visited AAA server
        communicates with the home AAA server to obtain the information for SI
        authentication. The visited AAA server MUST have a trust relationship
        with the home AAA server and the communication between them MUST be
        secured in order to properly perform the roaming services that have
        been agreed upon under specified conditions.</t>

        <t>Note that the path for the communications between the home AAA
        server and the visited AAA server may consist of several AAA proxies.
        In this case, AAA proxy threat model SHOULD be considered <xref
        target="RFC2607"></xref>. A malicious AAA proxy may launch passive or
        active security attacks. The trustworthiness of proxies in AAA proxy
        chains will be weaken when the hop counts of the proxy chain is
        longer. For example, the accounting information exchanged among AAA
        proxies is attractive for an adversary. The communication between a
        home AAA server and a visited AAA server MUST be protected.</t>
      </section>

      <section title="Softwire Security Threat Scenarios">
        <t>Softwire can be used to connect IPv6 networks across public IPv4
        networks and IPv4 networks across public IPv6 networks. The control
        and data packets used during the softwire session are vulnerable to
        the security attacks.</t>

        <t>A complete threat analysis of softwire requires examination of the
        protocols used for the softwire setup, the encapsulation method used
        to transport the payload, and other protocols used for configuration
        (e.g., router advertisements, DHCP).</t>

        <t>The softwire solution uses a subset of the Layer Two Tunneling
        Protocol (L2TPv2) functionality <xref target="RFC2661"></xref>, <xref
        target="I-D.ietf-softwire-hs-framework-l2tpv2"></xref>. In the
        softwire "Hubs and Spokes" model, L2TPv2 is used in a voluntary tunnel
        model only. The SI acts as a L2TP Access Concentrator (LAC) and PPP
        endpoint. The L2TPv2 tunnel is always initiated from the SI.,</t>

        <t>Generic threat analysis done for L2TP using IPsec <xref
        target="RFC3193"></xref> is applicable to softwire "Hubs and Spokes"
        deployment. The threat analysis for other protocols such as MIPv6
        <xref target="RFC4225"></xref>, PANA <xref target="RFC4016"></xref>,
        NSIS <xref target="RFC4081"></xref>, and Routing Protocols <xref
        target="RFC4593"></xref> are applicable here as well and should be
        used as references.</t>

        <t>First, the SI resided in the customer network sends
        Start-Control-Connection-Request(SCCRQ) packet to the SC for the
        initiation of the softwire. L2TPv2 offers an optional CHAP-like tunnel
        authentication system during control connection establishment. This
        requires a shared secret between the SI and SC and no key management
        is offered for this L2TPv2.</t>

        <t>When L2TPv2 control connection is established, the SI and SC
        optionally enter authentication phase after completing PPP Link
        Control Protocol (LCP) negotiation. PPP authentication supports one
        way or two way CHAP authentication, and can leverage existing AAA
        infrastructure. PPP authentication does not provide per-packet
        authentication.</t>

        <t>PPP encryption is defined but PPP Encryption Control Protocol (ECP)
        negotiation does not provide for a protected cipher suite negotiation.
        PPP encryption provides a weak security solution [RFC3193]. PPP ECP
        implementation cannot be expected. PPP authentication also does not
        provide the scalable key management.</t>

        <t>Once the L2TPv2 tunnel and PPP configuration are successfully
        established, the SI is connected and can start using the
        connection.</t>

        <t>These steps are vulnerable to man-in-the-middle (MITM), denial of
        service (DoS), and service theft attacks, which are caused as the
        consequence of the following adversary actions.</t>

        <t>Adversary attacks on softwire include: <list style="numbers">
            <t>An adversary may try to discover identities and other
            confidential informationby snooping data packets.</t>

            <t>An adversary may try to modify both control and data packets.
            This type of attack involves integrity violations.</t>

            <t>An adversary may try to eavesdrop and collect control messages.
            By replaying these messages, an adversary may successfully hijack
            the L2TP tunnel or the PPP connection inside the tunnel. An
            adversary might mount MITM, DOS, and theft of service attacks.</t>

            <t>An adversary can flood the softwire node with bogus signaling
            messages to cause DoS attacks by terminating L2TP tunnels or PPP
            connections.</t>

            <t>An adversary may attempt to disrupt the softwire negotiation in
            order to weaken or remove confidentiality protection.</t>

            <t>An adversary may wish to disrupt the PPP LCP authentication
            negotiation.</t>
          </list></t>

        <t>When AAA servers are involved in softwire tunnel establishment, the
        security attacks can be mounted on the communication associated with
        AAA servers. Specifically for the case 3 stated in Section 3.2, an
        adversary may eavesdrop the packets between AAA servers in the home
        and visted network and compromise the authentication data. An
        adversary may also disrupt the communication between the AAA servers,
        causing a service denial. Security of AAA server communications is out
        of scope of this document.</t>

        <t>In environments where the link is shared without the cryptographic
        protection and the weak authentication or one-way authentication is
        used, these security attacks can be mounted on softwire control and
        data packets.</t>

        <t>When there is no prior trust relationship between the SI and SC,
        any node can pretend to be a SC. In this case, an adversary may
        impersonate the SC to intercept traffic (e.g. "rogue" softwire
        concentrator).</t>

        <t>The rogue SC can introduce a denial of service attack by
        blackholing packets from the SI. The rogue SC can also eavesdrop on
        all packets sent from or to the SI. Security threats of a rogue SC are
        similar to a compromised router.</t>

        <t>The deployment of ingress filtering is able to control the
        malicious users' access <xref target="RFC4213"></xref>. Without
        specific ingress filtering checks in the decapsulator at the SC, it
        would be possible for an attacker to inject a false packet, leaving
        the system vulnerable to attacks such as DoS. The inner address
        ingress filtering can reject invalid inner source address. Without
        inner address ingress filtering, another kind of attack can happen.
        The malicious users from another ISP could start using its tunneling
        infrastructure to get free inner address connectivity, transforming
        effectively the ISP into an inner address transit provider.</t>

        <t>While the ingress filtering does not provide the complete
        protection in the case an address spoofing has been happened. In order
        to provide better protection against address spoofing, authentication
        with binding between the legitimate address and the authenticated
        identity MUST be implemented. This can be implemented between the SC
        and the SI using IPsec.</t>
      </section>

      <section title="Softwire Security Guidelines">
        <t>Based on the security threat analysis in Section 3.3 in this
        document, the softwire security protocol MUST support the following
        protections.</t>

        <t><list style="numbers">
            <t>Softwire control messages between the SI and SC MUST be
            protected against eavesdropping and spoofing attacks.</t>

            <t>Softwire security protocol MUST be able to protect itself
            against replay attacks.</t>

            <t>Softwire security protocol MUST be able to protect the device
            identifier against the impersonation when it is exchanged between
            the SI and the SC.</t>

            <t>Softwire security protocol MUST be able to securely bind the
            authenticated session to the device identifier of the client, to
            prevent service theft.</t>

            <t>Softwire security protocol MUST be able to protect disconnect
            and revocation messages.</t>
          </list></t>

        <t>The softwire security protocol requirement is comparable to <xref
        target="RFC3193"></xref>.</t>

        <t>For softwire control packets, authentication, integrity and replay
        protection MUST be supported and confidentiality SHOULD be
        supported.</t>

        <t>For softwire data packets, authentication, integrity and replay
        protection SHOULD be supported and confidentiality MAY be
        supported.</t>

        <t>The softwire problem statement <xref target="RFC4925"></xref>
        provides some requirements for “Hubs and Spoke" solution that are
        taken into account in defining the security protection mechanisms.
        <list style="numbers">
            <t>Control and/or data plane MUST be able to provide full payload
            security when desired.</t>

            <t>Deployed technology MUST be very strongly considered.</t>
          </list></t>

        <t>This additional security protection must be separable from the
        softwire tunneling mechanism.</t>

        <t>Note that the scope of the security is on the L2TP tunnel between
        the SI and SC. If end-to-end security is required, a security protocol
        SHOULD be used in the payload packets. But this is out of scope of
        this document.</t>

        <section title="Authentication">
          <t>The softwire security protocol MUST support user authentication
          in the control plane, in order to authorize access to the service,
          and provide adequate logging of activity. Although several
          authentication protocols are available, the security threats must be
          considered to choose the protocol.</t>

          <t>For example, the SI/user using Password Authentication Protocol
          (PAP) access to the SC with the cleartext password. In many
          circumstances, this represents a large security risk. The adversary
          may spoof as a legitimate user by using the stolen password.
          Challenge Handshake Authentication Protocol (CHAP) <xref
          target="RFC1994"></xref> encrypts a password with “challenge" sent
          from the SC. The theft of password can be mitigated. However, as
          CHAP only supports unidirectional authentication, the risk of a
          man-in-the-middle or rogue SC cannot be avoided. Extensible
          Authentication Protocol-Transport Layer Security (EAP-TLS) <xref
          target="RFC5216"></xref> mandates mutual authentication and avoid
          the rogue SC.</t>

          <t>When the SI established a connection to the SC through a public
          network, the SI may want to a proof of the SC identity. Softwire
          MUST support mutual authentication to allow for such scenario.</t>

          <t>In some circumstances, however, the service provider may decide
          to allow non-authenticated connection <xref
          target="I-D.ietf-softwire-hs-framework-l2tpv2"></xref>. For example,
          when the customer is already authenticated by some other means, such
          as closed networks, cellular networks at Layer 2, etc., the service
          provider may decide to turn authentication off. If no authentication
          is conducted on any layer, the SC acts as a gateway for anonymous
          connections. Running such a service MUST be configurable by the SC
          administrator and the SC SHOULD take some security measures such as
          ingress filtering and adequate logging of activity. It should be
          noted that anonymous connection service cannot provide the security
          functionalities described in this document (e.g. integrity, replay
          protection and confidentiality).</t>

          <t>L2TPv2 selected as Softwire phase 1 protocol supports PPP
          authentication and L2TPv2 authentication. PPP authentication and
          L2TPv2 have various security threats as stated in Section 3.3. They
          will be used in the limited condition as described in the next
          subsections.</t>

          <section title="PPP Authentication">
            <t>PPP can provide mutual authentication between the SI and SC
            using CHAP [RFC1994] during the connection establishment phase
            (Link Control Protocol, LCP). PPP CHAP authentication can be used
            when the SI and SC are on a trusted, non-public IP network.</t>

            <t>Since CHAP does not provide per-packet authentication,
            integrity, or replay protection, PPP CHAP authentication MUST NOT
            be used for unprotected on a public IP network. If other
            appropriate protected mechanism has been already applied, PPP CHAP
            authentication MAY be used.</t>

            <t>Optionally, other authentication methods such as PAP, MS-CHAP
            EAP MAY be supported.</t>
          </section>

          <section title="L2TPv2 Authentication"></section>

          <t>L2TPv2 provides an optional CHAP-like tunnel authentication
          during the control connection establishment [RFC2661, 5.1.1]. L2TPv2
          authentication MUST NOT be used for unprotected on a public IP
          network as the same restriction applied to PPP CHAP.</t>
        </section>

        <section title="Softwire Security Protocol"></section>

        <t>To meet the above requirements, all softwire security compliant
        implementations MUST implement the following security protocols.</t>

        <t>IPsec ESP <xref target="RFC4303"></xref> in transport mode is used
        for securing softwire control and data packets. Internet Key Exchange
        (IKE) protocol<xref target="RFC4306"></xref> MUST be supported for
        authentication, security association negotiation and key management
        for IPsec. The applicability of different version of IKE is discussed
        in Section 3.5.</t>

        <t>The softwire security protocol MUST support NAT traversal. UDP
        encapsulation of IPsec ESP packets<xref target="RFC3948"></xref> and
        negotiation of NAT-traversal in IKE<xref target="RFC3947"></xref> MUST
        be supported when IPsec is used.</t>
      </section>

      <section anchor="guidelines_hs"
               title="Guidelines for Usage of IPsec in Softwire">
        <t>When softwire "Hubs and Spokes" solution implemented by L2TPv2 is
        used in untrustworthy network, softwire MUST be protected by
        appropriate security protocol such as IPsec. This section provides
        guidelines for the usage of IPsec in L2TPv2 based softwire.</t>

        <t><xref target="RFC3193"></xref> discusses how L2TP can use IKE <xref
        target="RFC2409"></xref> and IPsec <xref target="RFC2401"></xref> to
        provide tunnel authentication, privacy protection, integrity checking
        and replay protection. Since its publication, the revision to IPsec
        protocols have been published (IKEv2 <xref target="RFC4306"></xref>,
        ESP <xref target="RFC4303"></xref>, NAT-traversal for IKE <xref
        target="RFC3947"></xref> and ESP<xref target="RFC3948"></xref>).</t>

        <t>Given that deployed technology must be very strongly considered
        <xref target="RFC4925"></xref> for the 'time-to-market' solution,
        <xref target="RFC3193"></xref> MUST be supported. However, the new
        implementation SHOULD use IKEv2 <xref target="RFC4306"></xref> for
        IPsec because of the numerous advantages over IKE <xref
        target="RFC2409"></xref>. In new deployments, IKEv2 SHOULD be used as
        well.</t>

        <t>Although <xref target="RFC3193"></xref> can be applied in the
        softwire "Hubs and Spokes" solution, softwire requirements such as
        NAT-traversal, NAT-traversal for IKE <xref target="RFC3947"></xref>
        and ESP <xref target="RFC3948"></xref> MUST be supported.</t>

        <t>Meanwhile, IKEv2 <xref target="RFC4306"></xref> integrates
        NAT-traversal. IKEv2 also supports EAP authentication with the
        authentication using shared secrets (pre-shared key) or public key
        signature (certificate).</t>

        <t>The selection of pre-shared key and certificate depends on the
        scale of the network for softwire to be deployed as described in
        Section 3.5.2. However, pre-shared key and certificates only support
        the machine authentication. When both machine and user authentications
        are required, for example, in the nomadic case, EAP SHOULD be
        used.</t>

        <t>Together with EAP, IKEv2 <xref target="RFC4306"></xref> supports
        legacy authentication methods that may be useful in environments where
        username and password based authentication is already deployed.</t>

        <t>IKEv2 is more reliable protocol than IKE <xref
        target="RFC2409"></xref>in terms of the replay protection capability,
        DoS protection enabled mechanism etc. Therefore, new implementations
        SHOULD use IKEv2 over IKE.</t>

        <t>The following sections will discuss using IPsec to protect L2TPv2
        as applied in the softwire "Hubs and Spokes" model. Unless otherwise
        stated, IKEv2 and the new IPsec architecture <xref
        target="RFC4301"></xref> is assumed.</t>

        <section title="Authentication Issues"></section>

        <t>IPsec implementation using IKE only supports machine
        authentication. There is no way to verify a user identity and to
        segregate the tunnel traffic among users in the multi-user machine
        environment. IKEv2 can support user authentication with EAP payload by
        leveraging existing authentication infrastructure and credential
        database. This enables the traffic segregation among users when user
        authentication is used by combining the legacy authentication. The
        user identity asserted within IKEv2 will be verified on a per-packet
        basis.</t>

        <t>If the AAA server is involved in security association establishment
        between the SI and SC, a session key can be derived from the
        authentication between the SI and the AAA server. Successful EAP
        exchanges within IKEv2 runs between the SI and the AAA server create a
        session key and it is securely transferred to the SC from the AAA
        server. The trust relationship between the involved entities follows
        Section 3.2 of this document.</t>

        <section title="IPsec Pre-Shared Keys for Authentication"></section>

        <t>With IPsec, when the identity asserted in IKE is authenticated, the
        resulting derived keys are used to provide per-packet authentication,
        integrity and replay protection. As a result, the identity verified in
        the IKE is subsequently verified on reception of each packet.</t>

        <t>Authentication using pre-shared keys can be used when the number of
        SI and SC is small. As the number of SI and SC grows, pre-shared keys
        becomes increasingly difficult to manage. A softwire security protocol
        MUST provide a scalable approach to key management. Whenever possible,
        authentication with certificates is preferred.</t>

        <t>When pre-shared keys are used, group pre-shared keys MUST NOT be
        used because of its vulnerability to Man-In-The-Middle attacks
        ([RFC3193], 5.1.4).</t>

        <section title="Inter-Operability Guidelines">
          <t>The L2TPv2/IPsec inter-operability concerning tunnel teardown,
          fragmentation and per-packet security checks given in ([RFC3193]
          section 3) must be taken into account.</t>

          <t>Although the L2TP specification allows the responder (SC in
          softwire) to use a new IP address or to change the port number when
          sending the Start-Control-Connection-Request-Reply (SCCRP), a
          softwire concentrator implementation SHOULD NOT do this ([RFC3193]
          section 4).</t>

          <t>However, with some reasons, for example, "load-balancing" between
          SCs, the IP address change is required. To signal an IP address
          change, the SC sends a StopCCN message to the SI using the Result
          and Error Code AVP in L2TPv2 message. A new IKE_SA and CHILD_SA MUST
          be established to the new IP address.</t>

          <t>Since ESP transport mode is used, the UDP header carrying the
          L2TP packet will have an incorrect checksum due to the change of
          parts of the IP header during transit. [RFC3948] section 3.1.2
          defines 3 procedures that can be used to fix the checksum. A
          softwire implementation MUST NOT use the "incremental update of
          checksum" (option 1 described in<xref target="RFC3948"></xref>),
          because the IKEv2 does not have the information required (NAT-OA
          payload) to compute that checksum. Since ESP is already providing
          validation on the L2TP packet, a simple approach is to use the "do
          not check" approach (option 3 in <xref
          target="RFC3948"></xref>).</t>
        </section>

        <section title="IPsec Filtering Details">
          <t>If the old IPsec architecture <xref target="RFC2401"></xref> and
          IKE <xref target="RFC2409"></xref> are used, the security policy
          database (SPD) examples in <xref target="RFC3193"></xref> appendix A
          can be applied to softwire model. In that case, the initiator is
          always the client (SI), and responder is the SC. IPsec SPD examples
          for IKE <xref target="RFC2409"></xref> are also given in appendix A
          of this document.</t>

          <t>The revised IPsec architecture <xref target="RFC4301"></xref>
          redefined the SPD entries to provide more flexibility (multiple
          selectors per entry, list of address range, peer authentication
          database (PAD), "populate from packet"(PFP) flag, etc.). The
          Internet Key Exchange (IKE) has also been revised and simplified in
          IKEv2 <xref target="RFC4306"></xref>. The following sections
          provides the SPD examples for softwire to use the revised IPsec
          architecture and IKEv2.</t>

          <section title="IPv6 over IPv4 Softwire L2TPv2 example for IKEv2">
            <t>If IKEv2 is used as the key management protocol, RFC4301
            provides the guidance of the SPD entries. In IKEv2, we can use PFP
            flag to specify SA and the port number can be selected with
            Traffic Selector with TSr during CREATE_CHILD_SA. The following
            describes PAD entries on the SI and SC, respectively. The PAD
            entries are only example configurations. The PAD entry on the SC
            matches user identities to the L2TP SPD entry. This is done using
            a symbolic name type specified in <xref
            target="RFC4301"></xref>.</t>

            <t></t>

            <figure>
              <artwork>SI PAD:
- IF remote_identity = SI_identity
     Then authenticate (shared secret/certificate/)
     and authorize CHILD_SA for remote address SC_address

SC PAD:
- IF remote_identity = user_1
     Then authenticate (shared secret/certificate/EAP)
     and authorize CHILD_SAs for symbolic name "l2tp_spd_entry"</artwork>
            </figure>

            <t>The following describes the SPD entries for the SI and SC,
            respectively. Note that IKEv2 and ESP traffic MUST be allowed
            (bypass). These include IP protocol 50 and UDP port 500 and
            4500.</t>

            <t>The IPv4 packet format of ESP protecting L2TPv2 carrying IPv6
            packet is shown in Table 1 by using the similar Table in <xref
            target="RFC4891"></xref>.</t>

            <t></t>

            <figure>
              <artwork>
+----------------------------+------------------------------------+
| Components (first to last) |              Contains              |
+----------------------------+------------------------------------+
|         IPv4 header        |   (src = IPv4-SI, dst = IPv4-SC)   |
|         ESP header         |                                    |
|         UDP header         |   (src port=1701, dst port=1701)   |
|         L2TPv2 header      |                                    |
|         PPP header         |                                    |
|         IPv6 header        |                                    |
|         (payload)          |                                    |
|         ESP ICV            |                                    |
+----------------------------+------------------------------------+

 Table 1: Packet Format for L2TPv2 with ESP carrying IPv6 packet.</artwork>
            </figure>

            <t></t>

            <figure>
              <artwork>SPD for Softwire Initiator:

Softwire Initiator SPD-S
- IF local_address=IPv4-SI
     remote_address=IPv4-SC
     Next Layer Protocol=UDP
     local_port=1701
     remote_port=ANY (PFP=1)
 Then use SA ESP transport mode
 Initiate using IDi = user_1 to address IPv4-SC</artwork>
            </figure>

            <figure>
              <artwork>SPD for Softwire Concentrator:

Softwire Concentrator SPD-S
- IF name="l2tp_spd_entry"
     local_address=IPv4-SC
     remote_address=ANY (PFP=1)
     Next Layer Protocol=UDP
     local_port=1701
     remote_port=ANY (PFP=1)
 Then use SA ESP transport mode</artwork>
            </figure>
          </section>

          <section title="IPv4 over IPv6 Softwire L2TPv2 example for IKEv2">
            <t>The PAD entries for SI and SC are shown as examples. These
            example configurations are similar to those in 3.3.4.1.<xref
            target="RFC4301"></xref></t>

            <t></t>

            <figure>
              <artwork>SI PAD:
- IF remote_identity = SI_identity
     Then authenticate (shared secret/certificate/)
     and authorize CHILD_SA for remote address SC_address

SC PAD:
- IF remote_identity = user_2
     Then authenticate (shared secret/certificate/EAP)
     and authorize CHILD_SAs for symbolic name "l2tp_spd_entry"</artwork>
            </figure>

            <t>The following describes the SPD entries for the SI and SC,
            respectively. In this example, the SI and SC are denoted with IPv6
            addresses IPv6-SI and IPv6-SC, respectively. Note that IKEv2 and
            ESP traffic MUST be allowed (bypass). These include IP protocol 50
            and UDP port 500 and 4500.</t>

            <t>The IPv6 packet format of ESP protecting L2TPv2 carrying IPv4
            packet is shown in Table 2 by using similar one in <xref
            target="RFC4891"></xref>.</t>

            <t></t>

            <figure>
              <artwork>
+----------------------------+------------------------------------+
| Components (first to last) |              Contains              |
+----------------------------+------------------------------------+
|         IPv6 header        |   (src = IPv6-SI, dst = IPv6-SC)   |
|         ESP header         |                                    |
|         UDP header         |   (src port=1701, dst port=1701)   |
|         L2TPv2 header      |                                    |
|         PPP header         |                                    |
|         IPv4 header        |                                    |
|         (payload)          |                                    |
|         ESP ICV            |                                    |
+----------------------------+------------------------------------+

 Table 2: Packet Format for L2TPv2 with ESP carrying IPv4 packet.</artwork>
            </figure>

            <t></t>

            <figure>
              <artwork>SPD for Softwire Initiator:

Softwire Initiator SPD-S
- IF local_address=IPv6-SI
     remote_address=IPv6-SC
     Next Layer Protocol=UDP
     local_port=1701
     remote_port=ANY (PFP=1)
 Then use SA ESP transport mode
 Initiate using IDi = user_2 to address IPv6-SC</artwork>
            </figure>

            <t></t>

            <figure>
              <artwork>SPD for Softwire Concentrator:

Softwire Concentrator SPD-S
- IF name="l2tp_spd_entry"
     local_address=IPv6-SC
     remote_address=ANY (PFP=1)
     Next Layer Protocol=UDP
     local_port=1701
     remote_port=ANY (PFP=1)
 Then use SA ESP transport mode</artwork>
            </figure>
          </section>
        </section>
      </section>
    </section>

    <section anchor="mesh" title="Mesh Security Guidelines">
      <section title="Deployment Scenario">
        <t>In the softwire “Mesh" solution<xref target="RFC4925"></xref>,
        <xref target="RFC5565"></xref>, it is required to establish
        connectivity to access network islands of one address family type
        across a transit core of a differing address family type. To provide
        reachability across the transit core, AFBRs are installed between
        access network island and transit core network. These AFBRs can
        perform as Provider Edge routers (PE) within an autonomous system or
        perform peering across autonomous systems. The AFBRs establish and
        encapsulate softwires in a mesh to the other islands across the
        transit core network. The transit core network consists of one or more
        service providers.</t>

        <t>In the softwire “Mesh" solution, a pair of PE routers (AFBRs) use
        BGP to exchange routing information. AFBR nodes in the transit network
        are Internal BGP speakers and will peer with each other directly or
        via a route reflector to exchange SW-encap sets, perform softwire
        signaling, and advertise AF access island reachability information and
        SW-NHOP information. If such information is advertised within an
        autonomous system, the AFBR node receiving them from other AFBRs does
        not forward them to other AFBR nodes. To exchange the information
        among AFBRs, the full mesh connectivity will be established.</t>

        <t>The connectivity between CE and PE routers includes dedicated
        physical circuits, logical circuits (such as Frame Relay and ATM), and
        shared medium access (such as Ethernet-based access).</t>

        <t>When AFBRs are PE routers located at the edge of the provider core
        networks, this is similar architecture of the L3VPN described in <xref
        target="RFC4364"></xref>. The connectivity between a CE router in
        access island network and a PE router in transit network is
        established by static way. The access islands are enterprise networks
        accommodated through PE routers in the provider's transit network. In
        this case, the access island networks are administrated by the
        provider's autonomous system.</t>

        <t>The AFBRs may have the multiple connections to the core network,
        and also may have the connections to the multiple client access
        networks. The client access networks may connect each other through
        private networks or through the Internet. When the client access
        networks have their own AS number, a CE router located inside access
        islands forms a private BGP peering with an AFBR. Further, an AFBR may
        need to exchange a full Internet routing information with each network
        to which it connects.</t>
      </section>

      <section title="Trust Relationship">
        <t>All AFBR nodes in the transit core MUST have a trust relationship
        or an agreement with each other to establish softwires. When the
        transit core consists of a single administrative domain, it is assumed
        that all nodes (e.g. AFBR, PE or Route Reflector, if applicable) are
        trusted with each other.</t>

        <t>If the transit core consists of multiple administrative domains,
        intermediate routers between AFBRs may not be trusted.</t>

        <t>There MUST be a trust relationship between the PE in the transit
        core and the CE in the corresponding island, although the link(s)
        between the PE and the CE may not be protected.</t>
      </section>

      <section title="Softwire Security Threat Scenarios">
        <t>As the architecture of softwire mesh solution is very similar to
        that of the provider provisioned VPN (PPVPN). The security threats
        considerations on the PPVPN operation are applicable to those in the
        softwire mesh solution <xref target="RFC4111"></xref>.</t>

        <t>Examples of attacks to data packets being transmitted on a softwire
        tunnel include:<list style="numbers">
            <t>An adversary may try to discover confidential information by
            sniffing softwire packets.</t>

            <t>An adversary may try to modify the contents of softwire
            packets.</t>

            <t>An adversary may try to spoof the softwire packets that do not
            belong the authorized domains and to insert copies of
            once-legitimate packets that have been recorded and replayed.</t>

            <t>An adversary can launch Denial-of-Service (DoS) attack by
            deleting softwire data traffic. DoS attacks of the resource
            exhaustion type can be mounted against the data plane by spoofing
            a large amount of non-authenticated data into the softwire from
            the outside of the softwire tunnel.</t>

            <t>An adversary may try to sniff softwire packets and to examine
            aspects or meta-aspects of them that may be visible even when the
            packets themselves are encrypted. An attacker might gain useful
            information based on the amount and timing of traffic, packet
            sizes, sources and destination addresses, etc.</t>
          </list></t>

        <t>The security attacks can be mounted on the control plane as well.
        In softwire mesh solution, softwires encapsulation will be set up by
        using BGP. As described in <xref target="RFC4272"></xref>, BGP is
        vulnerable to various security threats such as confidential violation,
        replay attacks, insertion, deletion and modification of BGP messages,
        main-in-the-middle, and denial-of-service.</t>
      </section>

      <section title="Applicability of Security Protection Mechanism">
        <t>Given that security is generally a compromise between expense and
        risk, it is also useful to consider the likelihood of different
        attacks. There is at least a perceived difference in the likelihood of
        most types of attacks being successfully mounted in different
        deployment.</t>

        <t>The trust relationship among users in access networks, transit core
        provider, and other parts of networks described in section 4.2 is a
        key element in determining the applicability of security protection
        mechanism for the specific softwire mesh deployment.</t>

        <section title="Security Protection Mechanism for Control Plane"></section>

        <t>The Softwire Problem Statement <xref target="RFC4925"></xref>
        states that the softwire mesh setup mechanism to advertise the
        softwire encapsulation MUST support authentication, but the transit
        core provider may decide to turn it off in some circumstances.</t>

        <t>The BGP authentication mechanism is specified in <xref
        target="RFC2385"></xref>. The mechanism defined in <xref
        target="RFC2385"></xref> is based on a one-way hash function (MD5) and
        use of a secret key. The key is shared between a pair of peer routers
        and is used to generate 16-byte message authentication code values
        that are not readily computed by an attacker who does not have access
        to the key.</t>

        <t>However the security mechanism for BGP transport (e.g. TCP-MD5) is
        inadequate in some circumstances and also requires operator
        interaction to maintain a respectable level of security. The current
        deployments of TCP-MD5 exhibit some shortcomings with respect of key
        management as described in <xref target="RFC3562"></xref>.</t>

        <t>Key management can be especially cumbersome for operators. The
        number of keys required and the maintenance of keys (issue/revoke/
        renew) has had an additive effect as a barrier to deployment. Thus
        automated means of managing keys, to reduce operational burdens, is
        available in BGP security system <xref
        target="I-D.ietf-rpsec-bgpsecrec"></xref>, <xref
        target="RFC4107"></xref>.</t>

        <t>Use of IPsec counters the message insertion, deletion, and
        modification attacks, as well as man-in-the-middle attacks by
        outsiders. If routing data confidentiality is desired, the use of
        IPsec ESP could provide that service. If eavesdropping attack is
        identified as a threat, ESP can be used to provide confidentiality
        (encryption), integrity and authentication for the BGP session.</t>

        <section title="Security Protection Mechanism for Data Plane"></section>

        <t>To transport data packets across the transit core, the mesh
        solution defines multiple encapsulations: L2TPv3, IP-in-IP, MPLS
        (LDP-based and RSVP-TE based), and GRE. To securely transport such
        data packet, the softwire MUST support IPsec tunnel.</t>

        <t>IPsec can provide authentication and integrity. The implementation
        MUST support ESP with null encryption <xref target="RFC4303"></xref>
        or else AH (IP Authentication Header) <xref target="RFC4302"></xref>.
        If some part of the transit core network is not trusted, ESP with
        encryption MAY be applied.</t>

        <t>Since the softwires are created dynamically by BGP, the automated
        key distribution MUST be performed by IKEv2 <xref
        target="RFC4306"></xref> with either pre-shared key or public key
        management. For the dynamic softwire IPsec tunnel creation, pre-shared
        key will be same in all routers. Namely pre-shared key indicates here
        group key instead of pairwise shared key.</t>

        <t>If security policy requires a stronger key management, the public
        key SHOULD be used. If a public key infrastructure is not available,
        the IPsec Tunnel Authentication sub-TLV specified in <xref
        target="RFC5566"></xref> MUST be used before SA is established.</t>

        <t>If the link(s) between the user's site and the provider's PE is not
        trusted, then encryption MAY be used on the PE-CE link(s).</t>

        <t>Together with the cryptographic security protection, the access
        control technique reduces the exposure to attacks from outside the
        service provider networks (transit networks). The access control
        technique includes packet-by-packet or packet flow-by-packet flow
        access control by means of filters as well as by means of admitting a
        session for a control/signaling/management protocol that is being used
        to implement softwire mesh.</t>

        <t>The access control technique is an important protection against
        security attacks of DoS etc. and a necessary adjunct to cryptographic
        strength in encapsulation. Packets that match the criteria associated
        with a particular filter may be either discarded or given special
        treatment to prevent an attack or to mitigate the effect of a possible
        future attack.</t>
      </section>
    </section>

    <section title="Security Considerations">
      <t>This document discusses various security threats for the softwire
      control and data packets in “Hubs and Spokes" and “Mesh" time-to-market
      solutions. With these discussions, the softwire security protocol
      implementations are provided referencing to Softwire Problem Statement
      <xref target="RFC4925"></xref>, Securing L2TP using IPsec <xref
      target="RFC3193"></xref>, Security Framework for PPVPNs <xref
      target="RFC4111"></xref>, and Guidelines for Mandating the Use of IPsec
      <xref target="RFC5406"></xref>. The guidelines for the security protocol
      employment are also given considering the specific deployment
      context.</t>

      <t>Note that this document discusses the softwire tunnel security
      protection and does not address the end-to-end protection.</t>
    </section>

    <section title="IANA Considerations">
      <t>This document creates no new requirements on IANA namespaces <xref
      target="RFC5226"></xref>.</t>
    </section>

    <section title="Acknowledgments">
      <t>The authors would like to thank Tero Kivinen for reviewing the
      document and Francis Dupont for substantive suggestions. Acknowledgments
      to Jordi Palet Martinez, Shin Miyakawa, Yasuhiro Shirasaki, and Bruno
      Stevant for their feedback.</t>

      <t>We would like also to thank the authors of Softwire Hub &amp; Spoke
      Deployment Framework document for providing the text concerning
      security.</t>
    </section>
  </middle>

  <back>
    <references title="Normative References">
      <?rfc include="reference.RFC.1994" ?>

      <?rfc include="reference.RFC.2119" ?>

      <?rfc include="reference.RFC.2385" ?>

      <?rfc include="reference.RFC.2661" ?>

      <?rfc include="reference.RFC.3193" ?>

      <?rfc include="reference.RFC.3947" ?>

      <?rfc include="reference.RFC.3948" ?>

      <?rfc include="reference.RFC.4107" ?>

      <?rfc include="reference.RFC.4301" ?>

      <?rfc include="reference.RFC.4302" ?>

      <?rfc include="reference.RFC.4303" ?>

      <?rfc include="reference.RFC.4306" ?>

      <?rfc include="reference.RFC.5226" ?>
    </references>

    <references title="Informative References">
      <?rfc include="reference.I-D.draft-ietf-softwire-hs-framework-l2tpv2-12" ?>

      <?rfc include="reference.I-D.draft-ietf-rpsec-bgpsecrec-10" ?>

      <?rfc include="reference.RFC.2401" ?>

      <?rfc include="reference.RFC.2409" ?>

      <?rfc include="reference.RFC.2607" ?>

      <?rfc include="reference.RFC.3562" ?>

      <?rfc include="reference.RFC.4016" ?>

      <?rfc include="reference.RFC.4081" ?>

      <?rfc include="reference.RFC.4111" ?>

      <?rfc include="reference.RFC.4213" ?>

      <?rfc include="reference.RFC.4225" ?>

      <?rfc include="reference.RFC.4272" ?>

      <?rfc include="reference.RFC.4364" ?>

      <?rfc include="reference.RFC.4593" ?>

      <?rfc include="reference.RFC.4891" ?>

      <?rfc include="reference.RFC.4925" ?>

      <?rfc include="reference.RFC.5216" ?>

      <?rfc include="reference.RFC.5406" ?>

      <?rfc include="reference.RFC.5565" ?>

      <?rfc include="reference.RFC.5566" ?>
    </references>

    <section title="">
      <t>If the old IPsec architecture <xref target="RFC2401"></xref> and IKE
      <xref target="RFC2409"></xref> are used, the SPD examples in <xref
      target="RFC3193"></xref> is applicable to "Hub &amp; Spokes" model. In
      this model, the initiator is always the client (SI) and the responder is
      the SC.</t>

      <section title="IPv6 over IPv4 Softwire with L2TPv2 example for IKE">
        <t>IPv4 addresses of the softwire initiator and concentrator are
        denoted by IPv4-SI and IPv4-SC, respectively. If NAT traversal is used
        in IKE, UDP source and destination ports are 4500. In this SPD entry,
        IKE refers to UDP port 500. * denotes wildcard and indicates ANY port
        or address.</t>

        <t><figure title="Softwire initiator SPD">
            <artwork>

   Local     Remote     Protocol                  Action
   -----     ------     --------                  ------
   IPV4-SI   IPV4-SC      ESP                     BYPASS
   IPV4-SI   IPV4-SC      IKE                     BYPASS
   IPv4-SI   IPV4-SC      UDP, src 1701, dst 1701 PROTECT(ESP,
                                                  transport)
   IPv4-SC   IPv4-SI      UDP, src   * , dst 1701 PROTECT(ESP,
                                                  transport)

           </artwork>
          </figure></t>

        <t><figure title="Softwire concentrator SPD">
            <artwork>

    Remote   Local      Protocol                  Action
    ------   ------     --------                  ------
      *      IPV4-SC      ESP                     BYPASS
      *      IPV4-SC      IKE                     BYPASS
      *      IPV4-SC      UDP, src * , dst 1701   PROTECT(ESP,
                                                  transport)

           </artwork>
          </figure></t>
      </section>

      <section title="IPv4 over IPv6 Softwire with example for IKE">
        <t>IPv6 addresses of the softwire initiator and concentrator are
        denoted by IPv6-SI and IPv6-SC, respectively. If NAT traversal is used
        in IKE, UDP source and destination ports are 4500. In this SPD entry,
        IKE refers to UDP port 500. * denotes wildcard and indicates ANY port
        or address.</t>

        <t><figure title="Softwire initiator SPD">
            <artwork>

   Local     Remote     Protocol                   Action
   -----     ------     --------                   ------
   IPV6-SI   IPV6-SC      ESP                      BYPASS
   IPV6-SI   IPV6-SC      IKE                      BYPASS
   IPv6-SI   IPV6-SC      UDP, src 1701, dst 1701  PROTECT(ESP,
                                                   transport)
   IPv6-SC   IPv6-SI      UDP, src * , dst 1701    PROTECT(ESP,
                                                   transport)

           </artwork>
          </figure></t>

        <t><figure title="Softwire concentrator SPD">
            <artwork>

    Remote   Local      Protocol                   Action
    ------   ------     --------                   ------
      *      IPV6-SC      ESP                      BYPASS
      *      IPV6-SC      IKE                      BYPASS
      *      IPV6-SC      UDP, src * , dst 1701    PROTECT(ESP,
                                                   transport)

           </artwork>
          </figure></t>
      </section>
    </section>
  </back>
</rfc>