logoalt Hacker News

gucci-on-fleekyesterday at 7:56 AM1 replyview on HN

In my experience, the IPv6 protocol is much simpler than the IPv4 protocol. However, the IPv6 tooling and documentation is still worse than it is with IPv4, and dual-stack is inherently going to be more complicated than implementing any single protocol, so I do have some sympathy towards "IPv6 is hard".

For example, the IPv6 packet structure [0] is much simpler than the IPv4 packet structure [1]; SLAAC [2] is much simpler than DHCPv4 [3]; IPv6 multicast [4] is much simpler than IGMP [5]; IPv6's lack of NAT simplifies peer-to-peer networking compared to IPv4; ULAs [6] prevent the annoying address conflicts you get with IPv4 [7]; etc.

[0]: https://en.wikipedia.org/wiki/IPv6_packet#Fixed_header

[1]: https://en.wikipedia.org/wiki/IPv4#Packet_structure

[2]: https://en.wikipedia.org/wiki/IPv6_address#Stateless_address...

[3]: https://en.wikipedia.org/wiki/Dynamic_Host_Configuration_Pro...

[4]: https://en.wikipedia.org/wiki/IPv6#Multicasting

[5]: https://en.wikipedia.org/wiki/Internet_Group_Management_Prot...

[6]: https://en.wikipedia.org/wiki/Unique_local_address

[7]: https://stackoverflow.com/a/52374482/30512871


Replies

j16sdizyesterday at 8:08 AM

ULA give more trouble than what it solves.

Almost all computer have multiple interface (virtual or not). Application now need to know which interface the destination is on, and there is no easy data structure to store the interface

show 2 replies