[v6ops] draft-ietf-v6ops-464xlat-optimization-02 general concerns

JORDI PALET MARTINEZ <jordi.palet@consulintel.es> Fri, 17 July 2020 09:40 UTC

Return-Path: <prvs=1467b8aa93=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 8F44A3A15E0 for <v6ops@ietfa.amsl.com>; Fri, 17 Jul 2020 02:40:25 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.996
X-Spam-Level:
X-Spam-Status: No, score=-1.996 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, MIME_QP_LONG_LINE=0.001, SPF_HELO_NONE=0.001, URIBL_BLOCKED=0.001] 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 dtqrWD2fiS61 for <v6ops@ietfa.amsl.com>; Fri, 17 Jul 2020 02:40:22 -0700 (PDT)
Received: from mail.consulintel.es (mail.consulintel.es [IPv6:2001:470:1f09:495::5]) by ietfa.amsl.com (Postfix) with ESMTP id 454643A07B9 for <v6ops@ietf.org>; Fri, 17 Jul 2020 02:40:21 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=simple; d=consulintel.es; s=MDaemon; t=1594978820; x=1595583620; i=jordi.palet@consulintel.es; q=dns/txt; h=User-Agent:Date: Subject:From:To:Message-ID:Thread-Topic:Mime-version: Content-type; bh=RdVtPQdiT/5zwYStrWcXBVF8jPrVs43HkC47NwKdXgw=; b=QN3Hl9c5P+82CDVg8bmHZ3UYJ5rzpUbOvpQr4i0bXDWQP9MyMBf8RYAp5NFBgS nxKUcL0JPlAqMW5Qdf1cMlf6sHmG03Vdp++C7Dxq3UeO9sTeyoOZG6qTNcKSh10x vk48iJKfz7ifcGur+19RK/CSx+yaWvua86tV4ObIlsAJ0=
X-MDAV-Result: clean
X-MDAV-Processed: mail.consulintel.es, Fri, 17 Jul 2020 11:40:20 +0200
X-Spam-Processed: mail.consulintel.es, Fri, 17 Jul 2020 11:40:17 +0200
Received: from [10.10.10.144] by mail.consulintel.es (MDaemon PRO v16.5.2) with ESMTPA id md50000290917.msg for <v6ops@ietf.org>; Fri, 17 Jul 2020 11:40:17 +0200
X-MDRemoteIP: 2001:470:1f09:495:45be:3ec8:c6f0:2bd0
X-MDHelo: [10.10.10.144]
X-MDArrival-Date: Fri, 17 Jul 2020 11:40:17 +0200
X-Authenticated-Sender: jordi.palet@consulintel.es
X-Return-Path: prvs=1467b8aa93=jordi.palet@consulintel.es
X-Envelope-From: jordi.palet@consulintel.es
X-MDaemon-Deliver-To: v6ops@ietf.org
User-Agent: Microsoft-MacOutlook/16.39.20071300
Date: Fri, 17 Jul 2020 11:40:12 +0200
From: JORDI PALET MARTINEZ <jordi.palet@consulintel.es>
To: Erik Nygren <erik+ietf@nygren.org>, V6 Ops List <v6ops@ietf.org>
Message-ID: <D70711F9-1C60-464E-B6FA-EBBA42802595@consulintel.es>
Thread-Topic: draft-ietf-v6ops-464xlat-optimization-02 general concerns
Mime-version: 1.0
Content-type: multipart/alternative; boundary="B_3677830812_1531450007"
Archived-At: <https://mailarchive.ietf.org/arch/msg/v6ops/YpID4j69RiGs4mn-RWnEQrzRlUU>
Subject: [v6ops] draft-ietf-v6ops-464xlat-optimization-02 general concerns
X-BeenThere: v6ops@ietf.org
X-Mailman-Version: 2.1.29
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: Fri, 17 Jul 2020 09:40:26 -0000

Hi Erik,

 

I think it will be good to respond in different threads to simplify the discussion and try to find appropriate text for each of the issues that you mention.

This one is on your general concerns, below in-line.

If any of the general concerns is further discussed in the rest of your email, I will try to tackle it also in the follow-up emails, so we can concentrate in every possible issue in the specific email to avoid multiple parallel threads on the same issue.

Tks a lot!

 

El 15/7/20 7:54, "v6ops en nombre de Erik Nygren" <v6ops-bounces@ietf.org en nombre de erik+ietf@nygren.org> escribió:

 

On Thu, Jul 9, 2020 at 11:58 PM Jen Linkova <furry13@gmail.com> wrote:

OK, I"ve read the document and before I finish the write up I'd like
to discuss a number of comments I have.
My apologies for not raising them during the WGLC - I was not paying
attention, got busy with work...


Prodded by Jen's response here I also re-read draft-ietf-v6ops-464xlat-optimization-02.
(My apologies also for not raising these during WGLC -- similar excuses to Jen...  ;-)

While this continues to close corner-cases, I'm still concerned
that there is significant possibility for breakage in a way that
will result in content that is now dual-stacked getting switched
to be IPv4-only.

It would be good to add some examples as to why
some of the invalidation logic needs to actually work
(and the risk of corner cases where it doesn't).
To that end, it may make sense to also have some more
use of normative rfc2119 language for clearly spelling out behaviors
where there are sharp edges.


[Jordi] Often when an informational document goes to the IESG they complain about the use of normative language. One open question is, if we advance RFC6877 to standards then, we could consider that this optimization should be also in the standards track. Anyway, at the time being I will keep it as informational, but I will add normative language to make everything very clear and more examples as needed in every section.


Some example cases of breakage or significant risk of breakage:
* A site is IPv4-only (breaks for or denies all IPv6 users) but shares an A record with a dual-stack site.  If this isn't detected properly, it will break users who get sent over IPv6 to the IPv4-only site.

 

[Jordi] My goal has been to ensure that the optimization doesn’t break any case, and especially when the site only offers A records. Unless I’m missing something, I think this is perfectly resolved in 5.2.2, because the EAMT entry will be only created if the site is only IPv4-only.


* some CDNs use TLS SNI for demuxing IPv4 traffic but the IPv6 address for demuxing IPv6 traffic (both to determine which cert to serve).  This means that the IPv4:IPv6 associations are one to many and using the wrong one will result in cert errors.

 

[Jordi] This was discussed in a previous version (I recall it was after the presentation in Prague) and resolved by incorporating the FQDN in the EAMT entry and a section 5.2.4, which forces the forwarding path via a stateful NAT44.


* Some CDNs may use cluster A for IPv4 and cluster B for IPv6 for one customer/tenant, but then cluster A for IPv4 and cluster C for a different customer/tenant.  An stale or invalid association will result in going to the wrong cluster which may not be able to serve the request properly.


[Jordi] Same as the previous one. Because the EAMT entry is created by every CE, the association between a given IPv4 and IPv6 FQDN/addresses is done the same way as if the same CE is actually dual-stack instead of IPv6-only. If I got it correctly, in a CDN, any change in terms of what cluster is serving what, depends on DNS TTLs and maybe routing, right? If that’s the case, routing is transparent because the entries are created in each CE, and to the CDN they appear as a dual-stack eyeball. Similarly, we rely in the CDN provided TTLs.

 

** if the user changes DNSs, unexpected consequences may happen, but there is no difference vs the case when there is no optimization. Any change in the DNSs done by users, may break thinks (for example, CDN contents are server from another cluster). Nevertheless, usually users change DNS in end-hosts (Windows, Linux, MacOS, etc.), it is not so common to change those in the CE. Is even less common to change them in the smartTV or STB, because in many cases they don’t allow it. This is described in 5.2.10. If needed I can improve that section.


While the recent revisions help some, there are still a bunch of cases
where things could still break.  I fear that when they do break it's
not something that content providers or CDNs or their customers will
debug and the result will be for content to get switched back
to IPv4-only (which is not what we want happening, but will
appear to "fix" issues here).


[Jordi] Fully agree here, we need to make sure that we don’t break anything.


I think there may also be some significant security issues not called out
that are independent of the DNS spoofing issue.


[Jordi] I will move this to independent threads.


Another area not discussed is clients caching DNS lookups well past
their TTL.  This is fairly common in some clients (eg, some Java versions)
which could result in entries getting expired from the EAMT but then used
with a new association that should be invalid but wasn't detected as such
as the first client is caching well past the expiry..


[Jordi] I’m confused here.

 

You mean a client ignoring DNS TTLs ? This could actually be a problem without the optimization. If the CDN is changing the IPv4 or IPv6 addresses, but the client is still using them, the content will be unreachable or something different served, right? So, the optimization is not the problem here it is a broken client already …

 

Note that if the EAMT expired and the client tries to use it again, the EAMT entry will be re-created with the new (correct) information from the CDN DNSs, so we may be potentially solving the broken client problem. If the EAMT, for whatever reason is not recreated, the optimization will not be used, so the client will be still doing the “correct” thing according to its expected behavior (non-optimized NAT46+NAT64) – whether it is a broken behavior or not.

 

 



**********************************************
IPv4 is over
Are you ready for the new Internet ?
http://www.theipv6company.com
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.