A Simple LISP NAT-Traversal Implementation
draft-farinacci-lisp-simple-nat-00

Document Type Active Internet-Draft (individual)
Author Dino Farinacci 
Last updated 2020-05-18 (latest revision 2020-05-19)
Stream (None)
Intended RFC status (None)
Formats plain text pdf htmlized (tools) htmlized bibtex
Stream Stream state (No stream defined)
Consensus Boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date
Responsible AD (None)
Send notices to (None)
Network Working Group                                       D. Farinacci
Internet-Draft                                               lispers.net
Intended status: Informational                              May 18, 2020
Expires: November 19, 2020

               A Simple LISP NAT-Traversal Implementation
                   draft-farinacci-lisp-simple-nat-00

Abstract

   This informational draft documents the lispers.net LISP NAT-Traversal
   implementation.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at https://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on November 19, 2020.

Copyright Notice

   Copyright (c) 2020 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (https://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Farinacci               Expires November 19, 2020               [Page 1]
Internet-Draft A Simple LISP NAT-Traversal Implementation       May 2020

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Definition of Terms . . . . . . . . . . . . . . . . . . . . .   4
   3.  Overview  . . . . . . . . . . . . . . . . . . . . . . . . . .   6
   4.  Protocol Messages . . . . . . . . . . . . . . . . . . . . . .   7
   5.  xTR Map-Registering and Map-Server Proxy Map-Replying . . . .  10
   6.  Packet Flow from ITR-behind-NAT to RTR  . . . . . . . . . . .  11
   7.  Packet Flow from Remote ITR to RTR  . . . . . . . . . . . . .  11
   8.  Packet Flow from RTR to ETR-behind-NAT  . . . . . . . . . . .  11
   9.  Design Observations . . . . . . . . . . . . . . . . . . . . .  13
   10. Security Considerations . . . . . . . . . . . . . . . . . . .  14
   11. IANA Considerations . . . . . . . . . . . . . . . . . . . . .  14
   12. Normative References  . . . . . . . . . . . . . . . . . . . .  14
   Appendix A.  Acknowledgments  . . . . . . . . . . . . . . . . . .  15
   Author's Address  . . . . . . . . . . . . . . . . . . . . . . . .  15

1.  Introduction

   This draft documents the LISP messages and protocol procedures for a
   simple mechanism for the NAT Traversal problem.  A subset of message
   definitions and protocol procedures are taken from
   [I-D.ermagan-lisp-nat-traversal].  This design was first implemented
   in the lispers.net LISP implementation dating back to January 2014.

   The procedures described in this document are performed by LISP
   compliant [I-D.ietf-lisp-rfc6830bis] [I-D.ietf-lisp-rfc6833bis] xTRs
   that reside on the private side of one or more NAT devices that
   connect them to the public side of the network.

   The solution is applicable to the following xTR deployments:

   o  A physical ITR/ETR device that is directly connected or multiple
      hops away from a NAT device.

   o  A LISP-MN acting as an ITR/ETR device on an cellular service where
      a mobile provider is providing a NAT function.

   o  A logical ITR/ETR that resides in a VM that is behind a NAT device
      managed by a hypervisor or cloud provider.

   o  A logical ITR/ETR that resides in a container where a NAT function
      is provided by the container service.

   o  The above xTR deployments can operate through multiple levels of
      NATs.

Farinacci               Expires November 19, 2020               [Page 2]
Internet-Draft A Simple LISP NAT-Traversal Implementation       May 2020

   o  The above deployments are also applicable to RTR and PxTR devices
      that may reside behind NAT devices.

   o  The lispers.net lig [RFC6835] implementation uses the protocol
      messaging defined in this draft so any system behind a NAT (either
      running as a LISP xTR or not running LISP at all), can query the
      mapping system to obtain mappings for network maintenance and
      troubleshooting.

Farinacci               Expires November 19, 2020               [Page 3]
Show full document text