Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 11 Nov 2021 09:12:53 -0500
From:      George Neville-Neil <gnn@neville-neil.com>
To:        Mike Karels <mike@karels.net>
Cc:        Gleb Smirnoff <glebius@freebsd.org>, 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
Message-ID:  <C37059A2-BD20-4C99-A455-3AA9292EB57B@neville-neil.com>
In-Reply-To: <90C05BCC-D4B6-43F9-95B1-D072EBA3703A@karels.net>
References:  <YYtpRVV0oZk4u9Z1@FreeBSD.org> <202111101536.1AAFa311018767@mail.karels.net> <YYv1oJN/pNp/%2Bn2m@FreeBSD.org> <90C05BCC-D4B6-43F9-95B1-D072EBA3703A@karels.net>

next in thread | previous in thread | raw e-mail | index | archive | help
I actually think that this is a reasonable solution.

Best,
George

On 10 Nov 2021, at 17:26, Mike Karels wrote:

> I’m 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 jobs,
>> M> but it is subnetted in each case.  I would peridically add an address,
>> M> forgetting a mask, only to find that a route for 10/8 isolated the machine.
>>
>> The 10/8 can be used at home as a huge personal address space, just like
>> a /64 IPv6 prefix. All addresses added without masks and everything works.
>>
>> 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, the
>> M> main thought was that masks should be required.  But it isn't practical to
>> M> fail and return an error with no mask, at least not without a significant
>> M> period with warnings, or some systems would stop coming up on the network.
>> 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.
>>
>> -- 
>> Gleb Smirnoff



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?C37059A2-BD20-4C99-A455-3AA9292EB57B>