home *** CD-ROM | disk | FTP | other *** search
Text File | 1999-10-14 | 53.3 KB | 1,347 lines |
-
-
-
-
-
-
- Network Working Group G. Montenegro
- Request for Comments: 2356 V. Gupta
- Category: Informational Sun Microsystems, Inc.
- June 1998
-
-
- Sun's SKIP Firewall Traversal for Mobile IP
-
- Status of This Memo
-
- This memo provides information for the Internet community. This memo
- does not specify an Internet standard of any kind. Distribution of
- this memo is unlimited.
-
- Copyright Notice
-
- Copyright (C) The Internet Society (1998). All Rights Reserved.
-
- Abstract
-
- The Mobile IP specification establishes the mechanisms that enable a
- mobile host to maintain and use the same IP address as it changes its
- point of attachment to the network. Mobility implies higher security
- risks than static operation, because the traffic may at times take
- unforeseen network paths with unknown or unpredictable security
- characteristics. The Mobile IP specification makes no provisions for
- securing data traffic. The mechanisms described in this document
- allow a mobile node out on a public sector of the internet to
- negotiate access past a SKIP firewall, and construct a secure channel
- into its home network.
-
- In addition to securing traffic, our mechanisms allow a mobile node
- to roam into regions that (1) impose ingress filtering, and (2) use a
- different address space.
-
- Table of Contents
-
- 1. Introduction ............................................... 2
- 2. Mobility without a Firewall ................................ 4
- 3. Restrictions imposed by a Firewall ......................... 4
- 4. Two Firewall Options: Application relay and IP Security .... 5
- 4.1 SOCKS version 5 [4] ....................................... 5
- 4.2 SKIP [3] .................................................. 6
- 5. Agents and Mobile Node Configurations ...................... 8
- 6. Supporting Mobile IP: Secure Channel Configurations ........ 9
- 6.1 I: Encryption only Outside of Private Network ............. 9
- 6.2 II: End-to-End Encryption ................................. 10
- 6.3 III: End-to-End Encryption, Intermediate Authentication ... 10
-
-
-
- Montenegro & Gupta Informational [Page 1]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- 6.4 IV: Encryption Inside and Outside ......................... 10
- 6.5 Choosing a Secure Channel Configuration ................... 11
- 7. Mobile IP Registration Procedure with a SKIP Firewall ...... 11
- 7.1. Registration Request through the Firewall ................ 12
- 7.1.1. On the Outside (Public) Network ........................ 13
- 7.1.2. On the Inside (Private) Network ........................ 14
- 7.2. Registration Reply through the Firewall .................. 14
- 7.2.1. On the Inside (Private) Network ........................ 15
- 7.2.2. On the Outside (Public) Network ........................ 15
- 7.3. Traversal Extension ...................................... 16
- 8. Data Transfer .............................................. 18
- 8.1. Data Packet From the Mobile Node to a Correspondent Node . 18
- 8.2. Data Packet From a Correspondent Node to the Mobile Node . 19
- 8.2.1 Within the Inside (Private) Network ..................... 20
- 8.2.2. On the Outside (Public) Network ........................ 21
- 9. Security Considerations .................................... 21
- Acknowledgements .............................................. 22
- References .................................................... 22
- Authors' Addresses ............................................ 23
- Full Copyright Statement ...................................... 24
-
- 1. Introduction
-
- This document specifies what support is required at the firewall, the
- Mobile IP [1] home agent and the Mobile IP mobile node to enable the
- latter to access a private network from the Internet. For example, a
- company employee could attach his/her laptop to some Internet access
- point by:
-
- a) Dialing into a PPP/SLIP account on an Internet service
- provider's network.
-
- b) Connecting into a 10Base-T or similar LAN network available
- at, for example, an IETF terminal room, a local university,
- or another company's premises.
-
- Notice that in these examples, the mobile node's relevant interface
- (PPP or 10Base-T) is configured with an IP address different from
- that which it uses "normally" (i.e. at the office). Furthermore, the
- IP address used is not necessarily a fixed assignment. It may be
- assigned temporarily and dynamically at the beginning of the session
- (e.g. by IPCP in the PPP case, or DHCP in the 10Base-T case).
-
- The following discussion assumes a network configuration consisting
- of a private network separated by a firewall from the general
- Internet or public network. The systems involved are:
-
-
-
-
-
- Montenegro & Gupta Informational [Page 2]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- Private Network
-
- A protected network separated from the Internet by hosts
- enforcing access restrictions (firewalls). A private network
- may use a private address space, and its addresses may not
- even be routable by the general internet.
-
- Public Network
-
- The Internet at large. Hosts are able to communicate with each
- other throughout the public network without firewall-imposed
- restrictions.
-
- Mobile Node (MN)
-
- Its permanent address falls within the range of the private
- network. The user removes the system from its home network,
- and connects it to the Internet at another point. The
- mechanisms outlined in this discussion render this mobility
- transparent: the mobile node continues accessing its home
- network and its resources exactly as if it were still within
- it. Notice that when the mobile node leaves its home
- network, it may migrate both within and outside of the
- private network's boundaries. As defined by Mobile IP [1], a
- mobile node uses a care-of address while roaming.
-
- Home Agent (HA) for the mobile node
-
- Serves as a location registry and router as described in the
- Mobile IP IETF draft.
-
- Foreign Agent (FA)
-
- Serves as a registration relayer and care of address for the
- mobile node as described in the Mobile IP IETF draft.
-
- Correspondent Node (CH)
-
- A system that is exchanging data packets with the mobile
- node.
-
- Firewall (FW)
-
- The system (or collection of systems) that enforces access
- control between the private network and the general Internet.
- It may do so by a combination of functions such as application
- gatewaying, packet filtering and cryptographic techniques.
-
-
-
-
- Montenegro & Gupta Informational [Page 3]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- The mechanisms described in this document allow a mobile node out on
- a public sector of the network to negotiate access past a SKIP
- firewall, and construct a secure channel into its home network. This
- enables it to communicate with correspondent nodes that belong to the
- private network, and, if bi-directional tunnels are used, with
- external hosts that are reachable when the mobile node is at home.
- The mobile node enjoys the same level of connectivity and privacy as
- it does when it is in its home network.
-
- This document does not address the scenario in which the mobile node
- attempts to access its private network, while within another private
- network.
-
- Sections 2 and 3 provide an overview of the environment being
- considered and the restrictions it imposes. Section 4 examines
- firewall technologies. Section 5 discusses the best mode of operation
- of the participating entities from the point of view of Mobile IP.
- Section 6 discusses possible configuration for the secure channel.
- Finally, packet formats are the topic of sections 7 and 8.
-
- 2. Mobility without a Firewall
-
- Suppose the mobile node is roaming throughout the general Internet,
- but its home network is not protected by a firewall. This is
- typically found in academic environment as opposed to corporate
- networks.
-
- This works as prescribed by Mobile IP [1]. The only proviso is that
- the mobile node would most probably operate with a co-located address
- instead of using a separate foreign agent's care-of address. This is
- because, at least in the near term, it is far more likely to be able
- to secure a temporary care-of-address than it is to find a foreign
- agent already deployed at the site you are visiting. For example:
-
- - Internet Service Provider: pre-assigns customers IP addresses,
- or assigns them out dynamically via PPP's address negotiation.
-
- - An IETF terminal room may pre-assign addresses for your use or
- offer DHCP services.
-
- - Other locations probably would offer DHCP services.
-
- 3. Restrictions imposed by a Firewall
-
- The firewall imposes restrictions on packets entering or leaving the
- private network. Packets are not allowed through unless they conform
- to a filtering specification, or unless there is a negotiation
- involving some sort of authentication.
-
-
-
- Montenegro & Gupta Informational [Page 4]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- Another restriction is imposed by the separation between private
- addresses and general Internet addresses. Strictly speaking, this is
- not imposed by a firewall, but by the characteristics of the private
- network. For example, if a packet destined to an internal address
- originates in the general Internet, it will probably not be
- delivered. It is not that the firewall drops it. Rather, the
- Internet's routing fabric is unable to process it. This elicits an
- ICMP host unreachable packet sent back to the originating node.
-
- Because of this, the firewall MUST be explicitly targeted as the
- destination node by outside packets seeking to enter the private
- network. The routing fabric in the general Internet will only see the
- public address of the firewall and route accordingly. Once the
- packet arrives at the firewall, the real packet destined to a private
- address is recovered.
-
- 4. Two Firewall Options: Application relay and IP Security
-
- Before delving into any details, lets examine two technologies which
- may provide firewall support for mobile nodes:
-
- - application relaying or proxying, or
-
- - IP Security.
-
- To understand the implications, let's examine two specific schemes to
- accomplish the above: SOCKS version 5 and SKIP.
-
- 4.1 SOCKS version 5 [4]
-
- There is an effort within the authenticated firewall traversal WG
- (aft) of the IETF to provide a common interface for application
- relays.
-
- The solution being proposed is a revised specification of the SOCKS
- protocol. Version 5 has been extended to include UDP services as
- well. The SOCKS solution requires that the mobile node -- or another
- node on its behalf -- establish a TCP session to exchange UDP traffic
- with the FW. It also has to use the SOCKS library to encapsulate the
- traffic meant for the FW. The steps required by a SOCKS solution are:
-
- - TCP connection established to port 1080 (1.5 round trips)
-
- - version identifier/method selection negotiation (1 round trip)
-
- - method-dependent negotiation. For example, the
- Username/Password Authentication [5] requires 1 round trip:
-
-
-
-
- Montenegro & Gupta Informational [Page 5]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- 1. client sends a Username/Password request
- 2. FW (server) responds
-
- The GSS-API negotiation requires at least 3 round trips:
-
- 1. client context establishment (at least 1 round trip)
- 2. client initial token/server reply (1 round trip)
- 3. message protection subnegotiation (at least 1 round trip)
-
- - (finally) SOCKS request/reply (1 round trip)
-
- This is a minimum of 4 (6 with GSS-API) round-trips before the client
- is able to pass data through the FW using the following header:
-
- +----+------+------+----------+----------+----------+
- |RSV | FRAG | ATYP | DST.ADDR | DST.PORT | DATA |
- +----+------+------+----------+----------+----------+
- | 2 | 1 | 1 | Variable | 2 | Variable |
- +----+------+------+----------+----------+----------+
-
- Bear in mind that the above must be done each time the mobile
- registers a new care-of address. In addition to this inefficiency,
- this scheme requires that we use UDP to encapsulate IP datagrams.
- There is at least one commercial network that does this, but it is
- not the best solution.
-
- Furthermore, SOCKS defines how to establish authenticated
- connections, but currently it does not provide a clear solution to
- the problem of encrypting the traffic.
-
- This header contains the relay information needed by all parties
- involved to reach those not directly reachable.
-
- 4.2 SKIP [3]
-
- Alternatively, traffic from the mobile node to the firewall could be
- encrypted and authenticated using a session-less IP security
- mechanism like SKIP. This obviates the need to set up a session just
- to exchange UDP traffic with the firewall.
-
- A solution based on SKIP is very attractive in this scenario, as no
- round trip times are incurred before the mobile node and the firewall
- achieve mutual trust: the firewall can start relaying packets for the
- mobile node as soon as it receives the first one. This, of course,
- implies that SKIP is being used with AH [7] so that authentication
- information is contained in each packet. Encryption by using ESP [6]
- is also assumed in this scenario, since the Internet at large is
- considered a hostile environment. An ESP transform that provides
-
-
-
- Montenegro & Gupta Informational [Page 6]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- both authentication and encryption could be used, in which case the
- AH header need not be included.
-
- The firewall and the mobile node may be previously configured with
- each other's authenticated Diffie-Hellman public components (also
- known as public values). Alternatively, they could exchange them in
- real-time using any of the mechanisms defined by the SKIP protocol
- (on-line certificate directory service or certificate discovery
- protocol). Home agents and the firewall also MUST have, be able to
- exchange or obtain each other's public components.
-
- There are other proposals besides SKIP to achieve IP layer security.
- However, they are session-oriented key management solutions, and
- typically imply negotiations spanning several round-trip times before
- cryptographically secure communications are possible. In this
- respect they raise similar concerns to those outlined previously in
- the discussion on SOCKS-based solutions. Others have arrived at
- similar conclusions regarding the importance of session-less key
- management for Mobile IP applications [8].
-
- Another advantage of SKIP is its support for nomadic applications.
- Typically, two hosts communicating via a secure IP layer channel use
- the IP source and destination addresses on incoming packets to arrive
- at the appropriate security association. The SKIP header can easily
- supersede this default mechanism by including the key ID the
- recipient must use to obtain the right certificate.
-
- The key id is specified by two fields in the SKIP header:
-
- 1) a name space identifier (NSID) to indicate which of the
- possible name spaces is being used, and,
-
- 2) a master key identifier (MKID) that uniquely indicates (within
- the given name space) an id to use in fetching the proper
- certificate.
-
- As an example, by setting NSID to 1 and MKID to its home address, a
- mobile node tells a receiver "ignore the IP source and use my home
- address instead to look up my public component". Similarly, setting
- NSID to 8 enables using Unsigned Diffie-Hellman (UDH) certificates.
-
- In this case, the MKID is set to the MD5 hash of the DH public
- component [10].
-
- In addition to the NSID/MKID feature, Mobile IP is best supported by
- an appropriate policy at the SKIP firewall in the form of a "nomadic"
- access control list entry. This is an entry which is filtered by key
- ID, instead of by IP source address, as is the usual case. It
-
-
-
- Montenegro & Gupta Informational [Page 7]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- translates to "allow access from any IP source address for a given
- NSID/MKID combination". Furthermore, incoming packets MUST have an
- AH header, so that after properly authenticating them, the firewall
- establishes a "current address" or "dynamic binding" for the nomadic
- host. The NSID/MKID combination determines which key should be used
- with the nomadic host [9].
-
- Notice that this supports Mobile IP, because the mobile node always
- initiates contact. Hence, the SKIP firewall has a chance to learn the
- mobile node's "current address" from an incoming packet before it
- attempts to encrypt an outgoing packet.
-
- However, this precludes the use of simultaneous bindings by a mobile
- node. At the firewall, the last Registration Request sent by the
- mobile node replaces the association between its permanent address
- and any prior care-of address. In order to support simultaneous
- bindings the firewall must be able to interpret Mobile IP
- registration messages.
-
- Section 7.2.2 discusses another advantage of making the firewall
- understand Mobile IP packet formats.
-
- In what follows we assume a SKIP-based solution.
-
- 5. Agents and Mobile Node Configurations
-
- Depending on which address it uses as its tunnel endpoint, the Mobile
- IP protocol specifies two ways in which a mobile node can register a
- mobility binding with its home agent.
-
- a) an address advertised for that purpose by the foreign agent
-
- b) an address belonging to one of the mobile node's interfaces
- (i.e. operation with a co-located address).
-
- From the firewall's point of view, the main difference between these
- two cases hinges on which node prepares the outermost encrypting
- encapsulation. The firewall MUST be able to obtain the Diffie-
- Hellman public component of the node that creates the outermost SKIP
- header in an incoming packet. This is only possible to guarantee in
- case "b", because the mobile node and the firewall both belong to the
- same administrative domain. The problem is even more apparent when
- the mobile node attempts a Registration Request. Here, the foreign
- agent is not just a relayer, it actually examines the packet sent by
- the mobile node, and modifies its agent services accordingly. In
- short, assuming the current specification of Mobile IP and the
- current lack of trust in the internet at large, only case "b" is
- possible. Case "a" would require an extension (e.g. a "relay"
-
-
-
- Montenegro & Gupta Informational [Page 8]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- Registration Request), and modifying code at the home agent, the
- firewall and the foreign agent.
-
- Assuming that the firewall offers a secure relay service (i.e.
- decapsulation and forwarding of packets), the mobile node can reach
- addresses internal to the private network by encapsulating the
- packets in a SKIP header and directing them to the firewall.
-
- Therefore, It is simplest to assume that the mobile node operates
- with a co-located address.
-
- 6. Supporting Mobile IP: Secure Channel Configurations
-
- The mobile node participates in two different types of traffic:
- Mobile IP registration protocol and data. For the sake of simplicity,
- the following discussion evaluates different secure channel
- configurations by examining the initial Registration Request sent by
- the mobile node to its home agent.
-
- Assuming the mobile node operates with a co-located address, it can
- communicate directly with the firewall. The latter is able to reach
- the home agent in the private network. Also, the firewall MUST be
- able to authenticate the mobile node.
-
- The following channel configurations assume the mobile node operates
- with a co-located address. The region between the HA (home agent) and
- the FW (firewall) is a private network. The region between the FW and
- the MN (mobile node) is the outside or public network.
-
- 6.1 I: Encryption only Outside of Private Network
-
-
- HA FW MN
- <=====================> SKIP (AH + ESP)
- <-----------------------------------> Registration Request path
-
- The traffic is only encrypted between the mobile node out on the
- general Internet, and the firewall's external interface. This is
- minimum required. It is the most desirable configuration as the more
- expensive encrypted channel is only used where it is necessary: on
- the public network.
-
-
-
-
-
-
-
-
-
-
- Montenegro & Gupta Informational [Page 9]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- 6.2 II: End-to-End Encryption
-
- Another possible configuration extends the encrypted tunnel through
- the firewall:
-
- HA FW MN
- <===================================> SKIP (AH + ESP)
- <-----------------------------------> Registration Request path
-
- This limits the firewall to perform a simple packet relay or
- gatewaying function. Even though this could be accomplished by using
- the proper destination NSID in the packet, in practice it is probably
- unrealizable. The reason is that this alternative is probably not
- very popular with computer security personnel, because authentication
- is not carried out by the firewall but by the home agent, and the
- latter's security is potentially much weaker than the former's.
-
- 6.3 III: End-to-End Encryption, Intermediate Authentication
-
- A third alternative is to allow the firewall to be party to the
- security association between the home agent and the mobile node.
- After verifying authentication (AH header), the firewall forwards the
- encrypted packet (ESP hdr) to the home agent.
-
- HA FW MN
- <+++++++++++++++++++++> SKIP authentication
- <===================================> SKIP encryption
- <-----------------------------------> Registration Request path
-
- Here, SKIP is used to provide intermediate authentication with end-
- to-end security. Although possible, this option implies that the
- participating entities disclose their pairwise long-term Diffie-
- Hellman shared secret to the intermediate node.
-
- Whereas Option 2 above is probably not agreeable to security and
- system administration personnel, option 3 is unsavory to the end
- user.
-
- 6.4 IV: Encryption Inside and Outside
-
- HA FW MN
- <============><=====================> SKIP (AH + ESP)
- <-----------------------------------> Registration Request path
-
- Traffic is encrypted on the public as well as on the private network.
- On the public network, encryption is dictated by a security
- association between the mobile node and the firewall. On the private
- network, it is dictated by a security association between the home
-
-
-
- Montenegro & Gupta Informational [Page 10]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- agent and the firewall.
-
- 6.5 Choosing a Secure Channel Configuration
-
- A potential problem in both options 2 and 3 is that their end-to-end
- channel components assume that the mobile node and the home agent can
- exchange IP traffic directly with each other. This is generally not
- the case, as the Internet routing fabric may not have routes to
- addresses that belong to private networks, and the private routing
- fabric may ignore how to route to public addresses -- or doing so may
- be administratively restricted. Therefore, it is necessary for
- packets to be addressed directly to the firewall, and indirectly --
- via some tunneling or relaying capability -- to the real destination
- on the other side of the firewall.
-
- Options 1 and 4 are essentially equivalent. The latter may be
- considered overkill, because it uses encryption even within the
- private network, and this is generally not necessary. What is
- necessary even within the private network is for the home agent to
- add an encapsulation (not necessarily encrypted) so as to direct
- datagrams to the mobile node via the firewall. The type of
- encapsulation used determines the difference between options 1 and 4.
- Whereas option 4 uses SKIP, option 1 uses a cleartext encapsulation
- mechanism. This is obtainable by, for example, using IP in IP
- encapsulation [2].
-
- Options 1 and 4 are mostly interchangeable. The difference is, of
- course, that the former does not protect the data from eavesdroppers
- within the private network itself. This may be unacceptable in
- certain cases. Traffic from some departments in a company (for
- example payroll or legal) may need to be encrypted as it traverses
- other sections of the company.
-
- In the interest of being conservative, in what follows we assume
- option 4 (i.e. traffic is encrypted on the general Internet, as well
- as within the private network.
-
- Since the firewall is party to the security associations governing
- encryption on both the public and private networks, it is always able
- to inspect the traffic being exchanged by the home agent and the
- mobile node. If this is of any concern, the home agent and mobile
- node could set up a bi-directional tunnel and encrypt it.
-
- 7. Mobile IP Registration Procedure with a SKIP Firewall
-
- When roaming within a private network, a mobile node sends
- Registration Requests directly to its home agent. On the public
- Internet, it MUST encapsulate the original Registration Request in a
-
-
-
- Montenegro & Gupta Informational [Page 11]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- SKIP packet destined to the firewall. The mobile node MUST
- distinguish between "inside" and "outside" addresses. This could be
- accomplished by a set of rules defining the address ranges.
- Nevertheless, actual installations may present serious difficulties
- in defining exactly what is a private address and what is not.
-
- Direct human input is a very effective method: it may be obvious to
- the user that the current point of attachment is outside its private
- network, and it should be possible to communicate this knowledge to
- the mobile node software.
-
- The home agent must also distinguish between "inside" and "outside"
- addresses, but lacks the potential benefit of direct user input.
- Accordingly, it should be possible for the mobile node to communicate
- that knowledge to the home agent. To accomplish this we define a
- Traversal Extension to the Registration Requests and Replies. This
- extension is also useful when traversing multiple firewalls.
-
- In spite of the above mechanisms, errors in judgement are to be
- expected. Accordingly, the firewall SHOULD be configured such that
- it will still perform its relaying duties even if they are
- unnecessarily required by a mobile node with an inside care-of
- address.
-
- Upon arriving at a foreign net and acquiring a care-of address, the
- mobile node must first -- before any data transfer is possible --
- initiate a registration procedure. This consists of an authenticated
- exchange by which the mobile node informs its home agent of its
- current whereabouts (i.e. its current care-of address), and receives
- an acknowledgement. This first step of the protocol is very
- convenient, because the SKIP firewall can use it to dynamically
- configure its packet filter.
-
- The remainder of this section shows the packet formats used. Section
- 7.1 discusses how a mobile node sends a Registration Request to its
- home agent via the SKIP firewall. Section 7.2 discusses how the home
- agent send the corresponding Registration Reply to the mobile node.
- Section 7.3 defines the Traversal Extension for use with Registration
- Requests and Replies.
-
- 7.1. Registration Request through the Firewall
-
- The mobile node arrives at a foreign net, and using mechanisms
- defined by Mobile IP, discovers it has moved away from home. It
- acquires a local address at the foreign site, and composes a
- Registration Request meant for its home agent. The mobile node must
- decide whether this packet needs to be processed by SKIP or not.
-
-
-
-
- Montenegro & Gupta Informational [Page 12]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- This is not a simple rule triggered by a given destination address.
- It must be applied whenever the following conditions are met:
-
- a) the mobile node is using a care-of address that does not
- belong to the private network (i.e. the mobile node is
- currently "outside" its private network), and
-
- b) either of:
-
- b1) the source address of the packet is the mobile node's
- home address (e.g. this packet's endpoints are
- dictated by a connection initiated while at home), or
-
- b2) the source address of the packet is the care-of
- address and the destination address belongs to the
- private network
-
- Since the above conditions are mobility related, it is best for the
- Mobile IP function in the node to evaluate them, and then request the
- appropriate security services from SKIP.
-
- 7.1.1. On the Outside (Public) Network
-
- The SKIP module must use the firewall destination address and the
- firewall's certificate in order to address and encrypt the packet.
- It encrypts it using SKIP combined with the ESP [6] protocol and
- possibly the AH [7] protocol.
-
- The SKIP header's source NSID equals 1, indicating that the Master
- Key-ID is the mobile node's home address. Notice that the IP packet's
- source address corresponds to the care-of address -- an address whose
- corresponding public component is unknown to the firewall.
-
- It is also possible to use Unsigned Diffie-Hellman public components
- [10]. Doing so greatly reduces SKIP's infrastructure requirements,
- because there is no need for a Certificate Authority. Of course, for
- this to be possible the principals' names MUST be securely
- communicated.
-
- REGISTRATION REQUEST: BETWEEN THE MOBILE NODE AND THE FIREWALL
- +---------------+----------+----+-----+--------------+--------------+
- | IP Hdr (SKIP) | SKIP Hdr | AH | ESP | Inner IP Hdr | Reg. Request |
- +---------------+----------+----+-----+--------------+--------------+
-
- IP Hdr (SKIP):
- Source mobile node's care-of address
- Destination firewall's public (outside) address
-
-
-
-
- Montenegro & Gupta Informational [Page 13]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- SKIP Hdr:
- Source NSID = 1
- Master Key-ID = IPv4 address of the mobile node
- Destination NSID = 0
- Master Key-ID = none
- Inner IP Hdr:
- Source mobile node's care-of address
- Destination home agent's address
-
- 7.1.2. On the Inside (Private) Network
-
- The SKIP Firewall's dynamic packet filtering uses this information to
- establish a dynamic binding between the care-of address and the
- mobile node's permanent home address.
-
- The destination NSID field in the above packet is zero, prompting the
- firewall to process the SKIP header and recover the internal packet.
- It then delivers the original packet to another outbound interface,
- because it is addressed to the home agent (an address within the
- private network). Assuming secure channel configuration number 4, the
- firewall encrypts the packet using SKIP before forwarding to the home
- agent.
-
- REGISTRATION REQUEST: BETWEEN THE FIREWALL AND THE HOME AGENT
- +---------------+----------+----+-----+--------------+--------------+
- | IP Hdr (SKIP) | SKIP Hdr | AH | ESP | Inner IP Hdr | Reg. Request |
- +---------------+----------+----+-----+--------------+--------------+
-
- IP Hdr (SKIP):
- Source firewall's private (inside) address
- Destination home agent's address
-
- SKIP Hdr:
- Source NSID = 0
- Master Key-ID = none
- Destination NSID = 0
- Master Key-ID = none
- Inner IP Hdr:
- Source mobile node's care-of address
- Destination home agent's address
-
- 7.2. Registration Reply through the Firewall
-
- The home agent processes the Registration Request, and composes a
- Registration Reply. Before responding, it examines the care-of
- address reported by the mobile node, and determines whether or not it
- corresponds to an outside address. If so, the home agent needs to
- send all traffic back through the firewall. The home agent can
-
-
-
- Montenegro & Gupta Informational [Page 14]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- accomplish this by encapsulating the original Registration Reply in a
- SKIP packet destined to the firewall (i.e. we assume secure channel
- configuration number 4).
-
- 7.2.1. On the Inside (Private) Network
-
- The packet from the home agent to the mobile node via the SKIP
- Firewall has the same format as shown above. The relevant fields are:
-
- REGISTRATION REPLY: BETWEEN THE HOME AGENT AND THE FIREWALL
- +---------------+----------+----+-----+--------------+------------+
- | IP Hdr (SKIP) | SKIP Hdr | AH | ESP | Inner IP Hdr | Reg. Reply |
- +---------------+----------+----+-----+--------------+------------+
-
- IP Hdr (SKIP):
- Source home agent's address
- Destination firewall's private (inside) address
-
- SKIP Hdr:
- Source NSID = 0
- Master Key-ID = none
- Destination NSID = 0
- Master Key-ID = none
- Inner IP Hdr:
- Source home agent's address
- Destination mobile node's care-of address
-
- 7.2.2. On the Outside (Public) Network
-
- The SKIP Firewall recovers the original Registration Reply packet and
- looks at the destination address: the mobile node's care-of address.
-
- The SKIP Firewall's dynamic packet filtering used the initial
- Registration Request (Secton 7.1) to establish a dynamic mapping
- between the care-of address and the mobile node's Master Key-ID.
- Hence, before forwarding the Registration Reply, it encrypts it using
- the mobile node's public component.
-
- This dynamic binding capability and the use of tunneling mode ESP
- obviate the need to extend the Mobile IP protocol with a "relay
- Registration Request". However, it requires that the Registration
- Reply exit the private network through the same firewall that
- forwarded the corresponding Registration Request.
-
- Instead of obtaining the mobile node's permanent address from the
- dynamic binding, a Mobile IP aware firewall could also obtain it from
- the Registration Reply itself. This renders the firewall stateless,
- and lets Registration Requests and Replies traverse the periphery of
-
-
-
- Montenegro & Gupta Informational [Page 15]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- the private network through different firewalls.
-
- REGISTRATION REPLY: BETWEEN THE FIREWALL AND THE MOBILE NODE
- +---------------+----------+----+-----+--------------+------------+
- | IP Hdr (SKIP) | SKIP Hdr | AH | ESP | Inner IP Hdr | Reg. Reply |
- +---------------+----------+----+-----+--------------+------------+
-
- IP Hdr (SKIP):
- Source firewall's public (outside) address
- Destination mobile node's care-of address
-
- SKIP Hdr:
- Source NSID = 0
- Master Key-ID = none
- Destination NSID = 1
- Master Key-ID = IPv4 addr of the mobile node
- Inner IP Hdr:
- Source home agent's address
- Destination mobile node's care-of address
-
- 7.3. Traversal Extension
-
- The Traversal Extension MAY be included by mobile nodes in
- Registration Requests, and by home agents in Registration Replies.
- As per Section 3.6.1.3 of [1], the Traversal Extension must appear
- before the Mobile-Home Authentication Extension. A Traversal
- Extension is an explicit notification that there are one or more
- traversal points (firewalls, fireridges, etc) between the mobile node
- and its home agent. Negotiating access past these systems may imply a
- new authentication header, and possibly a new encapsulating header
- (perhaps as part of tunnel-mode ESP) whose IP destination address is
- the traversal address.
-
- Negotiating access past traversal points does not necessarily require
- cryptographic techniques. For example, systems at the boundary
- between separate IP address spaces must be explicitly targetted
- (perhaps using unencrypted IP in IP encapsulation).
-
- A mobile node SHOULD include one Traversal Extension per traversal
- point in its Registration Requests. If present, their order MUST
- exactly match the order in which packets encounter them as they flow
- from the mobile node towards the home agent.
-
- Notice that there may be additional firewalls along the way, but the
- list of traversal points SHOULD only include those systems with which
- an explicit negotiation is required.
-
-
-
-
-
- Montenegro & Gupta Informational [Page 16]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- Similarly, the home agent SHOULD include one Traversal Extension per
- traversal point in its Registration Replies. If present, their order
- MUST exactly match the order in which packets encounter them as they
- flow from the home agent to the mobile node.
-
- A Traversal Extension does not include any indication about how
- access is negotiated. Presumably, this information is obtained
- through separate means. This document does not attempt to solve the
- firewall discovery problem, that is, it does not specify how to
- discover the list of traversal points.
-
- As per section 1.9 of [1], the fact that the type value falls within
- the range 128 to 255 implies that if a home agent or a mobile node
- encounter a Traversal Extension in a Registration Request or Reply,
- they may silently ignore it. This is consistent with the fact that
- the Traversal Extension is essentially a hint.
-
- 0 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
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Type | Length | Reserved |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | MN to HA Traversal Address |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | HA to MN Traversal Address |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
-
- Type
-
- 129
-
- Length
-
- 10
-
- Reserved
-
- 0
-
- MN to HA Traversal Address
-
- The IP address of the an intermediate system or firewall
- encountered by datagrams sent by the mobile node towards the
- home agent. Typically, this is the external address of a
- firewall or firewall complex.
-
-
-
-
-
-
- Montenegro & Gupta Informational [Page 17]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- This field MUST be initialized in Registration Requests. In
- Registration Replies, it is typically all 0's, otherwise, the
- mobile node SHOULD interpret it as a hint.
-
- HA to MN Traversal Address
-
- The IP address of an intermediate system or firewall
- encountered by datagrams sent by the home agent towards the
- mobile node. Typically, this is the internal address of a
- firewall or firewall complex.
-
- This field MUST be initialized in Registration Replies. In
- Registration Requests, it is typically all 0's, otherwise, the
- home agent SHOULD interpret it as a hint.
-
- 8. Data Transfer
-
- Data transfer proceeds along lines similar to the Registration
- Request outlined above. Section 8.1 discusses data traffic sent by a
- mobile node to a correspondent node. Section 8.2 shows packet formats
- for the reverse traffic being tunneled by the home agent to the
- mobile node.
-
- 8.1. Data Packet From the Mobile Node to a Correspondent Node
-
- The mobile node composes a packet destined to a correspondent node
- located within the private network.
-
- The Mobile IP function in the mobile node examines the Inner IP
- header, and determines that it satisfies conditions "a" and "b1" from
- Section 7.1. The mobile node requests the proper encryption and
- encapsulation services from SKIP.
-
- Thus, the mobile node with a co-located address sends encrypted
- traffic to the firewall, using the following format:
-
- DATA PACKET: FROM THE MOBILE NODE VIA THE FIREWALL
- +---------------+----------+----+-----+--------------+------+
- | IP Hdr (SKIP) | SKIP Hdr | AH | ESP | Inner IP Hdr | ULP |
- +---------------+----------+----+-----+--------------+------+
-
- IP Hdr (SKIP):
- Source mobile node's care-of address
- Destination public (outside) address on the firewall
-
-
-
-
-
-
-
- Montenegro & Gupta Informational [Page 18]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- SKIP Hdr:
- Source NSID = 1
- Master Key-ID = IPv4 address of the mobile node
- Destination NSID = 0
- Master Key-ID = none
- Inner IP Hdr:
- Source mobile node's home address
- Destination correspondent node's address
-
- The SKIP Firewall intercepts this packet, decrypts the Inner IP Hdr
- and upper-layer payload (ULP) and checks the destination address.
- Since the packet is destined to a correspondent node in the private
- network, the "Inner" IP datagram is delivered internally. Once the
- SKIP firewall injects this packet into the private network, it is
- routed independently of its source address.
-
- As this last assumption is not always true, the mobile node may
- construct a bi-directional tunnel with its home agent. Doing so,
- guarantees that the "Inner IP Hdr" is:
-
- Inner IP Hdr:
- Source care-of address
- Destination home agent address
-
- When at home, communication between the the mobile node and certain
- external correspondent nodes may need to go through application-
- specific firewalls or proxies, different from the SKIP firewall.
- While on the public network, the mobile node's communication with
- these hosts, MUST use a bi-directional tunnel.
-
- 8.2. Data Packet From a Correspondent Node to the Mobile Node
-
- The home agent intercepts a packet from a correspondent node to the
- mobile node. It encapsulates it such that the Mobile IP encapsulating
- IP header's source and destination addresses are the home agent and
- care-of addresses, respectively. This would suffice for delivery
- within the private network. Since the current care-of address of the
- mobile node is not within the private network, this packet MUST be
- sent via the firewall. The home agent can accomplish this by
- encapsulating the datagram in a SKIP packet destined to the firewall
- (i.e. we assume secure channel configuration number 4).
-
-
-
-
-
-
-
-
-
-
- Montenegro & Gupta Informational [Page 19]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- 8.2.1 Within the Inside (Private) Network
-
- From the home agent to the private (inside) address of the firewall
- the packet format is:
-
- DATA PACKET: BETWEEN THE HOME AGENT AND THE FIREWALL
- +--------+------+----+-----+--------+--------+-----+
- | IP Hdr | SKIP | AH | ESP | mobip | Inner | ULP |
- | (SKIP) | Hdr | | | IP Hdr | IP Hdr | |
- +--------+------+----+-----+--------+--------+-----+
-
- IP Hdr (SKIP):
- Source home agent's address
- Destination private (inside) address on the firewall
-
- SKIP Hdr:
- Source NSID = 0
- Master Key-ID = none
- Destination NSID = 0
- Master Key-ID = none
-
- Mobile-IP IP Hdr:
- Source home agent's address
- Destination care-of address
-
- Inner IP Hdr:
- Source correspondent node's address
- Destination mobile node's address
-
- ULP: upper-layer payload
-
- The packet format above does not require the firewall to have a
- dynamic binding. The association between the mobile node's permanent
- address and it care-of address can be deduced from the contents of
- the "Mobile-IP IP Hdr" and the "Inner IP Hdr".
-
- Nevertheless, a nomadic binding is an assurance that currently the
- mobile node is, in fact, at the care-of address.
-
-
-
-
-
-
-
-
-
-
-
-
-
- Montenegro & Gupta Informational [Page 20]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- 8.2.2. On the Outside (Public) Network
-
- The SKIP firewall intercepts the packet, and recovers the Mobile IP
- encapsulated datagram. Before sending it out, the dynamic packet
- filter configured by the original Registration Request triggers
- encryption of this packet, this time by the SKIP firewall for
- consumption by the mobile node. The resultant packet is:
-
- DATA PACKET: BETWEEN THE FIREWALL AND THE MOBILE NODE
- +--------+------+----+-----+--------+--------+-----+
- | IP Hdr | SKIP | AH | ESP | mobip | Inner | ULP |
- | (SKIP) | Hdr | | | IP Hdr | IP Hdr | |
- +--------+------+----+-----+--------+--------+-----+
-
- IP Hdr (SKIP):
- Source firewall's public (outside) address
- Destination mobile node's care-of address
-
- SKIP Hdr:
- Source NSID = 0
- Master Key-ID = none
- Destination NSID = 1
- Master Key-ID = IPv4 address of the mobile node
-
- Mobile-IP IP Hdr:
- Source home agent's address
- Destination care-of address
-
- Inner IP Hdr:
- Source correspondent node's address
- Destination mobile node's address
-
- ULP: upper-layer payload
-
- At the mobile node, SKIP processes the packets sent by the firewall.
- Eventually, the inner IP header and the upper-layer packet (ULP) are
- retrieved and passed on.
-
- 9. Security Considerations
-
- The topic of this document is security. Nevertheless, it is
- imperative to point out the perils involved in allowing a flow of IP
- packets through a firewall. In essence, the mobile host itself MUST
- also take on responsibility for securing the private network, because
- it extends its periphery. This does not mean it stops exchanging
- unencrypted IP packets with hosts on the public network. For
- example, it MAY have to do so in order to satisfy billing
- requirements imposed by the foreign site, or to renew its DHCP lease.
-
-
-
- Montenegro & Gupta Informational [Page 21]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- In the latter case it might filter not only on IP source address, but
- also on protocol and port numbers.
-
- Therefore, it MUST have some firewall capabilities, otherwise, any
- malicious individual that gains access to it will have gained access
- to the private network as well.
-
- Acknowledgements
-
- Ideas in this document have benefited from discussions with at least
- the following people: Bill Danielson, Martin Patterson, Tom Markson,
- Rich Skrenta, Atsushi Shimbo, Behfar Razavi, Avinash Agrawal, Tsutomu
- Shimomura and Don Hoffman. Jim Solomon has also provided many helpful
- comments on this document.
-
- References
-
- [1] Perkins, C., "IP Mobility Support", RFC 2002, October 1996.
-
- [2] Perkins, C., "IP Encapsulation within IP", RFC 2003, October
- 1996.
-
- [3] A. Aziz and M. Patterson, Design and Implementation of SKIP,
- available on-line at http://skip.incog.com/inet-95.ps. A
- previous version of the paper was presented at INET '95 under
- the title Simple Key Management for Internet Protocols (SKIP),
- and appears in the conference proceedings under that title.
-
- [4] Leech, M., Ganis, M., Lee, Y, Kuris, R., Koblas, D., and
- L. Jones, "SOCKS Protocol Version 5", RFC 1928, March 1996.
-
- [5] Leech, M., "Username/Password Authentication for SOCKS V5",
- RFC 1929, March 1996.
-
- [6] Atkinson, R., "IP Encapsulating Payload", RFC 1827, August
- 1995.
-
- [7] Atkinson, R., "IP Authentication Header", RFC 1826, August
- 1995.
-
- [8] Stephen Kent, message to the IETF's IPSEC mailing list,
- Message-Id: <v02130500ae569a3e904e@[128.89.30.29]>, September
- 6, 1996.
-
- [9] Tom Markson, private communication, June 12, 1996.
-
-
-
-
-
-
- Montenegro & Gupta Informational [Page 22]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- [10] A. Aziz, T. Markson, H. Prafullchandra. Encoding of an
- Unsigned Diffie-Hellman Public Value. Available on-line as
- http://skip.incog.com/spec/EUDH.html.
-
- Authors' Addresses
-
- Gabriel E. Montenegro
- Sun Microsystems, Inc.
- 901 San Antonio Road
- Mailstop UMPK 15-214
- Mountain View, California 94303
-
- Phone: (415)786-6288
- Fax: (415)786-6445
- EMail: gabriel.montenegro@Eng.Sun.COM
-
-
- Vipul Gupta
- Sun Microsystems, Inc.
- 901 San Antonio Road
- Mailstop UMPK 15-214
- Mountain View, California 94303
-
- Phone: (415)786-3614
- Fax: (415)786-6445
- EMail: vipul.gupta@Eng.Sun.COM
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Montenegro & Gupta Informational [Page 23]
-
- RFC 2356 Sun's SKIP Firewall Traversal for Mobile IP June 1998
-
-
- Full Copyright Statement
-
- Copyright (C) The Internet Society (1998). All Rights Reserved.
-
- This document and translations of it may be copied and furnished to
- others, and derivative works that comment on or otherwise explain it
- or assist in its implementation may be prepared, copied, published
- and distributed, in whole or in part, without restriction of any
- kind, provided that the above copyright notice and this paragraph are
- included on all such copies and derivative works. However, this
- document itself may not be modified in any way, such as by removing
- the copyright notice or references to the Internet Society or other
- Internet organizations, except as needed for the purpose of
- developing Internet standards in which case the procedures for
- copyrights defined in the Internet Standards process must be
- followed, or as required to translate it into languages other than
- English.
-
- The limited permissions granted above are perpetual and will not be
- revoked by the Internet Society or its successors or assigns.
-
- This document and the information contained herein is provided on an
- "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
- TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
- BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
- HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
- MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Montenegro & Gupta Informational [Page 24]
-
-