Hacker Timesnew | past | comments | ask | show | jobs | submitlogin

> Stop remembering numbers meant for a machine, and use DNS

This is not a good solution. A lot of times people use IPs because DNS is not available or is more complex to set up. Say you are:

- Setting up and configuring a network. - Setting up the firewall. - Inspecting traffic and seeing where it goes. - Verifying that the DNS resolutions are being done correctly.

Most people already use DNS, because it's more comfortable. But anything that requires working with the network is now going to be much more complicated. For example, I can remember some network prefixes and know whether they are in building A or building B. IPv6 makes that much, much more difficult.

Also, the numbers are not even that well meant for a machine. Text representation of IPv4 is easy to detect. IPv6 representation? Good luck with that.

All of that because of the decision of using 128 bits instead of 64. 2^64 address would be more than enough, representable without issues in usual data types (uint64_t is a standard C type, uint128_t is not) and the problem of ipv6 representation would be far less relevant.



> A lot of times people use IPs because DNS is not available or is more complex to set up.

For the rare cases where a memorized IPv4 address was reasonable you should just assign simple IPv6 addresses ending in a short suffix like ::1. The prefix can be 64 bits or less, which isn't too much to remember, and will be the same for the entire network.

> For example, I can remember some network prefixes and know whether they are in building A or building B. IPv6 makes that much, much more difficult.

Nothing prevents you from assigning visually distinctive prefixes to different buildings. The larger address space actually makes this much easier. For example, you could use xxxx:yyyy:zzzz:a::/64 for every host in building A.


> Text representation of IPv4 is easy to detect. IPv6 representation? Good luck with that.

This regex will detect any IPv6 address:

    ([0-9A-Fa-f]*:){2}[0-9A-Fa-f:.]*
Then you can feed matches to a real address parser to filter out false positives.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: