I think I have found an issue with BGP not sending communities on IPv6 internal peers - however, before I open a TAC case, and given that this is probably a corner-case of circumstances I'm wondering if anyone else has seen this.
Two X450a switches and a Cisco router in the same AS. The X450s are originating a bunch of IPv4 routes and IPv6 routes, and setting the same community on all of them. The X450s and the Cisco then connect to another AS.
IPv4 works exactly as expected, the communities are advertised to all neighbours.
With the IPv6 peerings, on the router in the other AS, I can see the community is set on the IPv6 routes learned from the X450s, so that works as expected.
However, on the Cisco in the same AS as the X450a I don't see the community set on any of these routes.
Mirroring the port that faces the Cisco on one of the X450s, a packet capture shows the BGP update messages from the X450a do not contain any community information for the IPv6 prefixes.
I do have 'config bgp neigh x send-community both' on all IPv4 and IPv6 peerings - and it clearly works for both IPv4 and the IPv6 EBGP peers as I can see the community set on the routes at the other end. It is just the IPv6 IBGP that fails.
I've tested this with 126.96.36.199p14 (being X450a switches I can't easily run a higher code rev, and don't have any X460s in the lab to try with most recent code).