Re: [v6ops] draft-palet-v6ops-nat64-deployment-02 comments

JORDI PALET MARTINEZ <jordi.palet@consulintel.es> Wed, 27 June 2018 21:09 UTC

Return-Path: <prvs=17165c862f=jordi.palet@consulintel.es>
X-Original-To: v6ops@ietfa.amsl.com
Delivered-To: v6ops@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6B384130E2A for <v6ops@ietfa.amsl.com>; Wed, 27 Jun 2018 14:09:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=consulintel.es
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 0-HhUjwULAu7 for <v6ops@ietfa.amsl.com>; Wed, 27 Jun 2018 14:09:07 -0700 (PDT)
Received: from mail.consulintel.es (mail.consulintel.es [IPv6:2001:470:1f09:495::5]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 40C59130E2F for <v6ops@ietf.org>; Wed, 27 Jun 2018 14:09:07 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=simple; d=consulintel.es; s=MDaemon; t=1530133745; x=1530738545; i=jordi.palet@consulintel.es; q=dns/txt; h=User-Agent:Date: Subject:From:To:Message-ID:Thread-Topic:References:In-Reply-To: Mime-version:Content-type:Content-transfer-encoding; bh=y8wUxeaO fGpBF6V+6Ue+SvxZYlj1tVYmIzEC2DLF4uc=; b=gmflodBKZj/4enOg10pjfL0i HQF0Ieex/isOBp9zho8tGX5s5d0XpESt81wGupuXYaypZgEtnLYVOekFOb2XNCsj x/Ko0+TSdkNz/HyrI53dFhjzdV+vZY5NCWhhTbFBw6dXG19B9hfG2cPMIGQJmQGc kdYqkEqTegpnwgv/9s4=
X-MDAV-Result: clean
X-MDAV-Processed: mail.consulintel.es, Wed, 27 Jun 2018 23:09:05 +0200
X-Spam-Processed: mail.consulintel.es, Wed, 27 Jun 2018 23:09:04 +0200
Received: from [10.10.10.130] by mail.consulintel.es (MDaemon PRO v16.5.2) with ESMTPA id md50005799203.msg for <v6ops@ietf.org>; Wed, 27 Jun 2018 23:09:03 +0200
X-MDRemoteIP: 2001:470:1f09:495:c87f:b64f:f08f:9246
X-MDHelo: [10.10.10.130]
X-MDArrival-Date: Wed, 27 Jun 2018 23:09:03 +0200
X-Authenticated-Sender: jordi.palet@consulintel.es
X-Return-Path: prvs=17165c862f=jordi.palet@consulintel.es
X-Envelope-From: jordi.palet@consulintel.es
X-MDaemon-Deliver-To: v6ops@ietf.org
User-Agent: Microsoft-MacOutlook/10.e.1.180613
Date: Wed, 27 Jun 2018 23:08:36 +0200
From: JORDI PALET MARTINEZ <jordi.palet@consulintel.es>
To: Fred Baker <fredbaker.ietf@gmail.com>, "v6ops@ietf.org list" <v6ops@ietf.org>
Message-ID: <ED663F6E-C63B-4FEC-913C-2CFF16249E93@consulintel.es>
Thread-Topic: [v6ops] draft-palet-v6ops-nat64-deployment-02 comments
References: <663F489C-7F63-4B0C-A5E6-F7EE4634E62B@gmail.com>
In-Reply-To: <663F489C-7F63-4B0C-A5E6-F7EE4634E62B@gmail.com>
Mime-version: 1.0
Content-type: text/plain; charset="UTF-8"
Content-transfer-encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/v6ops/u7Y7PaxbCmEVwzDLYtXu8HJvrfU>
Subject: Re: [v6ops] draft-palet-v6ops-nat64-deployment-02 comments
X-BeenThere: v6ops@ietf.org
X-Mailman-Version: 2.1.26
Precedence: list
List-Id: v6ops discussion list <v6ops.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/v6ops>, <mailto:v6ops-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/v6ops/>
List-Post: <mailto:v6ops@ietf.org>
List-Help: <mailto:v6ops-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/v6ops>, <mailto:v6ops-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 27 Jun 2018 21:09:11 -0000

Hi Fred,



Thanks a lot !



Comments below in-line.





Regards,

Jordi

 

 



-----Mensaje original-----

De: v6ops <v6ops-bounces@ietf.org> en nombre de Fred Baker <fredbaker.ietf@gmail.com>

Fecha: miércoles, 27 de junio de 2018, 19:05

Para: Jordi Palet Martínez <jordi.palet@theipv6company.com>, "v6ops@ietf.org list" <v6ops@ietf.org>

Asunto: [v6ops] draft-palet-v6ops-nat64-deployment-02 comments



    Chair comment: I am interested in making this draft a working group draft. I think there is merit in it to do so. However, following our usual process, I need agreement from the working group. Consider this a solicitation for that. To do so, I'm looking for comments, supportive or otherwise, especially from operators. To respond to Barbara's question that she raised with ipv4aas, making it a working group document doesn't mean it's done, it means it's a work item as opposed to a suggestion to the working group.

    

    The rest of this is sans hats.

    

    Thanks for your new draft. Let me say that I am increasingly hearing about ISPs (cellular and broadband) that, in the words of one, "just don't want to allocate IPv4 addresses anymore", and are taking important steps toward turning IPv4 off within their networks in favor of IPv4 as a service. As you know, this falls into a couple of categories - those that are willing to offer a client-only IPv4-over-IPv6 or IPv4-cum-IPv6 service, and those that need to be able to somehow still put an IPv4 address into an A record (such as a company like Lumix that uses Dynamic DNS Update and firewall hole-punching to allow a residential user to access their surveillance system from an Android/iPhone app) and use it to send a message to the IPv4 server. So IMHO, this is an important draft, and it would be useful to get operator comment on it.





-> Agree and hopefully we can get a lot of contributions ...

    

    I'm reviewing the draft. I'll bring up nits inline, and I may have some other thoughts as well.

    

    > Abstract

    > 

    >    This document describes how NAT64 and 464XLAT can be deployed in an

    >    IPv6 operator (cellular and broadband) or enterprise network and the

    

    I suspect that this would read better as "IPv6 network, whether cellular ISP, broadband ISP, or enterprise".



-> Perfect, thanks a lot. I'm already doing edits in my draft v03, so I don't miss any bit.

    

    > 1.  Introduction

    

    >    To avoid changes in both, the IPv6-only hosts and the IPv4-only

    >    server, NAT64 requires also the use of a DNS64 ([RFC6147]), in charge

    >    for the synthesis of AAAA records from the A records.

    

    I would disagree that NAT64 "requires" DNS64. NAT64 requires that the destination IPv6 address contain an embedded IPv4 address. The source of that IPv4-embedded IPv6 address is up to the system that sent the packet. A CLAT (stateless translation as in RFC 7915) uses address synthesis with a PLAT translation prefix. MAP-T adds NAPT44 functionality to that with respect to the outbound IPv4 source address. A random IPv6 host accessing an IPv4-only peer might use DNS64, and the AAAA records might simply exist in DNS containing an IPv4-embedded IPv6 address. But the NAT64 function doesn't use, nor does it require, DNS64.



-> Agree, I took it from an equivalent text in the abstract of DNS64, but it makes sense to put it in reverse:

"DNS64, is in charge of the synthesis of AAAA records from the A records, avoiding changes in both, the IPv6-only hosts and the IPv4-only server, so they can use a NAT64."





    

    BTW, SIIT-DC makes rather a point that RFC 6146 is a per-session (effectively NAPT) translator, and provides translation strictly at the IP layer. I suspect that is also a valid configuration, one that needs to be supported. In the 464XLAT case, I think it falls out, but I'll have to think about MAP-T.

    

    > 3.  NAT64 Deployment Scenarios

    

    >    Consequently, the perspective in this document is to broader those

    

    "broaden"

    

    > 3.1.2.  Service Provider offering 464XLAT, with DNS64

    

    Pictorial image of what I'm picturing:

    

                              +----+                +----+

                              |DNS |     +-----+    |DNS |

                              |IPv6|     |DNS64|    |IPv4|

                              +--+-+     +--+--+    +--+-+

      +------+ v6 +------+       |          |          |

      |      +----+      |    ,--+--.       |       ,--+--.

      |Dual  |    | IPv6 |   /       \    ,-+-.    /       \

      |Stack |  +-+Router+--(  IPv6   )--( PLAT)--(  IPv4   )

      |Device|v4|C|      |   \Network/`.  `---'    \Network/

      |      +--+L|      |    `--+--'   `.         /`-----'

      +------+  |A|      |       |        `+------+

                |T|      |    +--+---+     | Peer |

                +-+------+    | IPv6 |     |Device|

                              |Device|     +------+

                              +------+

    

    The dual stack device obviously has an IPv4 and an IPv6 address, and the IPv4 side of it speaks through the CLAT. The IPv6 device has no IPv4 address. The peer device is the thing the "dual stack" device connects to, and might itself be dual stack or IPv4-only. In both cases, however, IPv4 access to the peer device will go through the PLAT.

    

    When the IPv6 device wants to talk with the peer device, it will need a AAAA record. In the dual stack case, that will contain a "usual" IPv6 address, and connectivity will be IPv6 end to end; in the IPv4-only case, it will need its IPv4 address embedded into the PLAT's translation prefix, which is or is functionally equivalent to DNS64.

    

    When the dual stack device wants to talk with the Peer Device, its IPv4 side will need an A record and the CLAT will do the address synthesis. Hence, no need for DNS64, and no requirement for it if it exists. The IPv6 side will need a AAAA record. If there is a native IPv6 address, that's fine, it will use that, and the system might be best served if the IPv6 connectivity is used. If there is a DNS64 AAAA record, the IPv4 side will use an A record and the CLAT and PLAT, and the IPv6 side will use the PLAT and the DNS64 address.



-> Are you suggesting that I should make a more detailed description in every scenario, with more figures, etc. ? Or just in the 464XLAT case ?

    

    > 3.1.3.  Service Provider offering 464XLAT, without DNS64

    

    The difference from the preceding section will be connectivity between an IPv6-only device and an IPv4-only peer. In the previous section, the IPv6 device will be unable to communicate with an IPv4-only peer, and the dual stack device will use its IPv4 side, the CLAT, and the PLAT.



-> Right, again, you feel I need to add text to explain that, so same as previous question, having some extra text only for the 464XLAT cases?

    

    >    The major advantage of this scenario, using 464XLAT without DNS64, is

    >    that the service provider ensures that DNSSEC is never broken.

    

    Yes, but at the cost of IPv6-IPv4 connectivity.

 

-> Yes, we are forcing one extra translation at the CE (which is the same as today happens with NAT44). I think if it is a choice of the operator to use DNS64 (and resolve a possible 1.7% - today - DNSSEC incidents), or make its life easier by forcing some extra translations that of course, will keep decreasing as more IPv6 deployment happens in services/content providers. If we take in consideration that 60% or so of the services more used (Youtube, Google, Facebook, etc.), area already IPv6 enabled, it means that in an ISP deploying IPv6, the number of "extra" translations at the CLAT will be really insignificant (and don't happen in the operator network, just in the CLAT) compared to the cost of breaking "some" DNSSEC.

   

    > 3.2.  Known to Work Under Special Conditions

    > 

    >    The scenarios in this category are known not to work unless

    

    "known to not work"

    

    I'll probably have more comments later, but I'm sending this much now.

    _______________________________________________

    v6ops mailing list

    v6ops@ietf.org

    https://www.ietf.org/mailman/listinfo/v6ops

    




**********************************************
IPv4 is over
Are you ready for the new Internet ?
http://www.consulintel.es
The IPv6 Company

This electronic message contains information which may be privileged or confidential. The information is intended to be for the exclusive use of the individual(s) named above and further non-explicilty authorized disclosure, copying, distribution or use of the contents of this information, even if partially, including attached files, is strictly prohibited and will be considered a criminal offense. If you are not the intended recipient be aware that any disclosure, copying, distribution or use of the contents of this information, even if partially, including attached files, is strictly prohibited, will be considered a criminal offense, so you must reply to the original sender to inform about this communication and delete it.