user2253402
user2253402

Reputation: 101

Getting number of IPv6 addresses from Ipv6 CIDR in PHP

Is there a way to get the number of IPv6 addresses from a Ipv6 CIDR?

for example: CIDR: 2403:3E00::/32 => need get number of ipv6 addresses: 79228162514264337593543950336

Upvotes: 0

Views: 916

Answers (2)

user4271704
user4271704

Reputation: 763

2^(128-32) = 2^96 = 79228162514264337593543950336 

is wrong, you still need to

79228162514264337593543950336 - 1 = 79228162514264337593543950335 hosts

PS. sorry I could not comment it to the answer of Joachim because of reputation, this is why I am not much interested in stackoverflow.

Upvotes: 0

Joachim Isaksson
Joachim Isaksson

Reputation: 181027

An IPv6 address has 128 bits, of which (slightly simplified) a number are dedicated to network address, and the rest are dedicated to host addresses.

In your case, 32 bits are dedicated to the network part (/32), so the other 96 are dedicated to host addresses.

2^(128-32) = 2^96 = 79228162514264337593543950336 hosts

Upvotes: 0

Related Questions