First of all I would like to say, the world ran out of IPv4 addresses to allocate many years ago, in fact parts of the internet only operate on IPv6. Many countries have mandatory requirements for new services and equipment to support IPv6. We are slowly transitioning.
Further more the address space for private IPv4 adresses given in RFC 1918 is quite small. In a world of complex networks, and businesses merging and splitting up this is a headache for many network administrators. The solution is messy NAT/PAT solutions. This works well enough for some services like HTTP, but is more challenging for other protocols.
Any serious product today should support IPv6 all the way. This means proper IPv6 support should be established in BalenaOS, also for container communication.
I have tried to enable IPv6 in daemon.json with the result of tripping up balena-engine.
I have tried other approaches that where impractical or failed.
In the end I made it work through docker-compose.yml version 2.4
But as far as I can tell, IPv6 is not supported for containers officially. If so there should be documentation in place. Running something like IPv6 in production without the Balena team’s commitment is bad business.
I would argue that IPv6 and IPv4 should be default enabled, and that both IPv6 and IPv4 should be easy to disable if required.