Re: [IPv6] Suggestion for multi homed clients without NAT/NPT

"Philipp S. Tiesel" <philipp@tiesel.net> Thu, 05 January 2023 13:22 UTC

Return-Path: <philipp@tiesel.net>
X-Original-To: ipv6@ietfa.amsl.com
Delivered-To: ipv6@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4BDF8C14CF07 for <ipv6@ietfa.amsl.com>; Thu, 5 Jan 2023 05:22:16 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.593
X-Spam-Level:
X-Spam-Status: No, score=-2.593 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=unavailable autolearn_force=no
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id yrP9f2jxF43Q for <ipv6@ietfa.amsl.com>; Thu, 5 Jan 2023 05:22:11 -0800 (PST)
Received: from einhorn-mail-out.in-berlin.de (einhorn.in-berlin.de [192.109.42.8]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BBE44C1526FD for <ipv6@ietf.org>; Thu, 5 Jan 2023 05:21:14 -0800 (PST)
X-Envelope-From: philipp@tiesel.net
Received: from x-berg.in-berlin.de (x-change.in-berlin.de [217.197.86.40]) by einhorn.in-berlin.de with ESMTPS id 305DL9md2047234 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Thu, 5 Jan 2023 14:21:09 +0100
Received: from p200300ed5f12320098b13a16912c2891.dip0.t-ipconnect.de ([2003:ed:5f12:3200:98b1:3a16:912c:2891] helo=smtpclient.apple) by x-berg.in-berlin.de with esmtpsa (TLS1.2) tls TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from <philipp@tiesel.net>) id 1pDQBA-0004KN-Ng; Thu, 05 Jan 2023 14:21:08 +0100
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.300.101.1.3\))
From: "Philipp S. Tiesel" <philipp@tiesel.net>
In-Reply-To: <9817b8fa1bdc46f1b2aee9297d37ac23@huawei.com>
Date: Thu, 05 Jan 2023 14:20:58 +0100
Cc: Michael Richardson <mcr+ietf@sandelman.ca>, "ipv6@ietf.org" <ipv6@ietf.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <AE93D0BA-D6DB-42A2-A522-9508F2D67886@tiesel.net>
References: <b3742e2b-6472-9eb4-bee2-507fa8cdf4c6@posteo.de> <7db68981c1b1414da9ef213ace220d66@huawei.com> <9a40eeb5-df46-9c05-2cb4-08b77db66a98@gmail.com> <5417f9c042874dd185e4cf0cde3ff10e@huawei.com> <23904.1672757923@localhost> <9817b8fa1bdc46f1b2aee9297d37ac23@huawei.com>
To: Vasilenko Eduard <vasilenko.eduard=40huawei.com@dmarc.ietf.org>
X-Mailer: Apple Mail (2.3731.300.101.1.3)
Archived-At: <https://mailarchive.ietf.org/arch/msg/ipv6/Dt9i_6TdTcoLrYPxirlQoAVBVsI>
Subject: Re: [IPv6] Suggestion for multi homed clients without NAT/NPT
X-BeenThere: ipv6@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: "IPv6 Maintenance Working Group \(6man\)" <ipv6.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ipv6>, <mailto:ipv6-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ipv6/>
List-Post: <mailto:ipv6@ietf.org>
List-Help: <mailto:ipv6-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ipv6>, <mailto:ipv6-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 05 Jan 2023 13:22:16 -0000

Hi.


> On 4. Jan 2023, at 11:17, Vasilenko Eduard <vasilenko.eduard=40huawei.com@dmarc.ietf.org> wrote:
> 
> Hi Michael,
> Opposite.
> The solution is not needed for a server. The server typically uses bind() then RFC 8028 fixed the problem (for the bind() use case it proposes "choose next-hop only among routers that advertise the respective PIO").
> The solution is needed for clients because clients typically use getaddrinfo() which is broken in MHMP (in full compliance with RFC 6724).

I am convinced RFC 8028 would also be a great start for clients with multiple default routes, e.g., enabling stuff like multi-path TCP to work correctly, but it will not be sufficient for meaningful multi-homing / source address selection.

In addition, to avoiding problems with CDNs, it is also  required to separately keep track of DNS on a per-router/PvD basis and only use the matching source addresses for new connections, so RDNSS should also be treated analog to the source address in RFC 8028.

Having tried to manage traffic from within getaddrinfo() I can only recommend to abandon that idea. 
A lengthly write-up why can be found here in Section 6 of this expired draft: https://datatracker.ietf.org/doc/html/draft-tiesel-taps-socketintents-bsdsockets-02  

The only way forward I see is something like TAPS and Appel’s implementation is already pretty close what it would needs to make use of multi-homing here. They just need a litte more aggressive/opportunistic happy eyeball candidate selection.

AVE!
   Philipp


AVE!
   Philipp S. Tiesel

--  
Philipp S. Tiesel
https://philipp.tiesel.net/