From nobody Wed Nov 10 22:26:29 2021
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 064B41841098;
	Wed, 10 Nov 2021 22:26:31 +0000 (UTC)
	(envelope-from mike@karels.net)
Received: from mail.karels.net (mail.karels.net [216.160.39.52])
	by mx1.freebsd.org (Postfix) with ESMTP id 4HqKFf4QNMz3FZK;
	Wed, 10 Nov 2021 22:26:30 +0000 (UTC)
	(envelope-from mike@karels.net)
Received: from mail.karels.net (localhost [127.0.0.1])
	by mail.karels.net (8.16.1/8.16.1) with ESMTP id 1AAMQTAo020110;
	Wed, 10 Nov 2021 16:26:29 -0600 (CST)
	(envelope-from mike@karels.net)
Received: from [10.0.2.130] ([10.0.1.1])
	by mail.karels.net with ESMTPSA
	id oEQJORVHjGGMTgAA4+wvSQ
	(envelope-from <mike@karels.net>); Wed, 10 Nov 2021 16:26:29 -0600
From: Mike Karels <mike@karels.net>
To: Gleb Smirnoff <glebius@freebsd.org>
Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org,
        dev-commits-src-main@freebsd.org
Subject: Re: git: 20d59403961d - main - kernel: deprecate Internet Class A/B/C
Date: Wed, 10 Nov 2021 16:26:29 -0600
X-Mailer: MailMate (1.14r5818)
Message-ID: <90C05BCC-D4B6-43F9-95B1-D072EBA3703A@karels.net>
In-Reply-To: <YYv1oJN/pNp/+n2m@FreeBSD.org>
References: <YYtpRVV0oZk4u9Z1@FreeBSD.org>
 <202111101536.1AAFa311018767@mail.karels.net> <YYv1oJN/pNp/+n2m@FreeBSD.org>
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
Sender: owner-dev-commits-src-main@freebsd.org
X-BeenThere: dev-commits-src-main@freebsd.org
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
X-MIME-Autoconverted: from 8bit to quoted-printable by mail.karels.net id 1AAMQTAo020110
X-Rspamd-Queue-Id: 4HqKFf4QNMz3FZK
X-Spamd-Bar: ----
Authentication-Results: mx1.freebsd.org;
	none
X-Spamd-Result: default: False [-4.00 / 15.00];
	 REPLY(-4.00)[]
X-ThisMailContainsUnwantedMimeParts: N

I=E2=80=99m going to top-post my reply to highlight this question:
It is proposed to revert the change to the default mask when setting
an Internet interface address without a mask, returning to the use of
the Class A/B/C mask as the default.  We would still warn if there
was no mask supplied, except on loopback and point-to-point interfaces.

Does anyone object, or otherwise have comments?

		Mike

On 10 Nov 2021, at 10:38, Gleb Smirnoff wrote:

> On Wed, Nov 10, 2021 at 09:36:03AM -0600, Mike Karels wrote:
> M> > The new /24 default is no better than classes. The only difference
> M> > that classes maintained POLA and new default doesn't. For example,
> M> > in my home network I have default router 10.0.0.1 and since it is
> M> > class A network on my VMs and test boxes I can type
> M>
> M> > # ifconfig vtnet0 10.6.6.6
> M>
> M> > and that is going to work. With this change no longer.
> M>
> M> I suspect that /8 is by far the minority these days, even with a
> M> "Class A" net.  I also use net 10 at home, and at the last several j=
obs,
> M> but it is subnetted in each case.  I would peridically add an addres=
s,
> M> forgetting a mask, only to find that a route for 10/8 isolated the m=
achine.
>
> The 10/8 can be used at home as a huge personal address space, just lik=
e
> a /64 IPv6 prefix. All addresses added without masks and everything wor=
ks.
>
> M> That said, my main objective was to deprecate usage without a mask, =
and
> M> to warn in that case.  Both the kernel and ifconfig now warn when a =
default
> M> mask is used.  In the discussion on freebsd-net and in the review, t=
he
> M> main thought was that masks should be required.  But it isn't practi=
cal to
> M> fail and return an error with no mask, at least not without a signif=
icant
> M> period with warnings, or some systems would stop coming up on the ne=
twork.
> M>
> M> One reviewer was going to comment on the /24 default, but thought it=
 was
> M> better than the previous.  I'm open to hearing more opinions.
>
> Although I don't internally agree that we really need to police people =
to
> always specify masks, I would make step forward and agree with that. So=
,
> let's do print loud warning on every attempt to set IP address without =
a
> mask. But I can not agree that change from class based guess to /24 is =
a
> right thing to do. A proper deprecation process goes like this:
>
> Step 1: Print warning, don't change legacy behavior.
> <... people adopt ...>
> Step 2: Return error. Remove deprecated behavior.
>
> What we did is that we changed behavior together with warning. The new
> behavior is neither the legacy one nor the desired one, where mask is
> a must. Look from a user perspective: for class C nothing changed, but
> changed for A and B.
>
> --=20
> Gleb Smirnoff