Pleroma does not try to federate over IPv6
It is unclear if an IPv6-only Pleroma can federate at all at this time. My suspicion is that it will not and cannot without at least changing erl_inetrc configuration.
This is not a problem unique to Pleroma, but the Erlang/OTP ecosystem expects you to make decisions at a higher level.
Currently we ship with Hackney being used via Tesla as the default HTTP client. Hackney won't connect over IPv6 unless you specify connect_options: [:inet6]
[1], but this forces everything to be IPv6. That's bad news.
Gun, another HTTP client we support, has grappled with this as well [2].
There currently is not an available "happy eyeballs" solution that can be used, but it may land in Gun. Until then, a viable option is to use this inet64_tcp [3] module which hijacks the TCP socket calls and attempts to use IPv6/AAAA records first if they're available. This supposedly will make Erlang/Elixir able to communicate with some hosts that are IPv6-only without requiring the applications to be modified to intentionally open IPv6 sockets for them. However, if you are in a true IPv6-only environment a simpler solution is to set {tcp, inet6}.
in your erl_inetrc [4]. This will force all TCP sockets to open with the inet6 module.
[1] https://danschultzer.com/posts/ipv6-only-network-in-elixir
[2] https://github.com/ninenines/gun/issues/188