Töma,
> In reality, it's not that flow label modulation or NAT break anycast,
> it's that anycast is inherently broken since it makes assumptions that
> are true only most of the time.
The anycast isn't broken, it's fundamental to the Internet due to the
architecture of the latter.
Unfortunately I do think Tom is correct.
So allow me to attempt to expand a bit his point.
Internet last time I checked uses IP. IP is connection less by design. So is entire Internet architecture.
Anycast in a connection less fashion - meaning stateless - will work just fine - pretty much in all cases.
But using connection less forwarding plane and transporting connection oriented protocols (like TCP) only works between solid anchors (read endpoints).
Anycast does not meet the requirement of solid endpoint - so it should be of no surprise to anyone that connections may break.
And this is not only about flow label and hashing. Internet routing continues to churn. Every second routing may decide for you to prefer some other BGP path and your anycast destination may end up in different destination naturally only by following the destination routing paradigm.
Best,
Robert.
PS. Of course there are more smart ways to use anycast for TCP. Those involve attracting packets only for further forwarding to the consistently selected servers/gateways. Especially useful where global network may be more reliable then scenic paths.