> There are countless threads online on forums like Hacker News, Reddit where people who never really got comfortable with idea of IPv6 It’s clumsier than ipv4. It’s unnecessary since NAT was invented. In practice IPv6 requires dual stack, which means twice as many firewalls, names and routes to manage — so 4x the debugging because you have 2 dimensions that can either be working or failing. Addresses are too long to…
... and annoying casting from `sockaddr ` to either `sockaddr_in ` or `sockaddr_in6*` while you pass around a socklen_t. 10 years ago I was all gung-ho about IPv6, but it's annoying at every level.
Having to deal with the separate socklen_t is mildly annoying, but you can just make a little struct that holds both.