I have some thoughts about features to really defeat this. We've got an entry on our feature queue for guard nodes you can run in the cloud and have also researched implementing a form of "light" onion routing. It wouldn't be intended to be as strong (or as slow) as Tor, but sufficient to prevent passive dragnet surveillance.
In any case there is a conflict here between goals. So far the performance, rapid startup, and enterprise goals have won out over the small privacy benefit of the ephemeral-outer-key construction. It's a scope thing. So far we've never scoped ZeroTier as a meta-data-concealing protocol like Tor, just as a P2P mesh protocol for easy remote access between devices and locations.
Still... it's tempting to try to find something in the V2 design to at least mitigate this issue. It's something we're thinking about.
I think a TL;DR on my reply above:
I think the difference in privacy between identity(ephemeral(x)) and ephemeral(identity(x)) is not significant. It's more honest to tell people that our product offers only content privacy not meta-data privacy unless we are truly implementing strong countermeasures against tracking by ISPs or others that can pervasively sniff the net. Just nixing the identity key visibility is not a strong countermeasure for the reasons I described.
Does this mean that any node along the network path would be able to track communications between nodes? Maybe a snoop wouldn't be able to pin an envelope to a named identity, but they would be able to track which other identities its connecting to down to the communication bandwidth between each source and destination and correlate the identities of those connections between separate devices. Is this an accurate description?