Subject: Anotegr issue in rfc4291bis [was draft-lubashev-ipv6-addr-mask: IPv6 Address/Mask Notation]

From: Brian E Carpenter <[email-masked]>
Date: Wed, 29 Mar 2017 05:26:13 +1300

*Change of subject and mailing list*

On 29/03/2017 03:14, Mudric, Dusan (Dusan) wrote:
> RFC 4291 does not well define the address syntax. It combines the prefix and the address syntax into one:
> 
> Section 2.3
> "      the node address      2001:0DB8:0:CD30:123:4567:89AB:CDEF
>       and its subnet number 2001:0DB8:0:CD30::/60
> 
>       can be abbreviated as 2001:0DB8:0:CD30:123:4567:89AB:CDEF/60"
> 
> This is not a good example. The prefix-length of 60 does not mean the four bits after 'CD3' must be zero.

No, of course not, the example would be equally valid if it showed
 2001:0db8:0:cd3f:123:4567:89ab:cdef
 2001:0db8:0:cd30::/60
 2001:0db8:0:cd3f:123:4567:89ab:cdef/60

...
> The prefix-length should not be used in the address syntax (e.g. use 2001:0DB8:0:CD30:123:4567:89AB:CDEF address and not 2001:0DB8:0:CD30:123:4567:89AB:CDEF/60

If there is a / it is a prefix, I agree. I think the text is misleading for
that reason. This could be fixed in 4291bis. *The simplest way is to delete
the text starting
"When writing both a node address and a prefix of that node address"
through the end of the section*.

(As far as I can see, if we want to express as a single item both an
address and its applicable subnet prefix, we need new notation, e.g.
2001:db8:0:cd3f:123:4567:89ab:cdef//60.)

> The prefix syntax must define that all bits outside the prefix-length must be set to zero. So, fe90::/10, fe81::/10 are not the valid LL prefixes.

They are completely equal, because /10 says "only look at the first 10 bits".
It might be confusing, but it's not wrong IMHO.

Maybe we need RFC5952bis, because RFC5952 does not discuss prefix notation in detail.

    Brian

> 
> With these changes, do we still need the address mask?
> 
> Dusan
> 
> -----Original Message-----
> From: v6ops [mailto:[email-masked]] On Behalf Of Lubashev, Igor
> Sent: Tuesday, March 28, 2017 9:25 AM
> To: Fred Baker; Alexandre Petrescu
> Cc: v6ops list
> Subject: Re: [v6ops] draft-lubashev-ipv6-addr-mask: IPv6 Address/Mask Notation
> 
> The way I put it in the draft:
> 
> '[Sec 1.1] Depending on the context, netmask and prefix length notations can specify either a "group of addresses" or "a group of addresses and a specific address within that group". ...
> 
> [Sec 4.1] To be a valid definition for just a group of addresses, the address part MUST NOT have any bits outside of the mask set."' 
> 
> So it is all about the context.  I.e. the output of "ip addr" vs "ip route" on Linux.
> 
> - Igor
> 
> -----Original Message-----
> From: Fred Baker [mailto:[email-masked]] 
> Sent: Tuesday, March 28, 2017 7:56 AM
> To: Alexandre Petrescu <[email-masked]>
> Cc: v6ops list <[email-masked]>
> Subject: Re: [v6ops] draft-lubashev-ipv6-addr-mask: IPv6 Address/Mask Notation
> 
> 
>> On Mar 28, 2017, at 7:49 AM, Alexandre Petrescu <[email-masked]> wrote:
>>
>> Is there some mandate to mandate that the host bits are 0 when we talk about the subnet mask?
> 
> When we're talking about subnet masks (or lengths), we aren't talking about addresses. We identify an address (which might be ::) and give it a length, but that is simply for notational convenience - if an address is important, we don't have to specify it separately. The "prefix" part would be the bitwise AND of the address and the mask or length.
> _______________________________________________
> v6ops mailing list
> [email-masked]
> https://urldefense.proofpoint.com/v2/url?u=https-3A__www.ietf.org_mailman_listinfo_v6ops&d=DwICAg&c=BFpWQw8bsuKpl1SgiZH64Q&r=UT3Bk9cbLeaJxhf3iCrhIoUWB8YLZU23029sMQGQ2kY&m=PltSWhkoDeatKmZk5zfNYvyTAwOGGXs1QxoG61Typ2k&s=9uH3IB_DbRwssRzuN8MTq_GsOzak8m7UmOaFkoX1Gro&e= 
> 
> _______________________________________________
> v6ops mailing list
> [email-masked]
> https://urldefense.proofpoint.com/v2/url?u=https-3A__www.ietf.org_mailman_listinfo_v6ops&d=DwICAg&c=BFpWQw8bsuKpl1SgiZH64Q&r=UT3Bk9cbLeaJxhf3iCrhIoUWB8YLZU23029sMQGQ2kY&m=PltSWhkoDeatKmZk5zfNYvyTAwOGGXs1QxoG61Typ2k&s=9uH3IB_DbRwssRzuN8MTq_GsOzak8m7UmOaFkoX1Gro&e= 
> 
> _______________________________________________
> v6ops mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/v6ops
>

---

From: Brian E Carpenter <[email-masked]>
Date: Wed, 29 Mar 2017 07:16:04 +1300

1. If you are puzzled about "Anotegr" it's a badly mangled "Another"

2. I just had a conversation about this issue with the editor of rfc4291bis.
The issue really is that
2001:0db8:0:cd30:123:4567:89ab:cdef/60
is invalid if intended as a prefix and should be expressed as
2001:0db8:0:cd30::/60
but it's valid if intended as an address qualified by the applicable prefix.

The problem is that the syntax doesn't distinguish the legal from
the illegal use, because it does not express the intended interpretation.
So the interpretation and validity is context-dependent.

Regards
   Brian