> 7. give every device its own public IP by default.
Both of these are optional. Don’t want them? Don’t use them - if you don’t configure them, it won’t happen.
> 6. make routers accept inbound connections by default
That’s not a new feature with v6.
> Like I own 8.8.8.8. You want to add more bits, fine, I'm 8.8.8.8.0.0.0.0 now. If anyone switches to the new thing, they know where to find me.
Now you (and everything in between) have to be able to handle packets addressed to 8.8.8.8 and 8.8.8.8.0.0.0.0, so you’ve done point 4 without knowing it.
Oh I mixed it up with 3. Yes you don't need #4. I could still have 8.8.8.8 routed to me in v-next, and then later do something with 8.8.8.8.1, so it's 1:1 but not onto. Instead v6 did completely new /64s with random addrs inside, no association with the v4 addrs.
About the others being optional, no they aren't really, because most devices will implement the minimum. Android doesn't support dhcp6. My router is like most and has no option to enable dhcp6 or nat6 anyway.
Ipv6 spec also says that a router could either default allow in or not via its firewall. In reality it's usually default deny, but not always, hence the freakouts people have about security in v6. V4 spec doesn't know about NAT, but in real life the answer is no you don't get inbound connections or even a publicly routable address unless you deliberately configured that.
> I could still have 8.8.8.8 routed to me in v-next, and then later do something with 8.8.8.8.1
"v-next" 8.8.8.8 isn't the same thing as IPv4 8.8.8.8, so you now have two "interfaces" running different versions of IP with identical addresses.
> because most devices will implement the minimum. Android doesn't support dhcp6. My router is like most and has no option to enable dhcp6 or nat6 anyway.
Sucks to be you but irrelevant to the protocol.
> Ipv6 spec also says that a router could either default allow in or not via its firewall.
Just like in IPv4 - in the pre-NAT world (or if your ISP assigned you a block of v4 addresses), if you were connecting a device to the public internet it would have be assigned a routable v4 address and it would be up to the administrator what traffic they accepted.
> "v-next" 8.8.8.8 isn't the same thing as IPv4 8.8.8.8, so you now have two "interfaces" running different versions of IP with identical addresses.
Yes that's what I wanted. You don't do #4 that way. But that doesn't mean entirely separate networks, as they share the same DHCP, DNS, NAT, and so on. Maybe separate ifaces on the host.
> Sucks to be you but irrelevant to the protocol.
The protocol defined SLAAC as the default. If everyone's holding it wrong, maybe the protocol sucks.
> Just like in IPv4 - in the pre-NAT world
We're not in the pre-NAT world of ipv4. That was decades ago.
and
> 7. give every device its own public IP by default.
Both of these are optional. Don’t want them? Don’t use them - if you don’t configure them, it won’t happen.
> 6. make routers accept inbound connections by default
That’s not a new feature with v6.
> Like I own 8.8.8.8. You want to add more bits, fine, I'm 8.8.8.8.0.0.0.0 now. If anyone switches to the new thing, they know where to find me.
Now you (and everything in between) have to be able to handle packets addressed to 8.8.8.8 and 8.8.8.8.0.0.0.0, so you’ve done point 4 without knowing it.