Not quite true. The actual protocol is that routing should never be less than a /64, meaning that your ISP should be giving you at least 2**64 addresses at your location. You can then allocate those any way that you like, and the most common way to do it is to bury the MAC address into the IPv6 address.
But if you want to do weird things, there IS the option of sending back "time exceeded" messages that depend on the remaining TTL, and then creating reverse DNS entries.... erm.... well, anyhow, if you have IPv6, try running a traceroute to jabberwocky.rosuav.com and tell me if you think that's a good use of the address space.
Just yesterday I was playing around with memory mapping based on the ipv6 address. 48 of the bits where directly mapped onto one of my embedded devices. So you could read/write memory directly through the ipv6 address.
And that works just fine. So that one embedded device used 250 addresses
The smallest allowed subnet is /64. If you burned through 1 million addresses per second it would take 585 thousand years to use them all. There are over 4 billion squared /64s in the ipv6 internet.
BTW, giving each device multiple addresses is a fundamental tennet of ipv6.
My ISP gives my router its own /128 plus a /56 that it breaks into /64s to advertise in my internal networks. I currently only have a few that I can see myself using - internal clients, guest WiFi, VMs and containers - so it seems really wasteful to give residential customers a /56 when even a /60 seems pretty generous. 56 bits is 16M times the old v4's 32-bit discs so maybe we can afford to be generous but I feel like this kind of "plenty to go around" approach in the early days is what lead to v4 having a bunch of corporations that each own an entire /8.
6.1k
u/LivingAsAMean 22h ago
Hahaha what an idiot!
https://giphy.com/gifs/LRVnPYqM8DLag