Весьма занятное, я бы даже сказал — фундаментальное чтиво (The world in which IPv6 was a good design): https://apenwarr.ca/log/20170810 (pdf)
Anyway, I digress. The salient detail here is that unlike real IP services, bootp and DHCP need to know about ethernet addresses, because after all, it’s their job to hear your ethernet address and assign you an IP address to go with it. They’re basically the reverse of ARP, except we can’t say that, because there’s a protocol called RARP that is literally the reverse of ARP. Actually, RARP worked quite fine and did the same thing as bootp and DHCP while being much simpler, but we don’t talk about that.
И небольшое ревью спустя три года, не менее фундаментальное, чем предыдущая статья (IPv4, IPv6, and a sudden change in attitude): https://apenwarr.ca/log/20200708 (pdf)
И немного рекламы после ревью: Tailscale+WireGuard. Авторы в этих сервисах видят решение основной нерешённой проблемы ipv6 — коннективити при смене ip-адреса:
IP mobility is what we do, in a small way, with Tailscale’s WireGuard connections. We try all your Internet links, IPv4 and IPv6, UDP and TCP, relayed and peer-to-peer. We made mobile IP a real thing, if only on your private network for now. And what do you know, the math works. Tailscale’s use of WireGuard with two networks is more reliable than with one network.
Also: hilbert map of IPv4 address space, same for IPv6