]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
IPv4: experimental changes to allow net 0/8, 240/4, part of 127/8
authorMike Karels <karels@FreeBSD.org>
Tue, 24 May 2022 19:26:25 +0000 (14:26 -0500)
committerMike Karels <karels@FreeBSD.org>
Wed, 13 Jul 2022 14:46:05 +0000 (09:46 -0500)
commitefe58855f3ea2cfc24cb705aabce3bc0fe1fb6d5
tree18210c2b3bb1fccbba40fdc9f6e8aa5e0fdf642f
parentef221ff645322f0ec147c706652744869774e128
IPv4: experimental changes to allow net 0/8, 240/4, part of 127/8

Combined changes to allow experimentation with net 0/8 (network 0),
240/4 (Experimental/"Class E"), and part of the loopback net 127/8
(all but 127.0/16).  All changes are disabled by default, and can be
enabled by the following sysctls:

    net.inet.ip.allow_net0=1
    net.inet.ip.allow_net240=1
    net.inet.ip.loopback_prefixlen=16

When enabled, the corresponding addresses can be used as normal
unicast IP addresses, both as endpoints and when forwarding.

Add descriptions of the new sysctls to inet.4.

Add <machine/param.h> to vnet.h, as CACHE_LINE_SIZE is undefined in
various C files when in.h includes vnet.h.

The proposals motivating this experimentation can be found in

    https://datatracker.ietf.org/doc/draft-schoen-intarea-unicast-0
    https://datatracker.ietf.org/doc/draft-schoen-intarea-unicast-240
    https://datatracker.ietf.org/doc/draft-schoen-intarea-unicast-127

Reviewed by: rgrimes, pauamma_gundo.com; previous versions melifaro, glebius
Differential Revision: https://reviews.freebsd.org/D35741
share/man/man4/inet.4
sys/net/vnet.h
sys/netinet/in.c
sys/netinet/in.h
sys/netinet/ip_icmp.c