What gets even more confusing to trying to do it for IPv6 addresses. The numbers becomes so large it's impossible to do the math. Then I was doing some testing with those Online CIDR calculators and IPv6 ranges and they all spit out different results, so they are not reliable. I only found one...