Question:
When I convert the IP address 192.168.115.67 to a number, is it done like this:
192*2563 + 168*2562+115*2561+67*2560 = 3232265027
or like this:
192*2560 + 168*2561+115*2562+67*2563 = 1131653312
I find both variants online, and frankly it doesn't matter as long as I do all the internal IP-range comparison using the same conversion process variant.
But I want to calculate the IP V6 from the IPv4 address, and it seems both variants are on the web...
resulting in different IPv6 addresses, and only one can be correct...
I use the 1131653312 variant, as 1131653312 is the variant I saw .NET giving me, but 3232265027 is the variant I used when I did it in C++, and that is also the variant I find on the web for IPv4 to IPv6 conversion, and which I used before I saw that .NET uses variant 1131653312 ...
The method resulting in 3232265027
should be correct, as the first number is stored in the highest bits of the IPv4 compatibility part of IPv6:
0000:0000:0000:0000:0000:ffff:AABB:CCDD
where
AA = 192
BB = 168
CC = 0
DD = 1
etc.
https://wikipedia.org/wiki/IPv6
Also, you can't have a 256
in an IP address. The values are 0 - 255 each.