TeemIp / teemip-core-ip-mgmt

Core modules of TeemIP, a WEB based IP Address Management tool
https://www.teemip.net
GNU Affero General Public License v3.0
19 stars 12 forks source link

IPV6 constants prevent users to create valid blocks / subnets #13

Closed rockandska closed 12 months ago

rockandska commented 2 years ago

Hi,

The constants used here do not let users create valid IPV6 blocks /subnets.

Why not let users create /54 subnets for example ?

We could manually edit the generated php config file but will be erase in case of an update.

Regards,

Hipska commented 2 years ago

IPv6 subnets are always /64 by international convention. All above are considered subnet blocks in TeemIP.

Quote from Wikipedia:

The IPv6 subnet size is standardized by fixing the size of the host identifier portion of an address to 64 bits.

But anyway, if you want to modify these constants, you can do so by creating your own extension where they get overridden.

rockandska commented 2 years ago

IPv6 subnets are always /64 by international convention. All above are considered subnet blocks in TeemIP.

It is a recommendation not a strict rule

Quote from Wikipedia:

Quote from RFC5375

However, some network administrators have used prefixes longer than /64 for links connecting routers, usually just two routers on a point-to-point link. On links where all the addresses are assigned by manual configuration, and all nodes on the link are routers (not end hosts) that are known by the network, administrators do not need any of the IPv6 features that rely on /64 subnet prefixes, this can work. Using subnet prefixes longer than /64 is not recommended for general use, and using them for links containing end hosts would be an especially bad idea, as it is difficult to predict what IPv6 features the hosts will use in the future.

Using /64 subnets is strongly recommended, also for links connecting only routers. A deployment compliant with the current IPv6 specifications cannot use other prefix lengths. However, the V6OPS WG believes that despite the drawbacks (and a potentially expensive network redesign, if IPv6 features relying on /64 subnets are needed in the future), some networks administrators will use prefixes longer than /64.

The keyword here is "not recommended", not "strictly forbidden" and we are in a case described in RFC where network administrators are aware of the RFC and side effects of choosing a prefix < 64.

Regards,

Hipska commented 2 years ago

You are absolutely right, so for these not recommended use-cases it is possible to override the constants with your extension, so it even stays/works in case of updates.

xtophe38 commented 2 years ago

IMHO, when the RFC5375 quoted here above talks about networks with a prefix that is longer to /64, it actually refers to networks with fewer host bits, that is networks in the /65 - /128 range.

I must admit that the naming of IPv6 constants within TeemIp is probably confusing:

As @Hipska is mentioning: you may change these constants in you extension. But should you follow that path, I'd recommend you to thorough fully test to make sure that everything still work as expected.