RE: Running code (Was: I-D Action: draft-ietf-6man-ipv6only-flag-03.txt)

"Manfredi (US), Albert E" <albert.e.manfredi@boeing.com> Fri, 26 October 2018 19:49 UTC

Return-Path: <albert.e.manfredi@boeing.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 8AB57130DDA for <ipv6@ietfa.amsl.com>; Fri, 26 Oct 2018 12:49:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Level:
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
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 k17JIW4Fa2AX for <ipv6@ietfa.amsl.com>; Fri, 26 Oct 2018 12:49:49 -0700 (PDT)
Received: from clt-mbsout-02.mbs.boeing.net (clt-mbsout-02.mbs.boeing.net [130.76.144.163]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0FEA3128A6E for <ipv6@ietf.org>; Fri, 26 Oct 2018 12:49:48 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by clt-mbsout-02.mbs.boeing.net (8.14.4/8.14.4/DOWNSTREAM_MBSOUT) with SMTP id w9QJnl09011207; Fri, 26 Oct 2018 15:49:47 -0400
Received: from XCH16-01-10.nos.boeing.com (xch16-01-10.nos.boeing.com [144.115.66.5]) by clt-mbsout-02.mbs.boeing.net (8.14.4/8.14.4/UPSTREAM_MBSOUT) with ESMTP id w9QJnjR7011192 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=OK); Fri, 26 Oct 2018 15:49:45 -0400
Received: from XCH16-01-11.nos.boeing.com (144.115.66.39) by XCH16-01-10.nos.boeing.com (144.115.66.5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.1.1466.3; Fri, 26 Oct 2018 12:49:44 -0700
Received: from XCH16-01-11.nos.boeing.com ([fe80::a96c:5d85:1337:4323]) by XCH16-01-11.nos.boeing.com ([fe80::a96c:5d85:1337:4323%4]) with mapi id 15.01.1466.003; Fri, 26 Oct 2018 12:49:44 -0700
From: "Manfredi (US), Albert E" <albert.e.manfredi@boeing.com>
To: Simon Hobson <linux@thehobsons.co.uk>, 6man WG <ipv6@ietf.org>
Subject: RE: Running code (Was: I-D Action: draft-ietf-6man-ipv6only-flag-03.txt)
Thread-Topic: Running code (Was: I-D Action: draft-ietf-6man-ipv6only-flag-03.txt)
Thread-Index: AQHUbJuG2Zjjso5+/km4+87SaUMNqaUwfHjwgAE2LoCAACLHMIAAg2aA//+OfUA=
Date: Fri, 26 Oct 2018 19:49:44 +0000
Message-ID: <a3a2d823c38f44d48b301e2ca657e352@boeing.com>
References: <CAFU7BASO_ByzbanhLKnWV280O_fASd-8W+ujpj3sN6d2-whw2w@mail.gmail.com> <CACWOCC-u7aAPwAOcixYvt2On=-o_8X25GhqdXTfA+tWRC1o2XA@mail.gmail.com> <3beca72e-19c5-10af-02e5-c21a90d77100@gmail.com> <20181019.223739.271916573.sthaug@nethelp.no> <4f58643c-272e-507e-3282-c87befd42395@gmail.com> <0927741c-4e8e-fcf7-ddd6-3ba500ba4c3d@si6networks.com> <7B48A11D-31DE-443C-B73A-14642EA0A397@jisc.ac.uk> <7526af75-4359-6fc6-e39b-eb94024a04de@si6networks.com> <E1BB1232-C1A2-496A-8157-0682D91EED42@steffann.nl> <5E75F3CA-F1D2-4F4F-9CF7-EEEE59634C1E@gmail.com> <C46C990E-0A4F-4731-8CB1-FD204858935E@consulintel.es> <9B53019C-3506-4C9E-AFCF-D6125FA1A65B@gmail.com> <1157b739-3a66-8d45-e3e1-e5f904dfb9bc@asgard.org> <a00607f9-7ced-f889-b5cb-c2fe16367d73@si6networks.com> <66759b73-0a22-e1a9-49db-21154e8e1267@gmail.com> <37ba23b3-df19-9c2a-bdbe-ba7a99d72d05@si6networks.com> <0d6008a4-337b-2ccb-2d9f-837f786eca65@gmail.com> <bfa4397a-aa7a-1184-4147-4cbfbfd13603@si6networks.com> <8C587906-F0EE-4A61-9046-2BF AC52588C0@isc.org> <E8DE18B5-94FC-411C-A310-E49A382E0079@thehobsons.co.uk> <e0fa8fad1b4249c9af79788323b0a922@boeing.com> <3A03A073-72E2-43A8-90A4-5C29DF445361@thehobsons.co.uk> <27fdbd71125842d888c5136684bf6e7b@boeing.com> <9A4368D6-E4B1-474C-9838-B584AF6D70C8@thehobsons.co.uk>
In-Reply-To: <9A4368D6-E4B1-474C-9838-B584AF6D70C8@thehobsons.co.uk>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [137.137.12.6]
x-tm-snts-smtp: C5A610D4EE0A944578534A13CF3F6ED80B6B54B73FE8B0A76BB9E76FE27F37092000:8
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-TM-AS-GCONF: 00
Archived-At: <https://mailarchive.ietf.org/arch/msg/ipv6/pQbZrhnDtSXEPrqJa7kXkq9TKKY>
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: Fri, 26 Oct 2018 19:49:51 -0000

-----Original Message-----
From: ipv6 <ipv6-bounces@ietf.org> On Behalf Of Simon Hobson

>> And these pose no problem at all. They would exist even if they were connected, and even if all of the IPv6 routers had that IPv6-only flag set. It will always be possible to create such IPv4 networks that have no DNS and no routing.
>> 
>> If I were to design a heuristic, at a time when IPv4 is actually being sunset, I would have the host always try IPv6 first. If it works, don’t even try IPv4. You try IPv4 only if IPv6 doesn’t work, or doesn’t work for a particular destination.
>
> Bzzzt, fail. You've just designed hosts which break their networking. So you try IPv4 if you can't reach a destination by IPv6 - but how do you even know about an IPv4 destination if you are relying on (for example) mDNS to find them ? If you configure IPv4 so as to be able to find them, then you've defeated one of the main points of doing this in the first place which is to avoid expending battery power on doing IPv4 when it's not required.

I will mostly assume that L2 filtering is NOT available, since that was stipulated as an extra obstacle. Your host device has a link to a destination. It tries to reach that link. Chances are, mDNS won’t have the address of any destination outside of this admin domain, but either way, a network which does not support IPv4 will not provide IPv4 addresses. No IPv4 address from mDNS or regular DNS, no further IPv4 attempt by the host device.

Besides which, if your host always tries IPv6 first, and it consistently works because your network TRULY IS IPv6-only, then you will rarely run into this problem. And if you do, the timeout timers can be adjusted so you don’t sit there waiting forever, before getting a destination unreachable notification.

> Desired result - on a network that is, by the subjective criteria decided on by the network operator/admin, IPv6 only; you disable IPv4 and don't try sending IPv4 packets.

Not even the flag will achieve this "desired result." As I said, IPv4 islands are always permissible (plug in your own switch(es)), and, you have no idea whether someone will plug in some older IPv4-only device. Only L2 filtering will truly disable IPv4 from the nodes controlled by the net admin. Having the hosts alone make that IPv6-only determination is, in fact, very close to the best you can do with a flag.

> Put another way, you can connect to network A and be expected to disable IPv4; but connecting to network B which may look exceedingly similar, you do not disable IPv4. The decision whether you should or not is down to a subjective choice made by a human - now write your heuristics to do that.

It's just not that big of a deal. Plus, it is possible to give the user a setting, such as many settings already are:

1. Allow host to use IPv6 and IPv4 (recommended - default)

2. Use only IPv6.

The recommended default will naturally be used most of the time, and it will work just fine. Any extra chatter for IPv4 attempts will be kept to a minimum, and in an IPv6-only network, will only happen if IPv6 is screwing up. Plus, L2 filtering will keep network devices free of any IPv4.

Bert