Re: New Version Notification for draft-hinden-ipv4flag-00.txt

Erik Kline <> Sat, 18 November 2017 13:12 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 9FABB126DEE for <>; Sat, 18 Nov 2017 05:12:51 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -0.801
X-Spam-Status: No, score=-0.801 tagged_above=-999 required=5 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (2048-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id 5DWK9iDh4KuL for <>; Sat, 18 Nov 2017 05:12:50 -0800 (PST)
Received: from ( [IPv6:2607:f8b0:4002:c05::233]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 37D071200E5 for <>; Sat, 18 Nov 2017 05:12:50 -0800 (PST)
Received: by with SMTP id j198so2676246ywg.9 for <>; Sat, 18 Nov 2017 05:12:50 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=F/Eis+jKzf4MChwtulHhUYPfQPowWyPexu6MnOr/ceU=; b=G9KdUrqRUr/RkCAPK8qqOX7sMjbATO88IV/iDzzh3kC/fV5oaJTPZ1/Pei2+B5Cpaf JroSaxCOCo7K+nQ5IeuWaZd2mjOVjWr1+xCghKm9L4hygC3V/NZljLVyKS4DLLf1aIeP pDsZlv+Js7mGi8GndhtBlkyqPhZHNGqZB/hpHkJEwchNZfd2bUKB271Ey8c1pKsL536N D4RDigcG/BqGKL1faaPnLoowQDSsoqrQZivmxApEe/ijhGmF8n6RgZgr1LWvu39E+4FQ a5I24tWiDhkAw4nTOMM+kyGxiyG+PWBy3eTA+ps13/j46NCObQHHM5FTGAvl8I4MoOun ePcA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=F/Eis+jKzf4MChwtulHhUYPfQPowWyPexu6MnOr/ceU=; b=o4pRRsrneIyuEx8wqzIXxKk/iF48ejqXNWb0FCVrKZ6Wo7srCb/Or/U4SDIlieE6aq H+/VuRQgFYNnJvRAgVQzHaMMmvO7R0V3mrwO+4vAj4RboDbix6QnlBzxVRYWHl6lB9Kv rSOTwphGmUgSMtp0l2IdnnzDqUfDyo+805OpgJA1ll4FYw2yMe9Ibeun500MZg5JddBI WgXKup3mr0D+o3nxikNthD/4zv+NYGYoxxoq+30Cif1O77PS+K+OjeIOnyJTUNh39upw /VTdzJwfDb43QkkySjEdnUWNXQQpPUVMH0C2TnyxcGev5fskqf3YzrbIlYW//0hJ5G+8 IBcw==
X-Gm-Message-State: AJaThX6oGTYQZhkJTGF3jKxjur+L7jWPKb5uPSi3PgQjaW/KS3KS/wHI gx1xAEUVSuuDp31e15TWCAS38eIOKZU+3d77pojCPA==
X-Google-Smtp-Source: AGs4zMaI0OfaN2hKcB8SAoHffFxZ+tDa1hvp5y43eSK6MYsrjbc3YTABG6Ld2xKp6uJkfANQ3ZfdHQ/GmAd/cCjsd7M=
X-Received: by with SMTP id v125mr5096760ywf.442.1511010769038; Sat, 18 Nov 2017 05:12:49 -0800 (PST)
MIME-Version: 1.0
Received: by with HTTP; Sat, 18 Nov 2017 05:12:28 -0800 (PST)
In-Reply-To: <>
References: <> <>
From: Erik Kline <>
Date: Sat, 18 Nov 2017 22:12:28 +0900
Message-ID: <>
Subject: Re: New Version Notification for draft-hinden-ipv4flag-00.txt
To: Bob Hinden <>
Cc: IPv6 List <>
Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256; boundary="001a114f221a2c8fec055e419cfb"
Archived-At: <>
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: "IPv6 Maintenance Working Group \(6man\)" <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Sat, 18 Nov 2017 13:12:52 -0000

I like this, and it seems similar to something that came out of some
sidebar conversations I was having in Singapore.

Here are a few changes I might suggest, followed by how I could see
implementing such a thing in an OS like Android.

    [1] I would propose making it an EFO bit and leave the reserved
bits for potentially more IPv6-critical information signaling.

    [2] I would not say that 0 means "IPv4 is Available on this
Router" but rather "this router makes no attestation about the
availability or lack thereof of IPv4".

The actual implementation that I could see being reasonable is as follows.

Because every OS starts IPv4 and IPv6 configuration paths in parallel
on link-up/link-attach, I think the most reasonable thing to do is to
interpret this flag as the "save your electrons flag".

In Android I think I would propose that we consider the bit only after
we have satisfactory global IPv6 provisioning, which I would define

    [a] at least one valid (i.e. non-deprecated), non-ULA, GUA

    [b] at least one valid (i.e. non-deprecated) default route

    [c] at least one valid (i.e. non-deprecated) DNS server

Additionally, we could include a successful internet connectivity
check as a requirement, just to make sure we keep trying IPv4 until
any captive portal has been passed.

Finally: once IPv6 can be categorized as "working", and we saw no
other RAs with 0 in the extended flags options nor any RAs without
extended flags options, and we hadn't yet found any DHCPv4 server,
then we could use the "save your electrons" flag as a signal to stop
our DHCPv4 client.  Operating Systems that implement IPv4 link-local
communications (Android does not) might use this signal to disable
that as well.