Re: rfc4941bis: temporary addresses as "outgoing-only"?

Brian E Carpenter <brian.e.carpenter@gmail.com> Mon, 10 February 2020 22:17 UTC

Return-Path: <brian.e.carpenter@gmail.com>
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 8820D12087C for <ipv6@ietfa.amsl.com>; Mon, 10 Feb 2020 14:17:31 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.998
X-Spam-Level:
X-Spam-Status: No, score=-1.998 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 uAAkHHq-Rwte for <ipv6@ietfa.amsl.com>; Mon, 10 Feb 2020 14:17:29 -0800 (PST)
Received: from mail-pf1-x436.google.com (mail-pf1-x436.google.com [IPv6:2607:f8b0:4864:20::436]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 89440120878 for <6man@ietf.org>; Mon, 10 Feb 2020 14:17:29 -0800 (PST)
Received: by mail-pf1-x436.google.com with SMTP id j9so4385919pfa.8 for <6man@ietf.org>; Mon, 10 Feb 2020 14:17:29 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=8h384zdexqU/l4/LI9Z8a6zjBziaqTrhCRGZqtHy1Z0=; b=W+AHOnlOpgAtaF9kD0Fes2pPV7Pc/553W59RD+YNBNBmIaxJ2sj7vw3bdsgbxpJbrU XRPw/kMh+uDFh7HE07ukHM+LFcoVjS5EVHYeYsV3zQ5Go7ChGfU41CJ/COZk5EIpUQUu 8qY1VC3bWC9YL4WtTGIlBdqzpvE4qlD3XtzFyglkvDkVaADdaQVgWRV0pO1Y7Mki9BzL Q13dX8cwY9GC2i3y14d30Sciam9fDMDjWQOqhSkNGBWWzWbUmBn9L6Ubw/87MUW0blp2 EPtDdPNrlccZm8w6Qjdx52NJAvT4d1J6AOoeRZStQvLBKk/PfpDcIWvYsTeIGNcJK/GN NBmA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=8h384zdexqU/l4/LI9Z8a6zjBziaqTrhCRGZqtHy1Z0=; b=P7v6dt/2vNwTSKIugHNhac3SUI6yWE6ZGOlwXomanqu+xZmlOkQDA6RQjkhBEEekVF N6SCRJqfSixWtGQ0dGatVTHK82mgtwvJY3xA+wDicVgSaED99qCJ9ltD0xHZsd5H20N+ FHnlkQG0QchIPYovdH/ormh1KXS5e6EB6n17nVWgHL4mNbPJs+7odNDxf3Lxuohy5KzF Se8USc1zZpt/E5ZxXvUyhsnmAZ8EJI6qcsWs8u8fQsQlt40xl5JT07Q4ai4JZo3CRtAb W4G7eEezxKefF2UL8X0Y1R5HabOhTiorUc/it6G+hpwV6Ox62vaHpBJo6n+TUuS0/EDw BZ8A==
X-Gm-Message-State: APjAAAXvBvCWEFiOSeYbUwgEtkz/xeyB6mX+HTbLdttl2PB5PEF1YGJt YLm4HRsj1dNMZuQbsxOEZfNlApkN
X-Google-Smtp-Source: APXvYqy4S5xTfEA0DoQt/u3USOlt90ttRztctB6PJgzzxuMSSMsKUp8w3osQdGKR6kozcXMxZX+20g==
X-Received: by 2002:a63:4757:: with SMTP id w23mr3835895pgk.115.1581373048623; Mon, 10 Feb 2020 14:17:28 -0800 (PST)
Received: from [192.168.178.30] (88.161.69.111.dynamic.snap.net.nz. [111.69.161.88]) by smtp.gmail.com with ESMTPSA id b3sm1354275pft.73.2020.02.10.14.17.26 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 10 Feb 2020 14:17:27 -0800 (PST)
Subject: Re: rfc4941bis: temporary addresses as "outgoing-only"?
To: Mark Smith <markzzzsmith@gmail.com>, Fernando Gont <fgont@si6networks.com>
Cc: 6MAN <6man@ietf.org>
References: <3217323b-3d8b-bf75-b5b0-ffdd01ee1501@si6networks.com> <CAO42Z2xtvjo_RO7kNsFCi4=S0TJKRest-8fEkvnwbC3rBNAj0A@mail.gmail.com>
From: Brian E Carpenter <brian.e.carpenter@gmail.com>
Message-ID: <ac38ca41-a148-470a-d2ba-26649f77e2f8@gmail.com>
Date: Tue, 11 Feb 2020 11:17:25 +1300
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.9.1
MIME-Version: 1.0
In-Reply-To: <CAO42Z2xtvjo_RO7kNsFCi4=S0TJKRest-8fEkvnwbC3rBNAj0A@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/ipv6/AEfWGFOYO8xc8p-ETWCL2wRLS_k>
X-BeenThere: ipv6@ietf.org
X-Mailman-Version: 2.1.29
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: Mon, 10 Feb 2020 22:17:32 -0000

On 11-Feb-20 09:46, Mark Smith wrote:
> 
> 
> On Tue, 11 Feb 2020, 03:13 Fernando Gont, <fgont@si6networks.com <mailto:fgont@si6networks.com>> wrote:
> 
>     Folks,
> 
>     Since we are at it, I wonder if rfc4941bis should say anything about the
>     use of temporary addresses for incoming connections. (see
>     https://tools.ietf.org/html/draft-gont-6man-address-usage-recommendations-04#section-4.3).
>     (e.g., "an implementation MAY....")
> 
>     Particularly for connection-oriented protocols, hosts that prevent
>     incoming connections on temporary addresses reduce exposure even when
>     their temporary addresses become "exposed" by outgoing sessions.
> 
>     i.e., if the model is that temporary addresses are employed for outgoing
>     connections, unless a host uses temporary-only, there's no reason to
>     receive incoming connections on temporary addresses. (e.g., browsing the
>     web or sending email should not be an invitation for folks to e.g.
>     port-scan you).
> 
> 
> This would prevent peer-to-peer connections between end-user devices, as it means devices become clients only, and they therefore cannot provide a temporary server/service.

If a node has a stable address as well as a temporary address, that isn't the case. However, I think it is rather out of scope for 6man to regulate this point. What might be good, but is also probably out of scope,
is a socket option to allow/disallow incoming connections to temp addresses, and a socket error code if they are disallowed and an upper layer tries to bind a socket to a temp address.

    Brian

> 
> So, for example, ad hoc file transfer applications like AirDrop couldn't work on a temporary address only and client-only end-user device.
> 
> https://en.m.wikipedia.org/wiki/AirDrop
> 
> 
> Peer-to-peer application communications architectures have the node effectively act as both a client and server at the same time, providing and receiving service concurrently.
> 
> A temporary "server"/service is useful and valid, the privacy issue for end-user devices comes about if the server/service had a permanent unique address or IID.
> 
> Forcing end-user devices to be clients only is actually the fundamental constraint that NAT has imposed on IPv4. Certain applications for which peer-to-peer communications architectures would be better are forced to adopt a client/server communication architecture just to be able to work in the presence of NAT.
> 
> Regards,
> Mark.
> 
> 
> 
> 
> 
>     The caveats here are:
> 
>     1) If a host does temporary-only, these are the only addrs you have, and
>     hence they should allow incomming connections
> 
>     2) It could be easily done for connection-oriented protocols such as
>     TCP, but not so easily (if at all possible) for e.g. connectionless
>     protocols.
> 
> 
>     As noted in
>     https://tools.ietf.org/html/draft-gont-6man-address-usage-recommendations-04#section-4.3
>     , *in theory* there are other ways in which the same effect could be
>     achieved... so one could certainly argue that this policy should not be
>     enforced on the addresses, but rather we should have a more appropriate
>     API that could allow apps to e.g. bind() subsets of all the available
>     addresses.
> 
>     Thoughts?
> 
>     Thanks!
> 
>     Cheers,
>     -- 
>     Fernando Gont
>     SI6 Networks
>     e-mail: fgont@si6networks.com <mailto:fgont@si6networks.com>
>     PGP Fingerprint: 6666 31C6 D484 63B2 8FB1 E3C4 AE25 0D55 1D4E 7492
> 
> 
> 
> 
>     --------------------------------------------------------------------
>     IETF IPv6 working group mailing list
>     ipv6@ietf.org <mailto:ipv6@ietf.org>
>     Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
>     --------------------------------------------------------------------
> 
> 
> --------------------------------------------------------------------
> IETF IPv6 working group mailing list
> ipv6@ietf.org
> Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
> --------------------------------------------------------------------
>